• kvp
    #97
    "AWE uses physical nonpaged memory and window views of various portions of this physical memory within a 32-bit virtual address space"

    Ennek az elegansabb megoldasa a posix szabvanyban a memory mapped file. Ekkor a virtualis memoria kezelo donti el, hogy eppen hova teszi az adatokat, de egyszerre igy sem lehet bent az osszes lap, viszont cserebe tobb kisebb ablak is nyitva lehet. Igy mukodott a diablo-k memoriakezelese is. A memory mapped file-okkal az a gond, hogy ha tenyleg az osszes adat kellene egyszerre, akkor a programozonak nagyon maceras folyamatosan kovetni, hogy eppen mi van belapozva es valtogatni. (es meg lassu is) Ez az amiert a legtobb fejleszto ha teheti nem hasznalja a ps3-asok ppe-jeit, ahol az ablak merete max. 128KB lehetne. Amire rendesen megirna a programot cell-re, addigra a konkurencia mar regen kiadta xbox360-ra, wii-re es meg a pc-s es gameboy-os port is elkeszult. A win32 unix szeru lapos cimter strukturaja ezert is jott anno nagyon jol a fejlesztoknek, mivel sokkal egyszerubb modon tudtak mukodo programokat irni. Ezert is erdemes atallni 64 bites rendszerekre (47 bites user modu cimterrel), mivel igy sokkal egyszerubben lehet olyan programokat irni, amik tobb mint 4GB adattal zsonglorkodnek egyszerre. (pl. videovagas, jatekok, ipari 3D-s tervezes, vallalati adatbazisok, stb.)

    A masik alternativa volt meg a 16+32 bites, szegmentaciot hasznalo far pointer-ek hasznalata, amit 32 bites windows alatt mar csak a watcom c tamogatott (meg a kernel sem nagyon), tehat szinte soha nem hasznalta senki sem.

    Az x86-64 alapvetoen jot tett a pc vilagnak, mert megusztuk az architekuravaltast, ami eleg nagy kaoszt hozott volna mindenkinek.