「オペレーティングシステム」の版間の差分
削除された内容 追加された内容
→割り込み: IOポートにイミディエイトアドレスでアクセスすると下位8ビットしかアドレスバスに出ない。16ビットで指定するのはDXレジスタ間接が必要でポートアドレスのレジスタ間接にはDXしか使えない(命令のビットパターンにレジスタを選択するフィールドがない)。現在のx86のCPUではメモリーコントローラはCPUに集積されている。 タグ: 2017年版ソースエディター |
→IN命令とOUT命令: ソフトウェア割込みに関する誤った認識を訂正。 タグ: 2017年版ソースエディター |
||
514 行
IN命令やOUT命令の引数で、引数でI/Oポートアドレスを指定することで、どのアクセスの読み書きをするかを指定する。
また、キーボードコントローラーも、ポートアドレスが割り当てられている。
528 ⟶ 526行目:
しかし、コンピュータ黎明期からある、いくつかのデバイスの制御では、IN命令や
具体的に言うと、仕様上は、ディスプレイやフロッピーディスクやハードディスク、キーボードなどは、割り込み int 命令によって制御できる仕様であり、int 0x10 はディスプレイとの割り込み、int 0x13 はディスクアクセスとの割り込み、などの仕様がある。▼
▲具体的に言うと、仕様上は、ディスプレイやフロッピーディスクやハードディスク、キーボードなどは、割り込み
本書では、とりあえず、80年代あたりの古いアーキテクチャを前提とする(資料が入手しやすいので)。そのため、最近のアーキテクチャでは動作しない可能性がある。
|