[OSy] msim - 4GB fyzickej pamate?
Petr Tuma
petr.tuma at dsrg.mff.cuni.cz
Wed Dec 10 10:26:20 CET 2008
Dobry den,
> Mame byt schopni adresovat 4GB fyzickej pamate.
Prosim napiste mi, ze ktere casti zadani na toto usuzujete ?
> Dalej som z fungovania funkcie find_block_end () definovanej v
> Kaliste v subore mm/malloc.c pochopil, ze vysledok zapisu/citania z
> pamate, ktora nie je definovana v msim.conf, je tiez nedefinovany.
> Mam si teda pre kazdy segment naalokovat par MB pamate (pre KSEG0,
> KUSEG, ...) a fungovat tak so zmensenu fyzickou pamatou?
Neni mi jasne, na co se vlastne ptate. Proc byste si mel alokovat pro
kazdy segment par MB pameti ? A jake alokovani mate na mysli, v
msim.conf, ve vasem kernelu, ... ?
> Nechce sa mi prechadzat testy a pracne zistovat, ktore stranky/ramce
> a v ktorych segmentoch si testy skusaju naalokovat a podla toho si
> pridat prislusnu fyzicku pamat do msim.conf.
Zda se, ze neco chapete zcela spatne. Testy nezkouseji alokovat
konkretni ramce, to by nedavalo smysl ...
> Nerad by som sa vsak ocitol v situacii, kedy by som mal definovane v
> msim.conf napr. fyzicku pamat segmentu KSEG0 od adresy 0x00000000 po
> 0x00200000 a uzivatel (=test :-)) by si chcel alokovat fyzicku pamat
> na pevnej adrese napr. 0x001D0000 velkosti 100 ramcov (proste mimo
> definovanu fyzicku pamat v mojom MSIMe).
V takovem pripade je prece chovani jasne definovane: pokud zavolate
vma_alloc s flagem VF_VA_USER a pamet neni k dispozici, funkce proste
vrati EINVAL ("vraci ... EINVAL pokud nebylo mozne alokovat oblast se
zacatkem na adrese @from v danem segmentu virtualniho adresoveho
prostoru procesoru").
> Potom by sa zrejme nedalo ocakavat spravne chovanie programu, aj ked
> v principe by kod nasho kernelu mohol pracovat spravne.
Nesnazte se najit takovy vyklad zadani, ktery nedava smysl :-) ...
Pokud vim, ocekava se pouze, ze vas kernel bude pracovat s rozumnym
objemem fyzicke pameti (napriklad blok od fyzicke adresy 0 velikosti
radu megabajtu az treba stovek megabajtu). Z toho pak muzete snadno
pridelovat stranky ve vsech segmentech ...
Petr Tuma
More information about the NSWI004
mailing list