Upstart

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

Upstart — система ініціалізації в операційних системах Linux, заснована на подіях. Система ініціалізації контролює запуск завдань та служб (демонів) протягом завантаження системи, їхню зупинку, а також управління ними під час роботи системи. 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).

Виноски[ред. | ред. код]

Посилання[ред. | ред. код]