[OSy] fyzicka pamet

Martin Decky decky at d3s.mff.cuni.cz
Mon Nov 28 17:31:32 CET 2011


> Tohle mě skutečně překvapilo a netušil jsem, že toto musí náš systém
> umět.

Kdyz se nad tim zamyslite, tak ono to vubec prekvapive neni. 
Nezapomente, ze na fyzicke adrese 0x1fc00000 je typicky umistena ROM 
pamet. Pokud by Vas kernel podporoval pouze jeden souvisly blok fyzicke 
pameti (RAM), znamenalo by to, ze by byl fakticky omezen na neco kolem 
32 MB pameti.

> Dočetl jsem se to v manuálu, mluvím o ERL flagu status registru v kernel
> mode, konkrétně o tomto:
> When ERL = 1 in the Status register, the user address region becomes a
> 2^31-byte unmapped (that is, mapped directly to physical addresses)
> uncached address space. See the Cache Error exception in Chapter 5 for
> more information.

Aha, ERL != ELR, hledat presmycku me nenapadlo, omlouvam se.

Mate pravdu, ERL flag by se k vytvoreni 2GB identickeho mapovani 
skutecne zneuzit dal. Ale opravdu mi to prijde jako zneuziti. ERL ma 
indikovat exception level, zasadne ovlivnuje chovani instrukce ERET a na 
realnem hardwaru muze ovlivnovat treba zpusob hlaseni chyb transakci na 
sbernici (viz tabulka 16-1 v manualu).

Detekovat pamet pomoci TLB bude fungovat univerzalne na cele 4 GB.

> Nastavením ERL flagu status registru na 1, pokud jsem správně pochopil
> to, co jsem přečetl v tom manuálu.

Ovsem ERL = 1 implicitne nastavi kernel mode, takze to skutecne lze 
pouzit jen tim zpusobem, ktery jste popisoval pro limitovanou detekci 
fyzicke pameti. Ve smyslu reseni obecneho "problemu" s TLB, jak jsme se 
o tom bavili, to lze pouzit tezko.

> PS: Stále mi opakujete (myslím, že už potřetí, počítám-li i můj dotaz z
> minula), abych používal zdravý/selský rozum. Věřte, že jej používám a
> sedím nad tím systémem mnoho hodin.... jen prostě nemám takový vhled do
> problematiky jako máte Vy, takže mě některé věci prostě nenapadnou (viz.
> mapovat fyzickou paměť ve více nesouvislých blocích), případně mi nejsou
> jasné věci, které Vy už dávno víte.... to ale neznamená, že jen tak
> spamuji mailing list otázkami, na které bych si mohl snadno odpovědět,
> kdybych pár minut přemýšlel.... než se na něco zeptám, skutečně to
> dlouze řeším, jen třeba ze špatného/omezeného úhlu pohledu.

To plne akceptuji a chvalim. Nemyslim si, ze spamujete mailing list 
zbytecnymi otazkami -- to bych na ne samozrejme vubec neodpovidal.

Tim apelovanim na zdravy rozum chci rici, ze veci nejsou cernobile a ani 
my se nebudeme snazit Vasi semestralku hodnotit cernobile. Z Vasich 
dotazu mam obcas pocit, jako byste pozadoval strucnou, jednoduchou a 
hlavne definitivni odpoved na svou otazku. Neco ve stylu "udelejte to 
presne takhle a dostanete za to plny pocet bodu". Bohuzel takove 
odpovedi existuji jen velmi zridka.

Pokud budete pouzivat zdravy rozum, je velmi pravdepodobne, ze 
nenaimplementujete neco vyslovene spatne a tudiz nemuzete byt ani 
vyslovene spatne ohodnoceni.


M.D.




More information about the NSWI004 mailing list