組み込みに使うBSD

 さて,ここまでの説明で,次世代の組み込み機器のベースとなるOSにはBSDを使うと良さそうだということは理解してもらえたと思う.しかしBSDにはネットワークで配布されているものだけとってもFreeBSD,NetBSD,OpenBSDなどがある.さらに,商用のBSD/OSやBSDと名前のついていないBSDベースのOSまで入れるとそれこそ星の数ほどのBSDがあるのだが,今回はFreeBSD,NetBSD,BSD/OSの三つに限って,組み込みOSに使う場合の可能性に関して考えてみたい.OpenBSDは現段階ではNetBSDの変形版と考えることができる状況なので,今回は対象から外すことにする.

1)FreeBSD

 組み込み用途に使うOSとしてFreeBSDを考えた場合,最大の魅力は使用できるアプリケーションソフトウェアの数である.1万を軽く越える数のアプリケーションソフトウェアがportsとしてFreeBSD用にポーティングされている.

 デメリットとしてはサポートアーキテクチャがi386以降の互換CPUとalphaだけに限られることである.もちろん,自社製品のためにFreeBSDを別のアーキテクチャにポーティングするということも考えられないことではないが,その場合にはFree

BSDの最大のメリットであるportsソフトウェア群がどこまで使えるのかという点に関しても十分に考慮する必要がある.i386アーキテクチャでは簡単にコンパイルできたportsが別のアーキティクチャでは相当手を入れないとコンパイルできないという可能性は常に存在する.

 もちろん,ほとんどのソフトウェアはSPARC Stationをはじめとする多くのUNIXワークステーション上で問題なく動作しているので,「まったく動かない」という心配は無用である.ただし,「そのままで問題なく動く」という前提でプロジェクトのスケジュールを組むと,思わぬところで時間をとられてつまずくことがある.

 また,version 3.x以降のFreeBSDは,おもにISPでのネットワークサーバのOSとして開発されてきているため,カーネルサイズはけっして小さくはない(筆者の環境で/kernelファイルのサイズが3.5Mバイト程度).

2)NetBSD

 NetBSDは,数あるBSDの中でいちばんデザインのすっきりとした移植性の高いOSである.現在NetBSDがサポートしているアーキテクチャに関しては,本誌の特集第2章を参照してほしい.

 NetBSDの特徴は,ともかくサポートアーキテクチャが多いこと,さらにそれぞれのアーキテクチャをサポートするためにアーキテクチャごとのデバイスドライバを書いたりするのではなく,あくまでも同一のプログラムを種々のアーキテクチャで使えるように書かれている点である.

 NetBSDのデメリットとしては,種々のアーキテクチャを同一のコードでサポートするために,若干のオーバヘッドが存在すること,さらに多くのアーキテクチャを平等にサポートするため,OSとしてのバージョンアップリリースの間隔が長いことである.

3)BSD/OS

 BSD/OSは,もともとBSD386という名前でBSDiより発売され,その後SPARCチップのサポートなどのため名前を変えたものである.昨年4月のWind RiverによるBSDiのソフトウェア資産の買収にともない,現在はWind River社から販売されている.現在公式に販売されている商品はPCアーキテクチャで動作するものだけだが,現在Power PCバージョンが開発中のものとして動作している.

● どのBSDを選ぶのか

 これらの状況から,組み込みOSとしてBSDを使おうと考える場合,対象アーキテクチャがi386互換CPUに限定できるならFreeBSDもしくはBSD/OSを使うのが良いだろう.カーネル以外にUNIXの基本的なツール類なども必要になる場合にはOpenBSDのインテグレーションも参考にするとセキュリティが高くなる.この場合にはOpenBSD自体を使うことも検討しても良いだろう.

 一方で,x86以外のアーキテクチャを使いたい場合,NetBSDを選ぶというのが現実的である.NetBSDの場合,x86アーキテクチャ,つまり普通のPCで動くデバイスであれば他のCPUアーキテクチャ上でも基本的には同様に動作する.もちろん,PC上のNetBSD上で動作するアプリケーションもほかのアーキテクチャ上で動作するため,ハードウェアの設計と,アプリケーションソフトウェアの設計を同時に進めることができる.

GPLとBSDライセンス

以降の内容は本誌を参照ください

インデックス
 ◆インターネット時代の組み込みOSに対するニーズ
 ◆ネットワークOSの必要条件
 ◆組み込みに使うBSD

今月号特集トップページへ戻る


Copyright 2002 増田佳泰