[OSy] Detekce velikosti a struktury pameti

Petr Tuma petr.tuma at dsrg.mff.cuni.cz
Thu Dec 6 11:19:31 CET 2007


Dobry den,

mimochodem, jen dodatek k tomu, co uz psal pan Decky - i kdybyste 
pocital max 4GB RAM a 4kB bloky, porad je to jen milion bloku, nastavit 
polozku TLB a udelat dvojici zapisu a cteni by nemelo byt zase tolik 
instrukci, takze i v simulatoru bychom meli stale mluvit o casech v 
radech zhruba vterin, to neni tak moc ?

Nehlede na to, ze se jiste da prakticky argumentovat s tim, ze 4kB 
pametove moduly uz dnes asi nikdo neprodava :-) a test rekneme po 32MB 
je hned o nekolik radu kratsi ...

Petr Tuma


Michal Tuláček - iGroup.cz wrote:
> Zdravim konferenci... pred casem zde bylo mnoho mailu na tema "jak
> detekovat rozsah pameti", obsahovaly mnoho ruznych navodu apod..
> 
> Jedinym univerzalnim resenim se nakonec ukazalo si pamet "otukat" a
> zjistit kam realne muzu psat...
> 
> Presto... pro ucely testu, je mozne mit promennou memory_map, napr:
> 
> struct MemMap {
>         void* start;
>         void* end;
> };
> 
> struct MemMap memory_map[] = {
>         {0x00021000, 0x01021000},
>         {0x20000000, 0x21000000},
>         {0x50000000, 0x51000000},
>         {0,0}
>         };
> 
> s tim ze toto odpovida zaznamum v msim.conf:
> 
> add rwm mem_main                0x00021000              16M
> mem_main        generic
> mem_main  fill 0
> 
> add rwm mem_kseg1               0x20000000              16M
> mem_kseg1       generic
> mem_kseg1  fill 0
> 
> add rwm mem_somewhere           0x50000000              16M
> mem_somewhere   generic
> mem_somewhere  fill 0
> 
> 
> ------
> 
> tzn mame kus pameti jak mapovatelnou v KSEG0, tak v KSEG1 tak jinde.
> Problem tkvi v tom, ze otestovani celych 4GB "co tam je kde
> namapovano" pomerne dost trva... A v jednom bloku to nemam prave
> proto, aby bylo mozno s relativne malymi naroky na simulujici pocitac (tady 48MB) otestovat
> chovani napr frame_alloc na celem adresnim prostoru.
> 
> Dejme tomu ze bychom do "finalni verze OS v souladu s
> rozsirenym zadanim 2" pridali realne otukani pameti (proste by to
> projelo cela ta 4GB fyzicke pameti a tu mapu by si to vymyslelo samo),
> ale vzhledem k tomu ze pokud me pamet neklame neni v zadani
> specifikovano "system pozna velikost dostupne pameti", tak bych v teto
> fazi pouzil toto reseni...
> 
> Otazka tedy zni, splnuje zakladni zadani takove reseni, ktere si informace o
> dostupne pameti precte z predem definovane promenne, kterou bude nutno
> rucne zmenit v assignment-2.h v pripade ze by se menily pametove bloky v
> msim.conf?
> 
>         

-- 
Petr Tuma
Distributed Systems Research Group
Department of Software Engineering
Faculty of Mathematics and Physics
Charles University, Czech Republic
   http://dsrg.mff.cuni.cz/~ceres




More information about the NSWI004 mailing list