1
0
mirror of https://github.com/0xAX/linux-insides.git synced 2025-07-07 17:28:03 +00:00

fill up linker scriptfill up linker script

Signed-off-by: Alexander Kuleshov <kuleshovmail@gmail.com>
This commit is contained in:
proninyaroslav 2018-01-03 21:17:34 +03:00
parent f0c9e5578d
commit 4d6e7f98c3

View File

@ -115,6 +115,10 @@ SECTIONS
HEAD_TEXT HEAD_TEXT
_ehead = . ; _ehead = . ;
} }
...
...
...
}
``` ```
Если вы не знакомы с синтаксисом скриптового языка компоновщика `GNU LD`, вы можете найти более подробную информацию в [документации](https://sourceware.org/binutils/docs/ld/Scripts.html#Scripts). Вкратце, символ `.` является специальной переменной компоновщика - счётчиком местоположения. Значение, присвоенное ему - это смещение по отношению к смещению сегмента. В нашем случае мы устанавливаем счётчик местоположения в ноль. Это означает, что наш код слинкован для запуска в памяти со смещения `0`. Кроме того, мы можем найти эту информацию в комментарии: Если вы не знакомы с синтаксисом скриптового языка компоновщика `GNU LD`, вы можете найти более подробную информацию в [документации](https://sourceware.org/binutils/docs/ld/Scripts.html#Scripts). Вкратце, символ `.` является специальной переменной компоновщика - счётчиком местоположения. Значение, присвоенное ему - это смещение по отношению к смещению сегмента. В нашем случае мы устанавливаем счётчик местоположения в ноль. Это означает, что наш код слинкован для запуска в памяти со смещения `0`. Кроме того, мы можем найти эту информацию в комментарии: