Почему мой раздел.data всегда больше 8K?

Я отлаживаю встроенную операционную систему, процессор - ARM Cortex A8, а цепочка кросс-компиляции - arm-linux-gnueabihf. Я нахожу интересную вещь, что .data раздел всегда больше, чем 8К, даже если я ничего не вкладываю в него. Но если я изменю имя раздела на другое, например .xxdataтогда размер будет правильным.

Ниже приведен мой скрипт компоновщика ядра для раздела.data. Раздел.data 8K. Однако если я изменю.data на.xxdata, размер раздела будет 0.

Итак, мой вопрос, есть ли какие-либо правила для размера .data раздел?

.data : ALIGN(8) {
    /* writable data  */
    __data_start_rom = .;
    /* in one segment binaries, the rom data address is on top
       of the ram data address */
    __data_start = .;
    . = ALIGN(8);
}

0 ответов

Другие вопросы по тегам