Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с памятью


Cosinus ©   (2004-08-12 16:39:00) 

При работе с файлом для увеличения быстродействия, я его копирую в память(GetMem и бла-бла-бла). Но если пользователь "ради интереса" или просто случайно попытается запихать туда файл какого-нибудь неимоверного размера, то естественно вылезет ошибка(если железо не позволяет естественно). Хочется сделать обработку искл.ситуации и если файл превышает какие-либо пределы, то загрузку не производить. Вопрос собственно вот в чем - что программа должна знать о конфигурации компьютера и о кол-ве свободной памяти, чтобы расчитать безопасный размер искомого файла? То есть, чтобы не только знать, сколько есть свободной памяти, но оставить какое то кол-во для других более позже запущеных программ. Может я немного сумбурно объяснил - если что непонятно - попробую разъяснить.


Cosinus   (2004-08-12 18:06:00) [1]

>>Romkin ©   (12.08.04 18:04) [5]
ГЛАВА 13 Архитектура памяти в Windows ;)


Romkin   (2004-08-12 18:04:00) [2]

Да, хорошая мысль. Особенно раздел "Memory mapped files" ;)


Cosinus   (2004-08-12 17:47:00) [3]

Ок, всем спасибо.
>>Digitman ©  
...есть такое понятие - "виртуальное адресное пространство процесса"...-ну что же... читаем Рихтера. :)


Anatoly Podgoretsky   (2004-08-12 17:03:00) [4]

Cosinus ©   (12.08.04 16:39)  
Размер свободной памяти особого смысла не имеет, не хватит, так освободит что бы хватило. Или ты думаешь, что как в Досе все загружается в оперативную память.


@Lex   (2004-08-12 16:57:00) [5]

GlobalMemoryStatus


Digitman   (2004-08-12 16:54:00) [6]


> для увеличения быстродействия, я его копирую в память(GetMem
> и бла-бла-бла).


дурнее не придумаешь


> естественно вылезет ошибка(если железо не позволяет естественно)


именно "железо" здесь ни при чем, не выдумывай


> что программа должна знать о конфигурации компьютера и о
> кол-ве свободной памяти, чтобы расчитать безопасный размер
> искомого файла?


ничего. это не ее "собачье дело".

есть такое понятие - "виртуальное адресное пространство процесса" - от него и пляши, оно и определяет потенцию или импотенцию в упомянутой ситуации


Наверх

Титульная страница Поиск, карта сайта Написать письмо