Upstart

Upstart
Upstart logo
Типдемон ініціалізації
АвторScott James Remnant
РозробникCanonical Ltd.
Перший випуск24 серпня 2006
Стабільний випуск1.13 (11 липня 2014; 9 років тому (2014-07-11))
Версії1.13.2 (4 вересня 2014)[1]
Операційна системаLinux
Мова програмуванняC
ЛіцензіяGNU General Public License
Репозиторійcode.launchpad.net/upstart
Вебсайтupstart.ubuntu.com

Upstart — система ініціалізації в операційних системах Linux, що підтримувалася до 2014 року. Система контролювала запуск завдань та служб (демонів) протягом завантаження системи, їхню зупинку, а також управління ними під час роботи системи. Upstart розглядався як заміна демона /sbin/init.

Спочатку Upstart був розроблений для дистрибутиву Ubuntu компанією Canonical, згодом використовувався в дистрибутивах Ubuntu і RedHat Enterprise Linux 6, а також у проектах Maemo, Chrome OS і webOS. На відміну від стандартної init-системи SysV, Upstart базується на парадигмі обробки подій, працює в асинхронному режимі і використовує метод обліку залежностей для визначення послідовності запуску сервісів та оцінки можливості їхнього виконання в паралельному режимі. Паралелізм запуску сервісів забезпечував істотне підвищення швидкості завантаження, але ціною цього була необхідність певної переробки init-скриптів. Підтримується режим сумісності, який дозволяє запускати звичайні sysvinit-скрипти, але ефективність завантаження і роботи при цьому втрачається.

Згодом деякі техніки Upstart були запозичені системою ініціалізації SysVinit та новішою системою systemd.

Можливості

  • Запуск і зупинка завдань і сервісів проводиться через генерацію події. Наприклад, Upstart може запустити певні сервіси після підключення до системи додаткового пристрою і завершити після його відключення;
  • Події генеруються під час запуску або зупинки завдань і сервісів, що дозволяє організувати прив'язку до них інших завдань і сервісів;
  • Події можуть бути отримані від будь-якого іншого процесу в системі;
  • Можна організовувати свої події
  • Сервіси можуть бути автоматично перезапущений при їхньому непередбаченому завершенні;
  • Спостереження і перезапуск демонів може проводитися роздільно від їхніх батьківських процесів;
  • Зв'язок з керуючим init-процесом може здійснюватися за допомогою D-Bus;
  • Плановані можливості: генерація подій в проміжки часу або через певні інтервали (вбудований аналог cron), а також при зміні файлів або тек (вбудований аналог incron).

Виноски

  1. https://launchpad.net/upstart/+milestone/1.13.2

Посилання

  • Офіційний сайт
  • Upstart на Launchpad
  • Upstart Cookbook [Архівовано 3 листопада 2012 у Wayback Machine.]
  • Upstart Cookbook [Архівовано 18 жовтня 2012 у Wayback Machine.]