mirror of
https://github.com/MintCN/linux-insides-zh.git
synced 2026-04-25 03:01:26 +08:00
页表部分修正
This commit is contained in:
@@ -506,14 +506,14 @@ pgtable:
|
||||
jnz 1b
|
||||
```
|
||||
|
||||
在这里我们做的几乎和上面一样,所有的表项都带着标记 - `$0x00000183` - `PRESENT + WRITE + MBZ` 。最后我们将会拥有 `2048` 个 `2MB` 页的页表,或者说:
|
||||
在这里我们做的几乎和上面一样,所有的表项都带着标记 - `$0x00000183` - `PRESENT + WRITE + MBZ` 。最后我们将会拥有 `2048` 个 `2MB` 大的页,或者说:
|
||||
|
||||
```python
|
||||
>>> 2048 * 0x00200000
|
||||
4294967296
|
||||
```
|
||||
|
||||
`4G` 页表。我们刚刚完成我们的初期页表结构,其映射了 `4G` 大小的内存,现在我们可以把高级页表 `PML4` 的地址放到 `cr3` 寄存器中了:
|
||||
一个 `4G` 页表。我们刚刚完成我们的初期页表结构,其映射了 `4G` 大小的内存,现在我们可以把高级页表 `PML4` 的地址放到 `cr3` 寄存器中了:
|
||||
|
||||
```assembly
|
||||
leal pgtable(%ebx), %eax
|
||||
|
||||
Reference in New Issue
Block a user