Upstart (программное обеспечение)

Демон инициализации Linux на основе событий
Выскочка
Оригинальный автор(ы)Скотт Джеймс Ремнант
Разработчик(и)ООО «Каноникал»
Первоначальный выпуск24 августа 2006 г. ; 18 лет назад ( 2006-08-24 )
Окончательный релиз
1.13.2 [1] / 4 сентября 2014 г. ; 10 лет назад ( 2014-09-04 )
Репозиторий
  • code.launchpad.net/upstart
Написано вС
Операционная системалинукс
ТипДемон инициализации
ЛицензияGPLv2
Веб-сайтupstart.ubuntu.com

Upstart — это прекращенная замена традиционного демона init на основе событий — метода, с помощью которого несколько операционных систем Unix-подобных компьютеров выполняют задачи при запуске компьютера. Он был написан Скоттом Джеймсом Ремнантом , бывшим сотрудником Canonical Ltd. В 2014 году Upstart был переведен в режим обслуживания, и вместо Upstart были рекомендованы другие демоны init, такие как systemd . Ubuntu отошла от Upstart с выпуском версии 15.04 ( Vivid Vervet ) в пользу перехода на systemd. По состоянию на июнь 2024 года для Upstart не было выпущено обновлений с сентября 2014 года. [2]

Обоснование

Традиционный процесс init изначально отвечал только за приведение компьютера в нормальное рабочее состояние после включения питания или за корректное завершение работы служб перед выключением. В результате конструкция строго синхронна , блокируя будущие задачи до тех пор, пока текущая не будет завершена. Его задачи также должны быть определены заранее, поскольку они ограничены этой функцией подготовки или очистки. Это делает его неспособным элегантно обрабатывать различные неавтозагрузочные задачи на современном настольном компьютере , включая:

  • Добавление или извлечение USB-флеш-накопителей и других портативных устройств хранения данных или сетевых устройств во время работы компьютера.
  • Обнаружение и сканирование новых устройств хранения данных, особенно когда диск может даже не включиться, пока он не будет просканирован.
  • Загрузка прошивки для устройства, которая может потребоваться после его обнаружения, но до того, как его можно будет использовать.

Управляемая событиями модель Upstart позволяет ему реагировать на события асинхронно по мере их возникновения. [3]

Дизайн

Upstart работает асинхронно; он управляет запуском задач и служб во время загрузки и остановкой их во время завершения работы, а также контролирует задачи и службы во время работы системы.

Простота перехода и идеальная обратная совместимость с sysvinit были явными целями дизайна; [4] соответственно, Upstart может запускать немодифицированные скрипты sysvinit. В этом он отличается от большинства других замен init (кроме systemd и OpenRC ), которые обычно предполагают и требуют полного перехода для правильной работы и не поддерживают смешанную среду традиционных и новых методов запуска. [5]

Upstart допускает расширения своей модели событий посредством использования initctl для ввода пользовательских, одиночных событий или мостов событий для интеграции многих или более сложных событий. [6] По умолчанию Upstart включает мосты для событий сокета, dbus, udev, файла и dconf; кроме того, возможны и другие мосты. [7]

Принятие

Дистрибутивы Linux и другие операционные системы на основе ядра Linux , которые используют Upstart в качестве системы инициализации по умолчанию:

Дистрибутивы Linux, которые поддерживают или поддерживали Upstart в той или иной степени, но отказались от него или больше не используют его в качестве системы инициализации по умолчанию:

  • Debian решил, что systemd станет системой инициализации по умолчанию, начиная с выпуска Jessie , [9] после рассмотрения перехода на Upstart. [10] В конечном итоге он был удален из архивов Debian в декабре 2015 года. [11]
  • Upstart впервые был включен в Ubuntu в выпуске Ubuntu 6.10 «Edgy Eft» в конце 2006 года, заменив sysvinit . Ubuntu 9.10 «Karmic Koala» представила собственную загрузку Upstart с Alpha 6. [12] В свою очередь, после того, как проект Debian решил принять systemd в будущем выпуске в 2014 году, Марк Шаттлворт объявил, что Ubuntu начнет планы по переходу на systemd для поддержания согласованности с вышестоящей веткой. [13] Ubuntu завершила переход на systemd в качестве своей системы инициализации по умолчанию в версии 15.04 (Vivid Vervet), за исключением Ubuntu Touch . [14]
  • В Fedora 9 Upstart заменил sysvinit, однако в выпуске Fedora 15 Upstart заменил systemd. [15] [16]
  • Red Hat включает Upstart в свой выпуск Red Hat Enterprise Linux 6. [17] В результате он также используется в вариантах RHEL 6, таких как CentOS , Scientific Linux и Oracle Linux . Для RHEL 7 вместо этого используется systemd. [18] [19]
  • openSUSE включил Upstart в версию 11.3 Milestone 4, но не в качестве системы инициализации по умолчанию. [20] systemd заменил Upstart в качестве системы инициализации по умолчанию в openSUSE 12.1. [21]
  • Upstart используется в webOS от HP для смартфонов Palm Pre , Palm Pixi (оба до того, как Palm была куплена HP), HP Veer и HP Pre 3 , а также планшета HP TouchPad . [22]
  • Upstart заменил sysvinit в Maemo 5 для интернет-планшетов Nokia . [23]

