mirror of
https://github.com/0xAX/linux-insides.git
synced 2024-11-15 20:48:57 +00:00
Merge pull request #131 from diogovk/fix_typos
Fix a few english typos - "can be runned not"
This commit is contained in:
commit
45fe80f242
@ -72,7 +72,7 @@ Now we know default physical and virtual addresses of the `startup_64` routine,
|
|||||||
subq $_text - __START_KERNEL_map, %rbp
|
subq $_text - __START_KERNEL_map, %rbp
|
||||||
```
|
```
|
||||||
|
|
||||||
Here we just put the `rip-relative` address to the `rbp` register and than subtract `$_text - __START_KERNEL_map` from it. We know that compiled address of the `_text` is `0xffffffff81000000` and `__START_KERNEL_map` contains `0xffffffff81000000`, so `rbp` will contain physical address of the `text` - `0x1000000` after this calculation. We need to calculate it because kernel can be runned not on the default address, but now we know actual physical address.
|
Here we just put the `rip-relative` address to the `rbp` register and then subtract `$_text - __START_KERNEL_map` from it. We know that compiled address of the `_text` is `0xffffffff81000000` and `__START_KERNEL_map` contains `0xffffffff81000000`, so `rbp` will contain physical address of the `text` - `0x1000000` after this calculation. We need to calculate it because kernel can't be runned on the default address, but now we know the actual physical address.
|
||||||
|
|
||||||
In the next step we checks that this address is aligned with:
|
In the next step we checks that this address is aligned with:
|
||||||
|
|
||||||
@ -122,7 +122,7 @@ The first step before we started to setup identity paging, need to correct follo
|
|||||||
addq %rbp, level2_fixmap_pgt + (506*8)(%rip)
|
addq %rbp, level2_fixmap_pgt + (506*8)(%rip)
|
||||||
```
|
```
|
||||||
|
|
||||||
Here we need to correct `early_level4_pgt` and other addresses of the page table directories, because as I wrote above, kernel can be runned not at the default `0x1000000` address. `rbp` register contains actuall address so we add to the `early_level4_pgt`, `level3_kernel_pgt` and `level2_fixmap_pgt`. Let's try to understand what this labels means. First of all let's look on their definition:
|
Here we need to correct `early_level4_pgt` and other addresses of the page table directories, because as I wrote above, kernel can't be runned at the default `0x1000000` address. `rbp` register contains actual address so we add to the `early_level4_pgt`, `level3_kernel_pgt` and `level2_fixmap_pgt`. Let's try to understand what these labels means. First of all let's look on their definition:
|
||||||
|
|
||||||
```assembly
|
```assembly
|
||||||
NEXT_PAGE(early_level4_pgt)
|
NEXT_PAGE(early_level4_pgt)
|
||||||
|
Loading…
Reference in New Issue
Block a user