feed

2014年12月13日, 編集履歴

Murasaki ver. 2.2.3をリリースしました

 OS X用EPUBリーダMurasakiのver. 2.2.3をリリースしました(アプリ紹介ページMac App Store)。

 ver. 2.2.3はバグ修正版です。修正箇所は、

です。この問題はコンタクトフォームよりご報告いただきました。ありがとうございます。

2014年11月26日, 編集履歴

JEPA電子出版アワード2014にMurasakiがノミネートされました

 日本電子出版協会(JEPA)電子出版アワード2014に、拙作のOS X用EPUBリーダアプリケーションMurasakiがノミネートされました。「エキサイティング・ツール賞」というジャンルです(候補作品リスト)。昨年に引き続き2回目のノミネートです。アワードの他ジャンルの賞も含めて有名企業や電子書籍界隈での有名人がならぶ中、ひとり私だけぽつんとTwitter名義でいるのも昨年と同様です。
 エキサイティング・ツール賞の候補作品は、

となっています。
 12月3日水曜日の22時まで投票フォームからどなたでも投票できるようなので、応援していただける方はぜひ。

2014年10月21日, 編集履歴

MacBook Late 2008 アルミニウムにおけるバッテリィに関するCPU速度の抑制について

 上記リンク(アップルのサポート記事)はもう見られなくなっているが、そのタイトルで解るように私がメインマシンとして使っているMacBook Late 2008 アルミニウムは、バッテリィが取り外されている時にプロセッサの速度が抑制される。

 では、いったいどのくらいパワーダウンするのか。XbenchというOS X用のベンチマークアプリケーションで検証してみた。マシンの環境は以下のとおり。

マシン環境
機種 MacBook Late 2008 アルミニウム
OS OS X 10.10 Yosemite
プロセッサ 2GHz Intel Core 2 Duo
メモリィ 8GB DDR3
ストーレッジ 256GB SSD

 ベンチマークは以下の3つの状況で比べる。

  1. ACアダプタ接続 & バッテリィ
  2. バッテリィのみでACアダプタ非接続
  3. ACアダプタ接続のみでバッテリィ非装着(プロセッサ速度が抑制されると言われる状況)

 Xbenchのテスト項目は「Thread Test」以外すべて(Thread Testをすると止まるので)とした。

 ベンチマーク結果をかいつまんで列挙すると(詳細は結果は末尾に)、

ベンチマーク結果概要
状況 総合スコア CPU Test
1 ACアダプタ接続 & バッテリィ 80.73 138.85
2 バッテリィのみ 79.33 137.94
3 ACアダプタ接続のみ 56.79 109.89

 1の状況と2の状況は他のテスト項目でも似通っており、計測誤差の範囲だと思われる。

 問題となる3の状況と1の状況を比べると、CPUテストで約80%、総合では約70%程度までスコアが落ちてしまっている。

 もし「AC接続なしでバッテリィのみで駆動しているとき(2の状況)」にCPU速度が抑制されるのであれば、省電力という観点からうなずける挙動である。しかし実際はその場合であればCPU速度の抑制はなく、安定した電力供給が期待できる「バッテリィなしでAC接続のみ駆動のとき(3の状況)」だけでCPU速度が落ちる。

 不思議だ。

バッテリィの膨張について

 MacBookのバッテリィは経年使用で膨張してしまう。膨張したバッテリィを使っていると、トラックパッドが下から押さえつけられるかたちになり、押し込む操作がやりにくく、あるいはできなくなるし、バッテリィカヴァをはじめ筐体が変形、破損してしまう可能性がある。

 私はMacBookを持ち歩くことはなくデスクトップとして使用しているので、バッテリィを抜いておけば一応運用はしていけるのだが、この不思議な挙動によってCPU速度が抑制されてしまい、70%の性能になってしまうのはいただけない。そのために追加で新しいバッテリィを買うはめになってしまうのである。

ベンチマーク結果

ACアダプタ接続 & バッテリィ

