Вниз
Скачать: CL | DM;

Out of memory   Найти похожие ветки 

 
Геннадий   (2004-11-02 10:55) [0]

Смоделируем ситуацию:

var
 St: String;
 I : Integer;
begin
 St:= "";
 for I:=Low(I) to High(I) do St:= St + ":)";
end;


Получаем Out of memory. Но ведь есть файл подкачки. Если не хватает оперативной памяти, данные сбрасываются на диск. Если не хватает места в файле-подкачке, он динамически расширяется (или можно выставить очень большой его размер в свойствах ОС). Так в чём проблема? Проясните ситуацию, пожалуйста!


 
Romkin ©   (2004-11-02 11:00) [1]

Проблема во фрагментации памяти. Эт во-первых. Во-вторых, больше 2 гигов ты не возьмешь, скока на диске бы не было. Фактически, и два гига не выделишь, там ведь еще твой ехе, все библиотеки и тд...


 
Digitman ©   (2004-11-02 11:08) [2]


> Геннадий   (02.11.04 10:55)  


дело не в файле подкачки

ВАП процесса состоит из регионов.. каждый из регионов состоит из блока смежных страниц и имеет атрибуты "свободности"/"занятости" (упрощенно) .. "региональное" состояние ВАП меняется динамически, с каждым вызовом WinAPI-ф-ций распределения/перераспределения/освобождения вирт.памяти

в пределе ты требуешь распределения памяти размером даже более 4Гб, такого "свободного" региона в ВАП Win32-процесса нет и быть не может, поэтому ты и получаешь OOM-отказ



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.03 c
14-1098455538
Кириешки
2004-10-22 18:32
2004.11.14
НОРТОН АНТИВИРУС завалил комп. Помогите пожалуйста!


1-1099384385
WondeRu
2004-11-02 11:33
2004.11.14
Assert... Зачем он нужен???


3-1097658661
Pashkerton
2004-10-13 13:11
2004.11.14
Учет времени


14-1098860395
han-bratan
2004-10-27 10:59
2004.11.14
Delphi 2005


1-1098887850
Lexx3D
2004-10-27 18:37
2004.11.14
Re: Смена языков программы...




   Наверх