Skip to content
This repository was archived by the owner on Jan 14, 2026. It is now read-only.

Commit c67d780

Browse files
Copilottas0dev
andcommitted
Fix idt.md to reflect 64-bit IDT entry structure
Co-authored-by: nekogakure <156896971+nekogakure@users.noreply.github.com>
1 parent 5fee677 commit c67d780

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

docs/interrupt/idt.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,21 @@ IDTを初期化します。256個のエントリを設定し、PICを再マッ
2222
## 構造体
2323

2424
#### `struct idt_entry`(内部定義)
25-
IDTエントリを表す構造体です。
25+
IDTエントリを表す構造体です(64ビット形式)
2626

27-
- `base_lo(uint16_t)`: ハンドラアドレスの下位16ビット
27+
- `base_lo(uint16_t)`: ハンドラアドレスの下位16ビット(bits 0-15)
2828
- `sel(uint16_t)`: コードセグメントセレクタ(0x08=カーネルコード)
29-
- `always0(uint8_t)`: 常に0
30-
- `flags(uint8_t)`: フラグバイト(0x8E=32ビット割り込みゲート、DPL=0)
31-
- `base_hi(uint16_t)`: ハンドラアドレスの上位16ビット
29+
- `ist(uint8_t)`: Interrupt Stack Table(通常は0)
30+
- `flags(uint8_t)`: フラグバイト(0x8E=割り込みゲート、DPL=0、Present)
31+
- `base_mid(uint16_t)`: ハンドラアドレスの中位16ビット(bits 16-31)
32+
- `base_hi(uint32_t)`: ハンドラアドレスの上位32ビット(bits 32-63)
33+
- `reserved(uint32_t)`: 予約領域(0でなければならない)
3234

3335
#### `struct idt_ptr`(内部定義)
3436
IDTポインタ構造体です。
3537

3638
- `limit(uint16_t)`: IDTのサイズ-1
37-
- `base(uint32_t)`: IDTのベースアドレス
39+
- `base(uint64_t)`: IDTのベースアドレス(64ビット)
3840

3941
### PICの再マッピング
4042

0 commit comments

Comments
 (0)