Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.27;
Скачать: CL | DM;

Вниз

Выделение физической памяти   Найти похожие ветки 

 
Ishmael   (2005-09-25 23:30) [0]

Надо выделить область ФИЗИЧЕСКОЙ памяти с конкретного адреса и конкретного размера, причём так, чтобы ни одно приложение (и система) более не имело доступа к этой области. Пример (может и неудачный, но смысл такой): выделил я себе 384 из 512Mb оперативки - комп тормозит так же, будто у него вовсе 128.
Каким образом это можно реализовать?


 
Eraser ©   (2005-09-26 00:39) [1]


> Ishmael   (25.09.05 23:30)

Без драйвера ядра тут никак, да и с драйвером конкретные адреса может оказаться получить проблематично.
Драйвер ядра надо писать на MS VC++ и MS DDK, а не на делфи.


 
Ishmael   (2005-09-26 08:42) [2]

По сравнению с WinAPI NativeAPI я вообще не знаю. Что именно в нём использовать?


 
alpet ©   (2005-09-26 10:45) [3]

Тебе нужно прикупить достаточно памяти. Если обращения к выделенному региону памяти (хоть 1Гб) будут достаточно частыми, он не будет выгружаться на диск. В дополнение рекомендую ознакомится с функцией SetProcessWorkingSetSize(Ex). А так требования у тебя поставлены практически несовместимые с системой, такое разве что в DOS можно реализовать, но в этом случае Delphi тебе не помощник.


 
miek ©   (2005-09-26 11:22) [4]

Выдели сколько надо памяти и залочь ее. По идее, все должно лежать в физ.памяти.


 
Ishmael   (2005-09-27 18:45) [5]

Дело не в количестве памяти, а в необходимости ещё выделения и залочивания.
VirtalAlloc - выделяет. Хорошо выделят: GlobalAlloc её не перешибает, но (!!!) два экземпляра одного приложения с VirtualAlloc прекрасно уживаются, только своп растёт. SetProcessWorkingSetSize(Ex) - знаю, без неё на основе VirtalAlloc проги не работают. Дошёл до AllocateUserPhysicalPages, но прототипов в Delphi нет. Кажется, самый простой случай, это VirtualAlloc с флагом MEM_PHYSIC, но его не ни в одном дельфийском хидере, а численное значение не упоминается и в одном доступном мне источнике. :(


 
Игорь Шевченко ©   (2005-09-27 18:47) [6]


> Дошёл до AllocateUserPhysicalPages, но прототипов в Delphi
> нет


http://www.delphi-jedi.org


> Кажется, самый простой случай, это VirtualAlloc с флагом
> MEM_PHYSIC, но его не ни в одном дельфийском хидере, а численное
> значение не упоминается и в одном доступном мне источнике


const MEM_PHYSICAL  = $400000;



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

Текущий архив: 2005.11.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
14-1130834758
Vlad Oshin
2005-11-01 11:45
2005.11.27
Пропали 3 компьютера. И что теперь будет...?


2-1131359924
Compressor
2005-11-07 13:38
2005.11.27
Шифрование.


1-1130954763
s_t_d
2005-11-02 21:06
2005.11.27
Страница QREPORT в Delphi-7


2-1131085026
вп
2005-11-04 09:17
2005.11.27
Mutex


5-1113776827
Бывший студент
2005-04-18 02:27
2005.11.27
Свойство TCollection