Upstart

Upstart הייתה יישום אלטרנטיבי לDaemon המקורי init ומבוסס תכנות מונחה-אירועים. init וכמוה Upstart, הם תהליכים המהווים שיטה במספר מערכות הפעלה דמויות יוניקס לביצוע משימות בעת עליית מערכת ההפעלה. Upstart נכתבה על ידי סקוס ג'יימס רמננט עובד לשעבר בחברת קנוניקל.  

Upstart הייתה זמינה החל מאובונטו גרסה 6.10 ומעלה וכן בעוד מספר הפצות, בהן Maemo 5, ב-Chrome OS, ובמערכות הפעלה נוספות.

מטרה
תהליך ה-init המסורתי היה במקור אחראי להבאת מערכת ההפעלה למצב ריצה נורמלי  לאחר הדלקת המחשב, וכן לסיום תהליכים בצורה נאותה על ידי פרוצדורה ידועה מראש התורמת לתקינות המערכת. כתוצאה מכך המבנה הוא מוגבל לביצוע משימות באופן סנכרוני, וחוסם משימות עתידיות כל עוד קודמותיהם לא סוימו. בנוסף המשימות צריכות להיות מוגדרת באופן מתקדם.

דבר זה יוצר מצב בו לא ניתן לטפל באופן ראוי במשימות הקיימות כיום  בשולחנות עבודה מודרניים, אשר אינן שייכות לעליית המערכת וביניהן:

הוספת או הסרת התקנים ניידים בזמן ריצה נורמלי של המערכת.
גילוי וסריקת התקנים ניידים מבלי לנעול את המערכת, בפרט כשהדיסק עדיין לא מחובר לחשמל והוא עדיין לא נסרק.
קריאת קושחה של התקן, שצריכה לקרות אחרי שהיא מזוהה אך לפני שהיא בת שימוש.

המודל מונחה האירועים של Upstart מאפשר להגיב לכל האירועים באופן סינכרוני מיד כשהם מתחילים.

פעולה
upstart פעלה באופן סינכרוני, וטיפלה בהתחלת משימות ושירותים בעת עליית המערכת, פיקוח עליהם, והפסקה שלהם בעת כיבויה.

מעבר קל, ותאימות לאחור עם sysvinit, צוינו כמטרות בפיתוח Upstart, וככזה הוא יכול להריץ סקריפטים של sysvinit. במובן הזה Upstart שונה מרוב החלופות האחרות ל-init שאינן יכולות לבצע את זה באופן פשוט, ולא תומכות בסביבות משולבות של שיטות ישנות וחדשות, לביצוע משימות בעת הדלקת מערכת ההפעלה.

הגרסה האחרונה של upstart שוחררה ב-2014 ומאז, אובונטו ומערכות אחרות (בהן דביאן עליה מבוססת אובונטו), עברו לשימוש ב-Systemd (למעט דבואן, המציעה אלטרנטיבות ל-systemd, בהן OpenRC ו-runit).

קישורים חיצוניים


הערות שוליים

קטגוריה:אובונטו לינוקס
קטגוריה:תוכנות הכתובות ב-C