Linuxとの互換性を狙ってのことだと思うけど、iopermが使えるようになっているんだ。
これはかなり便利で、WindowsXPでも直接IOポートを叩くアプリケーションが
簡単に実現できる。もっとも、ドライバをそのつどインストールしておく必要が
あるんで、忘れやすいけれど。
飛行船の基地局システムはLinuxで行くことにしているのは、IOを叩くだけでなく、
タイマなどで時間管理をするドライバを作る時にWindowsだとDDKを導入したり
大事になってしまうからなので、方針自体は変える必要はないけれど、
日々の簡単な実験ならこれがあれば両互換のプログラムが作れるし、
かなりスムースにできるね。
ただ、私のPCカードパラレルポートはWindowsだと割り当てアドレスが
iopermでは届かないところにアサインされてしまうので、ioplを使う必要がある。
Linuxで使うと普通にLPT2のアドレス(0x278)に割り当ててくれるから
WindowsXPが何かおかしなことをやっているのだろうけれど、不便だ。
PnPのポートでなければ、40:08からポートアドレスが取得できるのだけれど、
PCカードのパラレルポートはLinux/Windowsともに40:08からのテーブルには
格納されないようだ。BIOSが関知しないから当然といえば当然だが・・
備忘録
- ioperm -i : ドライバインストール
- ioperm -u : ドライバアンインストール
- 実行プログラムのコンパイル時にlibiopermのリンクが必要
あ、バイオリンのレッスン前に練習しなくっちゃ~・・・