Последним релизом стала версия 1.13 от 11 июля 2014 года. С декабря 2018 года на веб-сайте проекта говорится, что Upstart находится только в режиме обслуживания, и рекомендуются другие системы инициализации, такие как systemd . [24]

Смотрите также

Ссылки

  1. ^ "1.13.2 "Сбоку выглядит пышно": Серия 1.x: upstart". Launchpad . Получено 01.01.2022 .
  2. ^ «Upstart: Обзор».
  3. Remnant, Scott James (2006-08-26). "Upstart in Universe". Netsplit. Архивировано из оригинала 2013-11-13 . Получено 2009-09-12 .
  4. ^ "Upstart", Launch Pad, Ubuntu
  5. ^ «Обсуждение дизайна и реализации Upstart», Ubuntu Wiki , Canonical
  6. ^ "The Upstart Cookbook: initctl emit". Канонический . Получено 26 января 2014 г.
  7. ^ "The Upstart Cookbook: Bridges". Канонический . Получено 26 января 2014 г.
  8. ^ Chrome OS User-Land Boot Design , получено 2024-06-04
  9. ^ Голосование технического комитета Debian завершено, Lwn.net, 2014-02-11 , получено 2014-02-11
  10. ^ Петтер Рейнхольдцен (05 сентября 2009 г.), Будущее системы загрузки в Debian, Debian.org
  11. ^ RM: upstart -- RoQA; не поддерживается, debian.org, 2015-12-18 , получено 2016-01-26
  12. ^ "Upstart", О , Ubuntu
  13. ^ Шаттлворт, Марк. "Losing graciously". Архивировано из оригинала 22 марта 2014 года . Получено 14 февраля 2014 года .
  14. ^ VividVervet/ReleaseNotes, 24.04.2015
  15. ^ Принятые функции Fedora 14, 2010-07-13 , получено 2010-07-13
  16. ^ "Fedora откладывает systemd до F15". Linux Weekly News. 2010-09-14 . Получено 2010-09-17 .
  17. ^ "Развертывание". Red Hat Enterprise Linux 6: Технические заметки . Red Hat . Получено 2013-12-31 .
  18. Poettering, Lennart (19.06.2013), Доклад на саммите Red Hat о systemd в RHEL 7 теперь доступен онлайн, Google Plus , получено 31.12.2013
  19. ^ Тим Берк (27.06.2012), «Red Hat Enterprise Linux Roadmap Highlights» (PDF) , презентация , заархивировано из оригинала (PDF) 18.01.2013
  20. ^ OpenSUSE получает Upstart, The H, 2010-03-26, заархивировано из оригинала 8 декабря 2013 г. , извлечено 2010-04-04
  21. ^ Крис фон Айцен (2011-11-16), openSUSE 12.1 поставляется с systemd и Btrfs, The H, заархивировано из оригинала 20 апреля 2012 г. , извлечено 2011-11-16
  22. Гарретт, Мэтью (2009-06-10), Palm Pre, архивировано из оригинала 2009-12-23 , извлечено 2009-07-09
  23. ^ Фримантл, Maemo , получено 24 августа 2009 г.
  24. ^ "Архив upstart.ubuntu.com от 30 декабря 2018 г.". Архивировано из оригинала 2018-12-30.
  • Официальный сайт
  • Upstart на Launchpad
  • Кулинарная книга Upstart
  • Кулинарная книга Upstart
  • Сравнение систем инициализации: часть 1 и часть 2 на LWN.net
  • Сравнительная таблица систем инициализации
Взято с "https://en.wikipedia.org/w/index.php?title=Upstart_(software)&oldid=1228687373"