1
0
mirror of https://github.com/0xAX/linux-insides.git synced 2025-01-05 21:30:59 +00:00

Update linux-bootstrap-1.md

This commit is contained in:
0xAX 2015-01-07 23:06:05 +06:00
parent 27b1034889
commit 97e490da34

View File

@ -58,16 +58,16 @@ which is 65519 bytes over first megabyte. Since only one megabyte is accessible
Ok, now we know about real mode and memory addressing, let's get back to register values after reset.
`CS` register has two parts: the visible segment selector and hidden base address. We know predefined `CS` base and `IP` value, so our logical address will be:
`CS` register consists of two parts: the visible segment selector and hidden base address. We know predefined `CS` base and `IP` value, logical address will be:
```
0x0ffff000:0xfff0
0xffff0000:0xfff0
```
which we can translate to the physical address:
In this way starting address formed by adding the base address to the value in the EIP register:
```python
>>> hex((0x0ffff000 << 4) + 0xfff0)
>>> 0xffff0000 + 0xfff0
'0xfffffff0'
```