Даже если поменять xchgeaxeax@home-kde ~/testDir/2gbTest $ g++ -mcmodel=small -o ./2gbtest_small ./main1.cpp многа нецензурного в мой адрес...
Ну если что, то я у себя на Calculate Linux пробовал. А это производная от Gentoo. У меня как раз medium и large сработали
xchgeaxeax@home-kde ~/testDir/2gbTest $ cat ./main.cpp #include <iostream> #include <cstring> const long long strSize = 1500000000; // 1.5 Гб...
[ATTACH] Всех с праздником.
С этим головняком позволят развлечься Gentoo или Arch. Нужен -mcmodel=large у libc - просто собери сам.
На это ответили еще на 4 странице - ограничение формата исполняемого файла, но оно связано с ограничениями в инструкциях процессора. Если книга...
Не зависит. Только от версии gcc и библиотек в системе, используемых твоей программой. Соответственно библиотекам ставятся и заголовки к ним,...
VirtualAlloc для кусочков произвольного размера лучше не использовать. Попробуйте написать через GetProcessHeap/HeapAlloc/HeapReAlloc VirtualAlloc...
И что вы тогда вот тут вот делаете? Это я пытаюсь запутать? Повторить сказанное в цитате и сказать, что согласен... Такое впечатление, что...
// тест файла test_val_main.cpp int main(int argc, char *argv[]) { // это просто стартовая функция. Она ничего не делает. Нам интереснее вторая...
Не 4 Гб потому что в 32 бита числа со знаком не помещаются в таком диапазоне. А со знаком они потому, что это смещения, а не абсолютные значения и...
int main(int argc, char *argv[]) { return 0; } int x; int getNextValue() { return x + 1; }$ gcc -o ./test_val ./test_val_main.cpp...
Это не верно. Там вычисляется 64-битный адрес, но в инструкции нельзя напрямую добавить 64-битное смещение. Т.е. [rdx+disp32] и на выходе у вас...
Дело не в этом. Бинарник может быть хотя 2, хоть 4 Гб. Вопрос только в том как вы будете добираться до переменных в этом бинарнике. Проблемы...
Вот две инструкции загрузки в rax учетверенного слова по смещению [ATTACH] И вот что из себя представляют их опкоды: [ATTACH] 0x48 это как раз...
Тут есть оффсет: mov rax,[Val]
Все в кучу. Какое отношение PAE имеет к смещению в командах. Вы технологию расширения физического адресного пространства смешали с адресацией на...
Ну вот вам точно стоило бы почитать мою ссылку и тогда бы не писали такое... Какое отношение разрядность шины адреса имеет к размерам регистров?...
Те вы даже не понимаете, то в 32 битный непосредственный адрес в команде (а больше 32 бит он быть не может) просто физически не помещаются...
По той ссылке все есть про кодирование инструкций x86. Только надо поискать на страницах. Только это описание устарело. Там нету ничего про long...
Имена участников (разделяйте запятой).