コンテンツにスキップ

Upstart

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Upstart
Upstart logo
作者 スコット・ジェームズ・レムナント
開発元 カノニカル
初版 2006年8月24日 (19年前) (2006-08-24)
最新版
1.13.2[1] / 2014年9月4日 (11年前) (2014-09-04)
リポジトリ ウィキデータを編集
プログラミング
言語
C言語
対応OS Linux
対応言語 英語のみ?
サポート状況 開発(サポート)終了
種別 initデーモン
ライセンス GPLv2
公式サイト upstart.ubuntu.com ウィキデータを編集
テンプレートを表示

Upstartは、いくつかのUnix系コンピュータオペレーティングシステムで起動時にタスクを実行する手法として古くから備わるinitデーモンの代わりとなるもので、イベント駆動型である点に特徴がある。Upstartは、当時カノニカルの従業員であったスコット・ジェームズ・レムナントが開発した。

原理の説明

[編集]

元々古くから備わるinitプロセスは、電源オンの後にコンピュータを通常の起動状態にすることや、シャットダウン前にきちんとサービスを終了することにしか責任を持たなかった。このため、前記の設計により現在のタスクが完了するまで将来のタスクは厳格に同期化され、さらにブロックされてしまう。さらに準備やクリーンアップ機能による制限を受けるため、これらのタスクはあらかじめ定義されねばならない。これでは現代のデスクトップコンピュータにおけるスタートアップ以外の、以下に挙げるような様々なタスクを簡潔に処理できなくなる:

  • マシン起動中におけるUSBフラッシュドライブなどのポータブルストレージやネットワークデバイスの脱着。
  • システムロックなしの、特にディスクがスキャンされるまで電源すらオンになっていない場合における新規ストレージデバイスの発見とスキャン。
  • デバイス用ファームウェアのロード。ロードはデバイスが発見された後かつデバイスが使えない前に行わなければならないはずである。

Upstartのイベント駆動型モデルにより、イベント生成とは非同期にイベント応答ができる[2]

設計

[編集]

Upstartはブート時のタスクとサービスの起動とシャットダウン時のタスクとサービスの停止を非同期に行い、システム動作中にはタスクとサービスの管理も行う。

System V initとの完全な後方互換性を保ち、容易に移行可能であることが設計目標であった[3]。そのため、既存のSystem V init用スクリプトを無修正で実行可能である。いつも正常起動への完全な移行を仮定し要求するが、スタートアップの古くから備わる手法と新しい手法とが混在した環境をサポートしない大半の他のinit代替手法(systemdOpenRCなど)とそういった点で異なる[4]

Upstartは多くのイベントやより複雑なイベントをまとめるために、入力カスタム、シングルイベント、またはイベントブリッジ用のinitctlを使うことでイベントモデルを拡張できる.[5]。Upstartにはデフォルトでsocket、dbus、udev、fileおよびdconfイベントへのブリッジが含まれる。必要に応じてより多くのブリッジが利用できる[6]

採用

[編集]

Upstartをデフォルトのinitシステムとして使用する、LinuxカーネルをベースとしたLinuxディストリビューションやそれ以外のオペレーティングシステム:

  • UpstartはSystem V initの代替として2006年後半、Ubuntu 6.10 (Edgy Eft) リリースで最初に導入された。Ubuntu 9.10 (Karmic Koala) はAlpha 6のネイティブUpstartブートアップを導入した[7]。続いてDebianプロジェクトが2014年、将来のリリースにsystemdの採用を決めた後、マーク・シャトルワースは上流との調和を維持するためにsystemd自体へと移行する計画をUbuntuは開始したとアナウンスした[8]
  • UpstartはChromeOSChromium OSで使われている[9]

Upstartをある程度サポートするかしていたが、デフォルトinitシステムとしての使用をやめたか既に使用していないLinuxディストリビューション:

関連項目

[編集]

脚注

[編集]
  1. [Branch ~upstart-devel/upstart/trunk] Rev 1662: * NEWS: Release 1.13.2”. Ubuntu.com (2014年9月4日). 2017年1月18日閲覧。
  2. Remnant, Scott James (2006年8月26日). Upstart in Universe”. Netsplit. 2009年9月12日閲覧。[リンク切れ]
  3. Launch Pad, Ubuntu
  4. “Discussion of design and implementation of Upstart”, Ubuntu Wiki, カノニカル
  5. The Upstart Cookbook”. カノニカル. 2014年1月26日閲覧。
  6. The Upstart Cookbook: Bridges”. カノニカル. 2014年1月26日閲覧。
  7. “Upstart”, About (Ubuntu)
  8. Shuttleworth, Mark. Losing graciously”. 2014年3月22日時点のオリジナルよりアーカイブ。2014年2月14日閲覧。
  9. Software Architecture: Chromium OS design documents, Google 2014年1月25日閲覧。
  10. Petter Reinholdtsen (2009-09-05), The future of the boot system in Debian, Debian.org
  11. The Debian technical committee vote concludes, Lwn.net, (2014-02-11) 2014年2月11日閲覧。
  12. RM: upstart -- RoQA; unmaintained, debian.org, (2015-12-18) 2016年1月26日閲覧。
  13. VividVervet/ReleaseNotes, (2015-04-24)
  14. Fedora 14 Accepted Features, (2010-07-13) 2010年7月13日閲覧。
  15. Fedora defers systemd to F15”. Linux Weekly News (2010年9月14日). 2010年9月17日閲覧。
  16. Deployment”. Red Hat Enterprise Linux 6: Technical Notes. レッドハット. 2013年12月31日閲覧。
  17. Poettering, Lennart (2013-06-19), Red Hat Summit talk about systemd in RHEL 7 is now available online, Google Plus 2013年12月31日閲覧。
  18. Tim Burke (2012-06-27), “Red Hat Enterprise Linux Roadmap Highlights” (PDF), presentation
  19. OpenSUSE gets an Upstart, The H, (2010-03-26), オリジナルの8 December 2013時点におけるアーカイブ。 2010年4月4日閲覧。
  20. Chris von Eitzen (2011-11-16), openSUSE 12.1 arrives with systemd and Btrfs, The H, オリジナルの20 April 2012時点におけるアーカイブ。 2011年11月16日閲覧。
  21. Garrett, Matthew (2009-06-10), Palm Pre, オリジナルの2009-12-23時点におけるアーカイブ。 2009年7月9日閲覧。
  22. Fremantle, Maemo 2009年8月24日閲覧。

外部リンク

[編集]