FreeBSD News
In This Issue:

ISPの No.1 は FreeBSDさ!

Matthew Dillon

FreeBSD ってなに?

Jordan K. Hubbard

FreeBSDで動くCodaファイルシステム

M. Satyanarayanan

もう一つの FreeBSD 成功物語: 大変革を遂げたある ISP

Dan Benjamin

TCJA の web で子供たちと始めよう

Wilko Bulte

FreeBSD と PalmPilot

Oliver Fromme

いかにして FreeBSD は私のお気に入りになったか

Martin Cracauer

FreeBSD で動かすハイファイ・オーディオ

Oliver Fromme

Blender Released!

Go to Cover Page

FreeBSD で動かすハイファイ・オーディオ
Oliver Fromme <olli@fromme.com>
訳: 今野 元之 <motoyuki@jp.FreeBSD.ORG>
Daemon

一見したところでは、ごく普通のオーディオ用 CD プレーヤーのように見えます。 CD をトレーに入れて Play ボタンを押すと、トレーが閉じてお気に入りの音楽が始まるのです。 1 枚の CD に 11 時間まで演奏可能でしかも 150 x 32 ピクセルのバックライト付ディスプレイにバンド名や歌のタイトルを表示しながら。

いったいどんなデバイスかって? FreeBSD で動く、手作りの MPEG オーディオプレーヤーなのです。技術的には、ほとんど普通の PC そのものです。 Pentium の CPU、 32MB の EDO DRAM、サウンドカード、ネットワークインターフェースカード、そして CD-ROM ドライブを装備しています。とはいえ、このプレーヤーと普通の PC と比べると本質的な違いが多少はあります。まず最初にこのデバイスの目標は PC ではなく高級オーディオセットの一つになることです。したがって全てのハードウェアは普通の CD プレーヤーの筐体に納めなければなりません。このために 2/3 サイズの Baby-AT マザーボード、サウンドカードとネットワークインターフェースカードを接続するための ISA ライザーカード、そしてスリムラインの電源を使います。

二番目の (そして最初のに劣らず重要な) 目標は、プレーヤーをできるだけ静粛にすることです。つまりハードディスクやファンは使えません。ハードディスクが使用できないのは一番の難題です。現在の実装では、ネットワークインターフェースカードのブート EPROM により bootp と tftp プロトコルを使って別室にある FreeBSD サーバーから起動しています。 起動に失敗した場合は内蔵のフロッピードライブから起動します。これにはかなりの時間がかかるため、ブートサーバーにアクセスできない外部の場所でプレーヤーを使うときのための緊急避難的なものでしかありません。 EPROM や フラッシュ ROM カードからのブートのような他の手段についてはいろいろと検討中で、プレーヤーの将来のリビジョンで実装されるでしょう。

ファンが使えないというのも重要です。 CPU は Pentium-100 を大型の放熱器をつけて 90MHz で動かしています。このため CPU ファンは必要ありません。電源はスリムラインの 73W 型で CD プレーヤーの筐体に入る小型のものです。電源にはファンがありますが、内部が過熱していなければ停止させておくことができます。ハードウェア全体の消費電力は 30W です。

なぜ FreeBSD なのでしょうか? FreeBSD は安定性、信頼性、そして性能面で非常に優れています。開発の最新状況を追ったりシステムのソースツリーをアップデートしたりすることが容易かつリスクなしに可能だという、価値ある利点もあります。 FreeBSD でデバイスドライバを書くのはとても簡単です。このプレーヤーの場合、 LCD ディスプレイと赤外線リモコン受信器にアクセスする二種類のドライバが必要でした。前者はパラレルポートに接続するので lpt ドライバをちょっと書き換えるだけでしたし、後者はシリアルポートの一つに接続するだけでした。 CD プレーヤーのボタンについては特別なドライバを書く必要さえありませんでした。普通のキーボード回路からキーボード入力へ接続したからです。他に必要なほとんどのソフトウェアは既に FreeBSD に揃っていました。 MPEG オーディオデコーダ (mpg123) やネットワーク上で HTTP プロコトルを使用して MPEG ファイルを入手するプログラムなどです。

この MPEG オーディオプレーヤーは私が余暇を利用して製作する個人的なプロジェクトなのですが、 FreeBSD が組込用のアプリケーションやデバイスを動かすのにぴったりなことをはっきりさせているのです。

Daemon 参考: