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

Вниз

MMF & Win2k   Найти похожие ветки 

 
Fellomena ©   (2002-08-27 15:29) [0]

MMF - как происходит распределение памяти при работе с MMF в Win2k, а конкретно при
использовании ф-ии CreateFileMapping? Раньше (Win98) общие файлы загружалимь с адреса
0x80000000 по 0xBFFFFFFF, а в Win2k, как я поняла, дела обстоят иначе.


 
MBo ©   (2002-08-27 15:52) [1]

Привет!
Насколько я понимаю, существенно то, что в 2K, в отличие от 98, один объект MMF будет, скорее всего, иметь разные адреса для каждого процесса, обращающегося к нему. Рихтер не указывает (или я не заметил) конкретный диапазон адресов: "закрытый регион адресного пространства, "


 
Fellomena ©   (2002-08-27 16:00) [2]

Привет!
В Win98 тоже разные адреса были, но в пределе от 0x80000000 до 0xBFFFFFFF. Вроде в 2k (imho по Тейксейре или тому же Рихтору) - в 2k вообще нет строго определённого диапазона адресов для MMF.


 
MBo ©   (2002-08-27 16:02) [3]

цитата
И хотя в Windows 98 адреса, получаемые процессами при вызове MapViewOfFile, совпадают, лучше не полагаться на эту особенность — иначе приложение не станет работать в Windows 2000!

Сам в Win2K не могу проверить за их неимением


 
Игорь Шевченко ©   (2002-08-27 16:26) [4]

В Win98 все MMF всех процессов были в одном общем диапазоне адресного пространства для всех процессов, что создавало серьезную брешь в защите.
В NT-системах (а не только в Win2K) эта проблема решена, там MMF каждого процесса находится в адресном пространстве этого процесса. И вообще, в NT-системах MMF - это объект, почти такой же как файл или процесс. Называется section.



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
1-31731
Konsul
2002-09-29 12:26
2002.10.10
Закрытие формы


4-32106
MikeZ
2002-08-27 10:04
2002.10.10
Хук на реестр


1-31829
pvasya
2002-09-28 09:53
2002.10.10
EOleException


1-31901
relaxer
2002-09-30 13:12
2002.10.10
Хелп! Работа с хлп-файлом


1-31738
Abajun
2002-10-01 12:15
2002.10.10
вызов внешней программы