Results	80.73	
	System Info		
		Xbench Version		1.3
		System Version		10.10 (14A389)
		Physical RAM		8192 MB
		Model		MacBook5,1
		Drive Type		M4-CT256M4SSD2
	CPU Test	138.85	
		GCD Loop	221.87	11.70 Mops/sec
		Floating Point Basic	111.58	2.65 Gflop/sec
		vecLib FFT	91.05	3.00 Gflop/sec
		Floating Point Library	229.60	39.98 Mops/sec
	Memory Test	191.18	
		System	240.58	
			Allocate	937.33	3.44 Malloc/sec
			Fill	160.45	7801.66 MB/sec
			Copy	193.40	3994.63 MB/sec
		Stream	158.61	
			Copy	151.27	3124.39 MB/sec
			Scale	150.48	3108.91 MB/sec
			Add	168.51	3589.61 MB/sec
			Triad	165.89	3548.73 MB/sec
	Quartz Graphics Test	146.69	
		Line	171.77	11.44 Klines/sec [50% alpha]
		Rectangle	141.45	42.23 Krects/sec [50% alpha]
		Circle	126.94	10.35 Kcircles/sec [50% alpha]
		Bezier	150.75	3.80 Kbeziers/sec [50% alpha]
		Text	149.63	9.36 Kchars/sec
	OpenGL Graphics Test	65.53	
		Spinning Squares	65.53	83.13 frames/sec
	User Interface Test	27.15	
		Elements	27.15	124.60 refresh/sec
	Disk Test	335.50	
		Sequential	211.66	
			Uncached Write	351.27	215.67 MB/sec [4K blocks]
			Uncached Write	258.03	145.99 MB/sec [256K blocks]
			Uncached Read	103.08	30.17 MB/sec [4K blocks]
			Uncached Read	404.17	203.13 MB/sec [256K blocks]
		Random	808.49	
			Uncached Write	962.71	101.91 MB/sec [4K blocks]
			Uncached Write	473.68	151.64 MB/sec [256K blocks]
			Uncached Read	1309.69	9.28 MB/sec [4K blocks]
			Uncached Read	967.02	179.44 MB/sec [256K blocks]

バッテリィのみでACアダプタ非接続

Results	79.33	
	System Info		
		Xbench Version		1.3
		System Version		10.10 (14A389)
		Physical RAM		8192 MB
		Model		MacBook5,1
		Drive Type		M4-CT256M4SSD2
	CPU Test	137.94	
		GCD Loop	222.68	11.74 Mops/sec
		Floating Point Basic	108.38	2.58 Gflop/sec
		vecLib FFT	91.56	3.02 Gflop/sec
		Floating Point Library	229.40	39.95 Mops/sec
	Memory Test	189.64	
		System	236.53	
			Allocate	926.16	3.40 Malloc/sec
			Fill	161.64	7859.10 MB/sec
			Copy	184.61	3812.97 MB/sec
		Stream	158.27	
			Copy	150.40	3106.46 MB/sec
			Scale	152.51	3150.87 MB/sec
			Add	166.80	3553.18 MB/sec
			Triad	164.68	3522.96 MB/sec
	Quartz Graphics Test	146.32	
		Line	166.76	11.10 Klines/sec [50% alpha]
		Rectangle	143.29	42.78 Krects/sec [50% alpha]
		Circle	127.88	10.42 Kcircles/sec [50% alpha]
		Bezier	149.52	3.77 Kbeziers/sec [50% alpha]
		Text	149.53	9.35 Kchars/sec
	OpenGL Graphics Test	65.34	
		Spinning Squares	65.34	82.89 frames/sec
	User Interface Test	26.28	
		Elements	26.28	120.61 refresh/sec
	Disk Test	342.37	
		Sequential	215.14	
			Uncached Write	358.19	219.93 MB/sec [4K blocks]
			Uncached Write	264.80	149.82 MB/sec [256K blocks]
			Uncached Read	104.66	30.63 MB/sec [4K blocks]
			Uncached Read	404.89	203.49 MB/sec [256K blocks]
		Random	837.94	
			Uncached Write	946.63	100.21 MB/sec [4K blocks]
			Uncached Write	538.49	172.39 MB/sec [256K blocks]
			Uncached Read	1275.60	9.04 MB/sec [4K blocks]
			Uncached Read	929.15	172.41 MB/sec [256K blocks]

ACアダプタ接続のみでバッテリィ非装着

