Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.11.27;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.11.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.012 c
4-1127817486
Adept
2005-09-27 14:38
2005.11.27
Перехват API Функций


14-1130999889
ANB
2005-11-03 09:38
2005.11.27
Нам в компанию срочно требуется документатор


14-1131222143
Andy BitOff
2005-11-05 23:22
2005.11.27
Скорость света в вакууме перестала быть рекордом


3-1129479821
maVladimir
2005-10-16 20:23
2005.11.27
RowSelection in TCustomDBGrid


2-1131732106
ANSH
2005-11-11 21:01
2005.11.27
программа с элементами webbrowzer-a





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский