[so] Dimensiune pagina
Octavian Purdila
so@atlantis.cs.pub.ro
Fri, 09 Jan 2004 15:31:39 +0200
On Fri, 9 Jan 2004 04:04:10 -0800 (PST), iana ionel cristian
<iana_ionelcristian@yahoo.com> wrote:
> rezerv cu virtual alloc,
> cand am nevoie de o zona, o eliberez, si mapez la
>
Poti sa faci decommit pentru eliberare si nu release.
> adresa respectiva un fisier. cred ca lucrul acesta
> se incadreaza in enuntul temei.
>
> daca as folosi commit pentru a aloca o pagina, atunci,
> acea pagina ar exista in RAM, nu intr-un fisier,
Alocarea paginilor se face pentru memoria virtuala deci in
spatiul de adresa al procesului, adica da in RAM.
> oricine ar putea scrie/citi la acea adresa fara nici o
Nu daca schimbi protectia paginii.
> problema, nu ar mai fi memorie mapata, ci o zona de
> memorie alocata in mod obisnuit
>
Toata memoria pe care o vad procesele este in cele din urma
memorie mapata.
In cazul nostru maparea paginilor fizice (fisier) in memoria virtuala
(memorie din spatiul de adresa al procesului) nu trebuie sa o faci
neaparat prin maparea unui fisier (bucati din fisier) in memorie,
desi lucrul asta e cel mai simplu.
> chiar daca as mapa apoi fisierul,peste zona angajata,
> rezultatul ar fii ca ocup memorie si in ram si pe
> hard.
>
La orice mapare de fisiere in spatiul de adresa ocupi memorie
atat in RAM cat si pe disc.
> nu vad o alta rezolvare a temei decat folosind
> mapviewoffile, iar pentru a folosi aceasta functie
> adresa tb sa fie pe 64K
>
Eh, se poate. Eu zic sa te mai gandesti un pic, si daca tot nu vezi
nici o solutie mai da un mail pe lista.
tavi