Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názor k článku
Programujeme OS: jak na GDT a IDT

BLEK.
BLEK. (neregistrovaný) ---.strcechy.adsl-llu.static.bluetone.cz
17. 8. 2009 22:12

Re: To je hrozný mektání!

celé vlákno

To není dáno kvalitou segmentace, nýbrž blbou implementací stránkování (stačilo by do tabulky stránek přidat dva bity na práva pro ringy 0/1/2/3 a bylo by to bez segmentace).

Pokud chceš jeden kernel ring a dva userspace ringy, dá se to „bez segmentace“ udělat tak, že nastavíš userspacové segmenty pro oba ringy na bázi 0 a limit 3GB, pak si pomocí bitu U/S v tabulce stránek můžeš vybírat, ze kterého userspacového ringu je stránka přístupná (přičemž stránky v rozsahu 3–4GB budou pouze pro kernel). Jenže tím zase přijdeš o fast syscally: SYSCALL a SYSENTER. Když chceš plné 4 ringy, tak pak už s těmi segmenty manipulovat musíš.

Na co přesně jsi ty ringy použil?