[OSy] Velkost fyzickej pamate

Martin Decky decky at d3s.mff.cuni.cz
Fri Nov 26 14:17:54 CET 2010


Hezky den,

> chcel by som sa opytat, ci je potrebne zaoberat sa pripadom, kedy by som
> mal vacsiu fyzicku pamat ako je adresovatelna pamat z rozsahu KSEG0.

Potrebne zabyvat se tim urcite je, minimalne v tom smyslu, ze si musite 
byt teto zalezitosti a problemu s tim spojenych vedomi, rozumne tyto 
situace osetrit a zdokumentovat.

Pokud se ptate, zda Vase reseni musi nutne umet efektivne pouzivat vice 
nez 512 MB fyzicke pameti, potom odpoved zni: Ne zcela nutne, ale bylo 
by rozhodne dobre, kdyby ano. Jinymi slovy, za implementaci podporujici 
libovolne procesorem adresovatelne mnozstvi fyzicke pameti muzete dostat 
bonusove body a naopak za prilis umele omezeni mnozstvi vyuzitelne 
fyzicke pameti muzete dostat bodovou penalizaci.

> Ak ano, je to mozne simulovat v MSIMe? Napriklad pri nastaveni velkosti
> pamate, ktora presahuje adresu kde je loader, chybaju potrebne instrukcie

Fyzickou RAM je v takovem pripade potreba nakonfigurovat jako 
nesouvislou (tj. pouzit nekolik rwm bloku, ktere na sebe nebudou nutne 
navazovat) a Vas kernel by mel umet detekovat nesouvisle oblasti fyzicke 
pameti (a pochopitelne se podle potreby vyhybat "nebezpecnym" oblastem, 
kde je ROM, kam jsou namapovana hardwarova zarizeni apod.).

> Je mozne ziskat velkost pamate aj inym sposobom?

Na realnych strojich muzete typicky ziskat mapu fyzicke pameti od 
firmwaru nebo BIOSu -- jak to zjisti firmware je dalsi otazka, bud se 
muze spolehnout na nejake konfiguracni informace od hardwaru nebo si 
musi pamet "osahat" sam podobnym zpusobem jako to dela Kalisto.

V MSIMu bohuzel zadne zarizeni, ktere by poskytovalo informace o 
konfiguraci fyzicke pameti a dalsich zarizenich, neexistuje a firmware 
si pisete sami.


M.D.




More information about the NSWI004 mailing list