私は組み込みアプリケーションで使用しているIntelベースのSBCを持っています。これは、Fintek Super I/Oチップに接続されたデジタルIO(DIO)ポートを備えています。私は他のハードウェアを制御するためにこのポートの出力ライン上のビットを設定できるようにしたい。Linuxのドライバでリアルモードに切り替える方法
幸いなことに、メーカーのBIOSは、ちょうどこれを行うための機能が付属しています:
AX=6F09h
bl=<bits>
int 15h
は、残念ながら、私はプロテクトモードで64ビットのLinuxを実行していますよ。私はbios割り込みを、ユーザー空間プログラムから、または必要に応じてカーネルドライバから呼び出す方法はありますか?
代わりにFintekチップに直接レジスタを設定することもできますが、チップのどのピンがDIOヘッダに接続されているかを正確に知る必要があります。もちろん、ボードリビジョンからボードリビジョンに変更されます。
True、vm86モードはもはやロングモードコードからは使用できなくなりました(「ロングモード」ではなく「64ビット」 - 長いモードで実行されている32ビットコードであっても(名前は忘れていました)vm86 )。 – Griwes