yosshyの日記: compcache
私はいまだに Let's note CF-W2 を使い続けている。メモリは 256MB である。
しかし、OOo や Firefox など、最近のアプリケーションはメモリを大量に消費する。少しでもメモリ消費を減らすために GNOME→XFCE→LXDE と渡り歩き、フォントも可能な限り削除したが、それにしても Xorg やアプリケーションの消費自体が大きく減る訳ではない。何とかならんもんか?
もちろん、PC を買い換えるというのも1つの方法ではある。しかし、私は敢えて古い PC 上で Linux を使いたい。
そもそも、Linux ディストリビューションは一時期「リサイクルウェア」として Win98 や WinME マシンで重宝されてきた。その頃の Linux ディストリビューションは確かに実用的な速度で安定して動いていたのだ。
ところが、最近は X や GNOME が鈍重になった。TrueType 対応や高機能化が主な原因だが、アプリケーションも巨大化した。KISS の原理など忘れ去られている。
一方で、Puppy Linux のような軽量環境を追求したものも登場してきている。Linux はまだまだリサイクルウェアとして有望なのだ。
そういえば、最近の Ubuntu ではスワップデバイスに変わったものがあった。どうやら一種の圧縮 RAM ディスクをスワップデバイスにしているようだ。最近の GNOME や OOo をライブ CD で動かすために、こうした工夫が必要なのだろう。インストール後の環境でも使えんものか?
プロジェクトサイトからドライバをダウンロードし、コンパイル。付属していた use_compcache.sh を実行する。
優先度 100 でスワップデバイスが作成された。無事に機能しているようだ。
起動時に自動的にロードするよう設定しよう。
ところが、use_compcache.sh は同一ディレクトリにドライバがある事を前提にしている。これでは使えない。
そこで、/etc/modules に下記追記。
lzo_compress
lzo_decompress
xvmalloc
compcache
/etc/modprobe.d/options に下記追記。
options compcache disksize_kb=102400
/etc/fstab に…って、スワップデバイスのプライオリティはどう設定するんだ?
swapon のソースコードを拾ってきて解析。
/etc/fstab に下記追記。
/dev/ramzswap0 swap swap defaults,pri=100 0 0
早速再起動。さて、どうだろう?
yosshy@mobile8:~$ swapon -s
Filename Type Size Used Priority
/dev/mapper/VG0-LVswap partition 524280 0 -1
/dev/ramzswap0 partition 102396 11524 100
OOo を立ち上げて、巨大な Excel ファイルを読ませてみる。
ほほう、明らかに高速化されている。いい感じ。
…そう言えば、セキュリティ強化の目的で、ルートファイルシステムもスワップデバイスも dm-crypt で暗号化したボリューム上にあったな。これが遅さの原因か。
compcache More ログイン