仮想環境を使い Linux Kernel 内で動作するプログラムを作っていきます。ユーザー・ランドで動作するプログラムとの違い。Linux Kernel の様子を探っていきます。ここでは Linux で動作する VirtualBox を使用します。Windows で動作する VirtualBox も利用できます。Windows で動作する VirtualBox では不便な場面は有るかと思いますが、なるべく困らないようにしていきたいと思います。
VirtualBox に次のような設定の仮想マシンを用意してください。他の仮想環境を使う場合は、よく似た環境にしてください。
構成要素 | 設定 | 説明 |
仮想マシンOS (Type) | Linux | この OS のデバイス・ドライバ開発の話ですので。 |
仮想マシンディストリビューション (Version) | Ubuntu ホストと同じ CPU 語長 | Ubuntuを使用します。Release を指定できる場合は 14.04 を指定してください。仮想マシンの CPU 語長はホスト環境と同じにする事を推奨します。ホストマシンと合わせる目的は、コンパイル速度が遅い場合、ホストマシンで補助しやすくするためです。 |
仮想マシンメモリ容量 (Base Memory) | 1024Mibyte 以上 | 遅いですが、セルフコンパイルを実施するためです。できれば 2048Mibyte 以上にしてください。 |
プロセッサ数(Processor(s)) | 2 個以上 | 2個を割り当てると可能な実験をする予定です。 |
リモート・ディスプレイ(Remote Display) | Disable | リモートディスプレイ機能は使用する予定が無いので disable で良いです。 |
光学ドライブ (optical drive) | 1 台 | Ubuntu インストーラー ISO イメージをマウントします。 |
ハード・ディスク (hard disk) | 1 台, 200G byte | Ubuntu、Linux Kernel ソース、それをコンパイルしたオブジェクトを格納します。容量の 100% まで使用する予定はないので動的確保(Dynamically Allocated)で構成してください。 |
ネットワーク・アダプタ接続 (Attached to) | bridged adapter | ブリッジ接続をおすすめします。ssh で入ることで状況を立て直せる場合もあります。ネットワークにコンピュータを追加できない場合は NAT, Internal Network, Host Only network を使い分けるか複数用意してください。 |
シリアル・ポート番号 (Port Number) | COM1 | もしかしたら使うかもしれません。 |
シリアル・ポート・モード (Port Mode) | Disconnected | もしかしたら使うかもしれません。 |
次は VirtualBox の仮想マシン設定一覧の画像です。赤線を引いたところは設定を必要とする項目です。