Я изучаю ассемблерное и низкоуровневое программирование и читаю книгу об этом . Там сказано, что мы можем поместить любые данные в секцию .text файла elf , но, конечно, мы не можем изменить их из-за различных разрешений страниц / сегментов. Но там не было сказано, с чем это связано, из-за наличия данных в разделе .text . Мне также сказали многие программисты на С ++, что компилятор g ++ помещает
static const char DATA[] = "SOME DATA";
внутри раздела .text тоже. Интересно, почему бы не поместить эти данные в раздел .rodata , для чего это нужно? И если используется .text , что хранить в .rodata тогда?
Основной вопрос касается такого поведения в длинном режиме.