נסק

NESC הוא תוסף לשפת התכנות C שנועד לגלם את מושגי הבנייה ואת מודל הביצוע של טינוס.
הורד עכשיו

נסק דירוג וסיכום

פרסומת

  • Rating:
  • רישיון:
  • GPL
  • מחיר:
  • FREE
  • שם המפרסם:
  • nesC Team
  • אתר האינטרנט של המוציא לאור:

נסק תגים


נסק תיאור

NESC הוא הרחבה לשפת התכנות C שנועד לגלם את מושגי הבנייה ואת מודל הביצוע של טינוס. NESC הוא הרחבה לשפת התכנות C שנועד לגלם את מושגי הבנייה ואת מודל הביצוע של טינוס. TINYOS הוא מערכת הפעלה מונעת אירועים המיועדת לצמתים ברשת חיישנים שיש להם משאבים מוגבלים מאוד (למשל, 8K בתים של זיכרון התוכנית, 512 בתים של רם). מושגים בסיסיים מאחורי NESC הם: · הפרדת בנייה והרכב: תוכניות בנויות מתוך רכיבים, אשר מורכבים ("Wired") כדי ליצור תוכניות שלמות. רכיבים יש מקבילית פנימית בצורה של משימות. חוטי שליטה עשויים לעבור למרכיב באמצעות ממשקים. חוטים אלה מושרשים במשימה או בחומרה להפריע. מפרט של התנהגות רכיב במונחים של מערכת של ממשקים. ממשקים עשויים להיות מסופקים או בשימוש על ידי רכיבים. הממשקים המסופקים נועדו לייצג את הפונקציונליות שהרכיב מספק למשתמש שלו, ממשקים משומשים מייצגים את הפונקציונליות המרכיב צריך לבצע את עבודתו. · ממשקים הם דו-כיווניים: הם מציינים קבוצה של פונקציות שיושמו על ידי ספק המשק ( פקודות) והגדרה להיות מיושמת על ידי המשתמש של הממשק (אירועים). זה מאפשר ממשק יחיד לייצג אינטראקציה מורכבת בין רכיבים (למשל, רישום עניין באירוע כלשהו, ואחריו התקשרות כאשר האירוע הזה קורה). זה קריטי כי כל פקודות ארוכות ב Tinyos (למשל לשלוח מנות) אינם חסימת; ההשלמה שלהם מסומנת באמצעות אירוע (שליחה). על ידי ציון ממשקים, רכיב לא יכול להתקשר לפקודת Send, אלא אם כן הוא מספק יישום של האירוע SendDone. · בדרך כלל פקודות להתקשר כלפי מטה, כלומר, מרכיבי יישומים לאלו קרוב יותר לחומרה, ואילו אירועים קוראים כלפי מעלה. אירועים פרימיטיביים מסוימים מחויבים להפרעות חומרה. רכיבים קשורים מבחינה סטטיסטית זה לזה באמצעות ממשקים. זה מגביר את יעילות הריצה, מעודד עיצוב RUSUST, ומאפשר ניתוח סטטי טוב יותר של תוכניות. · NESC מתוכננת בציפייה כי קוד ייווצר על ידי קומפיילרים שלמים. זה אמור גם לאפשר קוד טוב יותר של קוד וניתוח. מה חדש במהדורה זו: - C preprocessor משולב NEC, אשר אמור להאיץ באופן משמעותי את הקומפילציה (esp ב - Windows) - תמיכה של סגן סוג בטיחות-C עבור מערכת (ראה deputy.cs.berkeley.edu). כדי להשתמש סגן, אתה מוסיף הערות סוג קוד NEC שלך, ולאחר מכן לקמפל עם דגל סגן-אסיקס. חבורה של שינויים קטנים neesc לתמוך בשימוש סגן. דגלים ל NECCC: -Fnesc- סגן: להשתמש סגן באוסף זה. אתה צריך גרסה של סגן מותאם אישית לשימוש עם NESC מותקן עבור זה לעבודה. - סגן-סגן-ארגונים: ארגומנטים נוספים לעבור לסגור. -Fnesc-Default-Safe / -Fnesc-Default-Untafe: בטיחות ברירת המחדל עבור פונקציות C ו- NEC מודולים (ללא אפשרות שצוין, -Fnesc-Defaine-Untafe הוא ההנחה) סוג הערות: Nonull, לספור (...), וכו '(ראה תיעוד סגן- nesc לפרטים מלאים), אשר הם למעשה פקודות מאקרו אשר להרחיב תכונות NESC (@Nonnull (), @count (...), וכו' באמצעות פקודות מאקרו מאפשרת קוד סגן annotated לשימוש עם גירסאות קודמות של NESC. סוג הערות ב Nesdoc הערות: כדי להפחית את העומס עבור לא סגן משתמשים, הערות של סגן ניתן להציב בתוך תגובה NESDOC ולא בחתימת פונקציה (אז נראה כמו חתימה C רגיל): / ** @ faram 'int * @ count (n) x' x הוא מערך של n עפר ... * / void f (int * x, int n); זהה Void F (Int * @ count ( n) x, int n); פקודות מאקרו ניתן להשתמש בהערה, כך שהאמור לעיל יכול להיות גם / ** ... @ faram 'INT * לספור (n) x' x הוא מערך של n ints ... * / Void F (Int * x, int); שבו ספירה (expr) מתרחב ל @count (expr) .- תמיכה פנימית (ב ne SC1) עבור סגור מבוסס על תכונות @deputy_scope () ו @macro ("שם") תכונות, @Fnesc-genprefix = אפשרות.- @Macro () ו -Fnesc-genprerix = עשוי להיות שימושי בהקשרים אחרים מדי: אם א NESC התכונה הצהרה יש @macro () תכונה: struct @myattr @macro ("mymacro") {int x; char * y; }; לאחר מכן משתמש ב- @Myattr ב NESC המקור הם פלט כמו שיחות MyMacro ב NEC של ביניים פלט C ביניים. לדוגמה INT X @Myattr (23, "כיף"); הופך INT X MyMacro (23, "כיף"); -Fnesc-genprefix = מוסיף לתחילת הפלט C שנוצר, למשל, זה יכול להיות הגדרה #define עבור MyMacro, או #include של קובץ עם הגדרות מתאימות .- מחרוזות רחבות ב- XML מופיע כעת כמערכים של בתים (ופעל לפי ייצוג של ביניים של מיתרים רחבים) - היכולת לעבד קובץ C באמצעות NESC (זה מספק תמיכה C עבור סוגים חיצוניים, הצהרות אטומיות וייחודי), כדלקמן: NESCC -X NESC .C זה כוחות NESCC לעבור את הקובץ C.C דרך המהדר NESC (בדרך כלל זה יישלח אל המלכודת C רגיל), אשר יעבד את הרחבות NESC ולאחר מכן לקמפל את קוד C שנוצר עם המהדר C רגיל (או מה מהדר היה צוין עם -FNESC-GCC = ...) - בתוך מודול, עכשיו אתה יכול לכתוב חלל F (Void) או חלל F () לסירוגין


נסק תוכנה קשורה

Refactor

refactor הוא תוסף VIM המציע את הפונקציונליות של כלי C / C + + Refactoring. ...

81

הורד