|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июн 26, 2004 21:57:14 Делаю в D7 под WinXP, предварительно увеличив размер своп-файла (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management.PagingFiles=побольше)
{$APPTYPE CONSOLE}
{$IMAGEBASE $7FFF0000}
var
a:array[0..$76FF599F] of byte;
i:integer;
begin
for i:=0 to sizeof(a) do
a[i]:=0;
writeln(sizeof(a));
end.
и получил размер переменной 1996446112 байт (в 98 окошках ушел за 2 млн). Интересно, а можно ли больше для статической переменной? И куда сжираются недостающие до 2GB байтики. А то что-то посидел с калькулятором и файликом tdump project1 > dumpPE.txt и не сходица |
|
|
Дата: Июн 27, 2004 08:49:20 А Рихтера - лень почитать? О памяти в винде например... |
|
|
Дата: Июн 27, 2004 16:58:28 ..а ещё там будет написаное, что файл с IMAGEBASE = 7FFF0000h не запустится в NT. Поиск по ключевым словам: Four-F, Рихтер, VirtualAlloc. |
|
|
Дата: Июн 27, 2004 18:53:47 Но ведь запускается же! Зуб даю, запускается. Правда приходится ждать более пяти минут, чтоб выполнилась. |
|
|
Дата: Июн 27, 2004 19:35:44 Если из файла убрать релоки, которые видимо добавляет D7, то не запустится. Отладчиком попробуйте загрузить. |
|
|
Дата: Июн 27, 2004 22:21:15 Загружал через W32DASM и стандартный дельфийский дебаггер, все чинно. Какие релоки убирать, поподробнее? |
|
|
Дата: Июн 28, 2004 14:33:08 Посмотрите в дебаггере адрес загрузки. И поиск по форуму - что искать я уже писал..
Для выявления 0x00000000 нулевых указателей 0x0000FFFF Для кода и данных 0x00010000 пользовательского 0x7FFEFFFF режима Закрытый, 0x7FFF0000 размером 64 Кб 0x7FFFFFFF Для кода и данных 0x800000000 режима ядра 0xFFFFFFFF |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.068 |