Ako tu uz bolo napisane tak kritika je asi fakt nepripustna ze. To ze to nema hlavu a petu este beriem ale tvrdit ze ochrana pametoveho priestoru je strankovanie ? A vobec porovnavat strankovanie sa segmentaciu to trochu ujete. A to uz ani nehovorim ze odbit ring 1 a 2 tym ze sa proste nepouzivaju a hotovo, zvlast v clanku ktory by mal byt aj trochu vyucny je sila. Keby sa ring 1 a 2 pouzivali na x86 tak tu nemusi AMD vymslat voloviny ako NX bit a podobne.Aspon by stalo za napisanie preco je to tak ze sa na x86 pouzvaju majoritne iba dva ringy.Na windows platforme sa to taha od WindowsNT ktore existovali aj pre alphu a ta mala len dva, a ostatne systemy (linux) pravdepodobne z toho isteho dovodu – vecsina riskovskych cpu ma len dva ringy, popripade vedia emulovat aj viacej, ale zaver je ten ze pre portabilny os je vyhodne pouzivat iba 2. Pritom by mohol byt zaujimavy navrh os kde kernel bezi v 0,ovladace v 1, podpisane app v 2 a ostatny bordel v 3 a hned by bolo bezpecnejsie.
Kdyz nastavite jedne strance atribut pro readonly a druhe pro zapis a jako uzivatelsky program zacnete zapisovat prave do te RO, program spadne a jadro zabrani neopravnenemu zasahu do pameti – copak tohle neni ochrana ? Prosim prectete si alespon cely clanek a abyste chapal vsechen text, doporucuji shlednout i ty predchozi. Toto je serial :)
Ano, jeto ochrana, ale velmi primitivní. Například to nezabrání tomu, aby jeden proces přepsal data druhého procesu. Vzhledem k tomu, že hned v další větě píšete „Obě metody ochrany paměti mají své výhody i nevýhody, stránkování je však užitečnější“, můžu snadno tvrdit že nemáte pravdu. Pomocí správně nastavené segmentace totiž můžu dosáhnout naprostého oddělení procesů (tak, že vůbec nemají přístup k jiným datům než svým vlastním), což stránkování neumožňuje. Naopak segmentu můžu nastavit, jestli má být jen pro čtení nebo pro zápis (nebo obojí).
Takže si dovoluji tvrdit, že ve srovnání se segmentací nepřináší stránkování žádnou ochranu paměti.
V praxi je možné, že budu oba mechanismy kombinovat (např. nějaký hradware má šikovně nastavenou paměť, takže registry pro čtení budou zabírat jednu stránku, a RW registry jinou). Pak uživatelský program například dostane velký RW segment, jehož některé části budou jen pro čtení. To ale není právě typický případ ochrany paměti (a je potřeba jej explicitně zmínit).
S tvrzením „Například to nezabrání tomu, aby jeden proces přepsal data druhého procesu.“ bohužel nemohu souhlasit. Každý proces totiž má vlastní soubor stránek a mezi jednotlivými soubory se při každé změně tasku procesu přepíná. To znamená, že každý proces má nastaveny mezi jinými i blok paměti pro zápis (jeho proces) a zbytek např. čtení, jakmile začne zapisovat určitý proces do paměti, která mu nepatří, měl by se proces ukončit. Jedině pokud bychom měli jen jeden soubor stránek pro všechny procesy stejný, pak by to fungovalo tak jak píšete.
skusim to povedat inak, je fajn ze sa niekto pusti do takejto nepochybne zaujimavej temy – OS. Ale neviem preco je v dnesnej dobe take modne pisat o niecom aspon zle ako vobec.Kritika je neprijemna ale to na veci nemeni ze koncept tohto serialu je znacne chaoticky a bud ma autor medzery (co neni myslene ako urazka ale ako fakt) alebo zle vybera to co napise a ako to napise.Proste zacat pisat o OS bez popisu hw architektury na ktorej ma bezat je dost nevhodne.
Nekteri bohuzel nepochopili tento koncept, beru vas nazor, ale neni mi jasne, proc bych mel popisovat strukturu hw, kdyz to uz udelalo spoustu jinych clanku, kdezto podobnych serialu v cestine hodne nenajdete. Myslim, ze daleko poucnejsi je postupne odkryvat jednotlive moznosti dane architektury a kombinovat to s praktickou ukazkou, nez hned ze zacatku vybalit spoustu, vetsine nic nerikajicich pojmu … Pokud se bavime vzdycky jen o konkretni casti, neudelame tim v hlave zmatek. Dulezite je, aby na konci ctenar vedel, ze se to nejak tak dela a mel k tomu bliz. Jak uz jsem psal minule, cilem neni napsat dokonaly OS a urcite nejsou me clanky bezchybne, ale nerekl bych, ze v tom nemam jasno, to by napr. Linus nezaradil kusy meho kodu do hlavni vetve linuxu :) Sice nejsem za kritiku rad, ale prijimam ji a snazim se podle toho i zachovat, bohuzel na nektere pripominky uz je pozde.