SSブログ

【Splashtop OS をハック #2】

image
2月23日に正式版が無償リリースされた Splashtop OS だが、高速起動の仕組みはどうなっているのか?
fastboot によるカーネル起動の高速化と、デバイス認識を省くことで高速起動を実現している。
窓の杜 - 【NEWS】Windowsと共存可能なWeb閲覧専用の軽量OS「Splashtop OS」v1.0正式版が無償公開

前記事の「Splashtop OS をハック」で、ターミナルソフトの xrvt を組み込んでいるので、シェルを起動して調べてみた。http://royalwin.blog.so-net.ne.jp/2011-02-26

sc1

/etc/models.d にいろんな機種(ほとんど HPノート)のプロファイルディレクトリがある。
例えばこの中の 1433 は HP Pavilion dv3 Notebook、144E は Pavilion dv5 の board name。

dimodels というスクリプトが、dmidecode コマンドで製品名やマザーボードの名前を調べている。

dmidecode -s system-product-name
dmidecode -s baseboard-product-name

調べた product name, board name と同じ名前のプロファイルディレクトリがあれば、その中の以下のスクリプトが実行される。

00-defines-xxxx
10-defaults-xxxx
20-modules-xxxx

これらのスクリプトでその機種に合わせた最小限の設定を行っている。
20-modules-xxxx スクリプトはその機種に必要なデバイスドライバのみを insmod でロードしている。
00-defines は画面解像度やキーボードの種類などを設定し、10-defaults はデフォルト値を設定している。

この仕組みでデバイスの認識などを省略して、高速起動化しているようだ。

ASUS P5W Deluxe(マザーボード)や MSI Wind U100 ネットブックは、同じ名前のプロファイルディレクトリがないので、default ディレクトリのスクリプトが実行される。
P5W では無線LANが使えず解像度も 1024x768 固定になってしまう。
MSI Wind では解像度の関係なのか、起動できない。

Splashtop OS のサポート機種は現在でも HP製ノートばかりだが、現在のプロファイルは、ほとんどが HP製ノートのものになっている。

だったら /etc/models.d に、自分の PC のプロファイルを作って、適切な設定やドライバをロードをすればいいと思うが、簡単にはできない。
kernel.bin というファイルに、カーネルと initramfs が同梱されているので、initramfs の中の /etc/models.d を変更したら、カーネルを再ビルドして lernel.bin を作り直さなければいけない。

現状では、HP製ノート以外の PC では、何らかの不具合がでる感じだと思う。

その他、高速軽量化のため、ウインドウマネージャは、シンプルで軽い blackbox を使っている。
http://blackboxwm.sourceforge.net/
ウインドウシステムは Xorg。
カーネルのバージョンは 2.6.32.1 だった。 



nice!(5)  コメント(0)  トラックバック(0) 

nice! 5

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。