Results	56.79	
	System Info		
		Xbench Version		1.3
		System Version		10.10 (14A389)
		Physical RAM		8192 MB
		Model		MacBook5,1
		Drive Type		M4-CT256M4SSD2
	CPU Test	109.89	
		GCD Loop	180.21	9.50 Mops/sec
		Floating Point Basic	85.45	2.03 Gflop/sec
		vecLib FFT	72.90	2.40 Gflop/sec
		Floating Point Library	184.16	32.07 Mops/sec
	Memory Test	175.41	
		System	205.78	
			Allocate	733.65	2.69 Malloc/sec
			Fill	136.91	6656.87 MB/sec
			Copy	169.15	3493.80 MB/sec
		Stream	152.85	
			Copy	144.39	2982.28 MB/sec
			Scale	144.26	2980.36 MB/sec
			Add	162.90	3470.19 MB/sec
			Triad	161.99	3465.41 MB/sec
	Quartz Graphics Test	117.45	
		Line	141.32	9.41 Klines/sec [50% alpha]
		Rectangle	112.75	33.66 Krects/sec [50% alpha]
		Circle	101.60	8.28 Kcircles/sec [50% alpha]
		Bezier	120.70	3.04 Kbeziers/sec [50% alpha]
		Text	117.68	7.36 Kchars/sec
	OpenGL Graphics Test	52.84	
		Spinning Squares	52.84	67.03 frames/sec
	User Interface Test	16.55	
		Elements	16.55	75.96 refresh/sec
	Disk Test	333.78	
		Sequential	211.56	
			Uncached Write	298.13	183.05 MB/sec [4K blocks]
			Uncached Write	279.23	157.99 MB/sec [256K blocks]
			Uncached Read	105.21	30.79 MB/sec [4K blocks]
			Uncached Read	405.29	203.70 MB/sec [256K blocks]
		Random	790.46	
			Uncached Write	804.91	85.21 MB/sec [4K blocks]
			Uncached Write	512.91	164.20 MB/sec [256K blocks]
			Uncached Read	1262.68	8.95 MB/sec [4K blocks]
			Uncached Read	929.09	172.40 MB/sec [256K blocks]

2014年10月13日, 編集履歴

iBook G4でLubuntu 14.04をUSBメモリィから起動、インストールする

 PowerPC G4を搭載したiBook G4で、Lubuntu(Ubuntu Linuxの軽量版的ディストリビューション)14.04をUSBメモリィからLiveで起動し、インストールを行う。インストールを試みるiBook G4は最終モデルの12インチで、スペックは以下の通り。

 Mac OS XとLubuntuを内蔵HDDひとつでデュアルブートにするならば、あらかじめパーティションを分割しておく必要がある。Mac OS X 10.5 Leopardならば「ディスクユーティリティ」を用いて現在のHDDの内容を保持したままパーティションのリサイズや分割ができるが、10.4 Tiger以前のディスクユーティリティでは内容全消去なので注意。

ディスクイメージのダウンロード、USBメモリィへの書き込み

 Lubuntu/GetLubuntuからPowerPC版のディスクイメージをダウンロードする。

 次に、How to install Ubuntu on MacBook using USB Stickを参考にディスクイメージをUSBメモリィに書き込む(このページではISO形式のディスクイメージをIMG形式に変換しているが、私はこのステップを飛ばした)。「PowerPCPAQ - Ubuntu Wiki」も参照。

 具体的にはUSBメモリィを接続してTerminal.appから

$ diskutil list

を実行し、USBメモリィの識別子を特定する。私の場合は/dev/disk1だった(以下USBメモリィの識別子が/dev/disk1を仮定)。次に、

$ diskutil unmountDisk /dev/disk1

でUSBメモリィをマウント解除する(USBメモリィ自体は差し込んだまま)。

$ sudo dd if=/path/to/lubuntu-14.04.1-desktop-powerpc.iso of=/dev/disk1 bs=1m

でディスクイメージをUSBメモリィに書き込む(/path/to/lubuntu-14.04.1-desktop-powerpc.isoはディスクイメージのパス)。パスワードを聞かれるので入力すると書き込みが始まる。数分間待つ。それまでのUSBメモリィの中身は消去されるので注意のこと。書き込みが終わればLubuntu起動・インストール用のUSBメモリィが完成。

Open FirmwareからUSB起動

 PowerPC時代のMacは、通常はUSBからの起動ができないが、後述のおまじないを唱えることでUSBメモリィからの起動を行う。

 インストール先のiBook G4に前節で作成したLubuntu起動・インストール用USBメモリィを差し込む。電源ボタンを押してiBook G4を起動させた直後、アップルマークが出る前にキィボードのCommand+Option+o+fを押し続ける。そうすると以下のような画面が出るのでキィを放す。

 これは昔のPCで言うところのいわゆるBIOS的なヤツである。Open Firmwareのプロンプトに以下のような「おまじない」を打ち込む。

