Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
2 prop 29.06.01 00:18 Число просмотров: 526
Автор: + <Mikhail> Статус: Elderman
|
> Надо юзать VirtualAlloc или VirtualAllocEx. Они позволяют > задать виртуальный адрес, по которому выделить память.
Ty hot ponimaesh chto takoe virtual pamiat? Pohozhe chto net.Tak vot
Virtual adresa ispolzuemya processom ne predstavliaut realnye addresa fizicheskoi pamiati. Vmesto etogo system podderzhivaet "map page" dlia kazhdogo processa, kotoraia predstavliaet soboi bnutrenuu structuru ispolzuemuu dlia transliacii virtualnyh adressov v phisicheskie addressa.
> Перед вызовом желательно найти свободный кусок памяти > (просканировать, вызывая VirtualQuery или VirtualQueryEx). > Самое главное - это будет блок в виртуальной памяти > процесса - а в вин32 у каждого процесса своя память... Но > под 9х дос-машина мапится во все процессы, в одну и ту же > область виртуальной памяти - "под 1М".
Win95 i Win98: 4 MB partition v v nachale pamiati (low mamory) 0x00000000 -0x00000FFF(kusok iz nachala lienar pamiat) ispolzuetsia dlia MS-DOS i Windows 16bit . Est` takaia shtuka v Win95 Win98 (dalee Win95) VMM (Virtual machine manager) eto 32bit protected -mode OS v iadre Win95, on otvechaet za sozdanie, monitoring , terminations i running virtual machines. Win95 system mozhet zapuskat` mnogo MS-DOS - applications odnovremenno, chto by eto bylo vozmozhno VMM sozdaet VM (virtual Machine) dlia kazdogoi MS-DOS application. Process dostupa k pamiti iz VM's nazyvaetsia mapping v fizicheskuu pamiat`, virtual pamiat` dazhe blizko sdes ne stoit. System razdeliaet lineinyi addres space na chetyre kuska nazyvaemyh "arena", kazdaia iz kotoryh upravlietsia po raznomu, nas interesuet DOS arena. DOS arena reasdelena ha neskolko chastei. V86 global area - ispolzuetstia MS-DOS system code, device drivers i TSR. Stranicy v global area mapped tak chto linear address i fizicheskii addres identichny. V86 private area ispolzuetsia dlia MS-DOS code i data. stranicy mapped v razlichnye fizicheskie addressa dlia kazhdoi VM. Video memory upravlietsia VDD (video display device)
>Поэтому шанс . . .
Tak chto vse zavisit ot togo kak i gde pamiat allocirovana
I ne vse tak prosto kak dyshat`.
|
- 2 prop - + 29.06.01 00:18 [526]
|
|
|