boot ud:,\\:tbxi

 この「おまじない」は「Ben Collings: Booting your iBook G4 from a USB stick」、「PowerPCPAQ - Ubuntu Wiki」を参考にした。

 日本語キィボードのiBook G4でも、この時点では英語配列として認識されているので、記号類を入力するときに注意する:Shiftを押しながら「;」の刻印があるキィ、\は「]」の刻印があるキィで入力できる。

 しばらくすると以下のような黒い画面に移行する。

 この画面で何もせずに放っておくと勝手にLubuntuがLive起動するが、そのままでは画面表示が乱れてしまうので、以下のような「おまじない」を入力する。

live video=radeonfb:1024x768-32@60

 この「おまじない」は「Lubuntu/Documentation/FAQ/PPC」を参考にした。これにより、以下のようにLubuntuが正常にLive起動する。

 次節でインストールを行うが、この時点でもFirefoxでウェブを閲覧したりといった「お試し」が可能である。ただし、iBook G4のトラックパッドがまともに反応しないし、無線LANが使えないので、USBマウスと有線LANが必須である(それぞれ修正方法があるかもしれないが……)。

Lubuntu 14.04のインストール

 Live起動したLubuntuのデスクトップにある「Install Lubuntu 14.04」アイコンをダブルクリックすることでインストールウィザードが開始する。

 まずは使用する言語で「日本語」を選択し「続ける」をクリック。

「Lubuntuのインストール準備」では必要なディスク容量とネット接続の確認、インストールオプションの選択が行われる。ここでは両オプションを選択し「続ける」とした。

「インストールの種類」では、Mac OS Xとデュアルブートにする場合は一番上の「Lubuntuをこれらと併用可能な形でインストール」を、Mac OS X(やその他)を消去してLubuntu一本で行く場合は「ディスクを削除してLubuntuをインストール」を選択する。デュアルブートにする場合はあらかじめHDDに空きパーティションを作成しておくこと。さもなければ「Lubuntuをこれらと併用可能な形でインストール」がそもそも選択肢に出てこない(一番下の「それ以外」を選択することでパーティションの操作ができるかもしれないが、操作方法がよく解らず)。

 ここでは「Lubuntuをこれらと併用可能な形でインストール」を選択して「インストール」をクリック。

 タイムゾーンを選択して「続ける」。

 キィボード配列を選択して「続ける」。

 ユーザアカウントを設定するとインストールが始まり、以下のダイアログが出てインストールは完了。「今すぐ再起動する」をクリック。

 LubuntuをMac OS Xとデュアルブートできるようにインストールした以降は、iBook G4電源投入時に以下のような黒い画面が出るようになる。

 この画面で何もせずに放っておくか、あるいは表示されている説明通りにlキィを押すとLinux(Lubuntu)が起動する。xを押せばMac OS Xが起動するようになる。ディフォルトで起動するOSをMac OS Xに変更する場合は「YabootConfigurationForMacintoshPowerPCsDualBoot - Community Help Wiki」を参照。

インストール後

 Lubuntuインストール後、一通りのソフトウェアアップデートを済ませて、再起動直後のターミナル一枚とタスクマネージャを起動した時点でメモリィ使用量は110MB。

 使用感等を適当に列挙すると、

 上記のうち、トラックパッド、無線LAN、音に関してはおそらくすぐに改善できるだろうが、今回はここまで。

 動作が遅いのはMac OS Xでも同様(元が9年程度前のマシンなので)。もっと軽量なLinuxディストリビューションならば軽快な動作が可能かもしれないが、

ようなものを探すのが面倒なので、今回は有名なUbuntuの軽量版的ディストリビューションであるLubuntuを選択した。

2014年10月05日, 編集履歴

Murasakiをver. 2.2.2に更新しました

 OS X用スクロール型EPUBリーダアプリケーションMurasakiがver. 2.2.2になりました。

 ver. 2.2.2はバグ修正版です。修正箇所は、

です。ナビゲーション構造の解析に関する問題は、コンタクトフォームよりご報告いただきました。ありがとうございます。