[OSy] fyzicka pamet

..:: Urza ::.. urza at rdx2.cz
Mon Nov 28 00:59:39 CET 2011


Dobrý večer.

Omlouvám se za špatně formulovaný dotaz, budu konkrétnější. Píši správu fyzické paměti v systému, přičemž nejpřímočařejší (ve smyslu nejméně komplikací a práce) metoda by byla vypnout TLB pomocí ELR = 1, namapovat 1:1 fyzické a virtuální adresy v rozsahu 0x00000000 až 0x80000000, osahat první 2GB a zjistit, kolik z té paměti tam skutečně je a tu potom spravovat. V případě, že by paměť byla větší než 2GB, zbytek by byl prostě ignorován a předstíralo by se, že je k dispozici 2GB paměti (pokud by k dispozici skutečně byly; ale ignorovalo by se cokoliv navíc). Při správě paměti bych pak nemusel řešit problémy s TLB. Je to korektní řešení?
Důvod je zcela upřímně ten, že jsem už nějakou dobu seděl nad správou paměti a s použitím TLB jsem chtěl prozkoumat celé 4GB potenciální možné fyzické paměti, nicméně tam mám patrně nějaký bug, kterých byl ladil dalších X desítek hodin, přičemž mi to přijde jako naprosto zbytečná práce, když stejně nikdo nikdy více než 2GB paměti v tom MSIMu nepřidělí.

Děkuji za odpověď,
Urza

> ------------ Původní zpráva ------------
> Od: Martin Decky <decky at d3s.mff.cuni.cz>
> Předmět: Re: [OSy] fyzicka pamet
> Datum: 28.11.2011 00:25:53
> ----------------------------------------
> Hezky vecer,
> 
> > Mám dotaz ohledně fyzické paměti, kterou musí umět náš systém
> > rozpoznat. Existuje na to nějaký horní limit? Respektive můžeme si
> > jej stanovit? Mohu například říci něco jako "náš systém pracuje s
> > fyzickou pamětí o velikosti maximálně 1GB a zbytek ignoruje (i pokud
> > by tam náhodou byla)"?
> 
> Odpoved na tuto otazku lze hledat na mnoha rovinach a nevim presne, na 
> kterou rovinu se zrovna ptate.
> 
> Muzeme se bavit o teoretickem hornim limitu fyzicke pameti, ktery je v 
> 32bitove variante MIPS III ISA pochopitelne 4 GB.
> 
> Muzeme se bavit o praktickych moznostech simulatoru MSIM. Nejsem si 
> jisty, jestli v nem nekdo nekdy skutecne zkusil nakonfigurovat 4 GB 
> fyzicke pameti a zda vse fungovalo spravne. Muze se Vam stat, ze mate 
> pro spousteni MSIMu k dispozici jenom 32bitovy stroj, takze v MSIMu ani 
> nemuzete nakonfigurovat vice nez nejake 2 nebo 3 GB "fyzicke" pameti.
> 
> Muzeme se bavit o komplikacich, ktere plynou pro implementaci kernelu z 
> toho, ze k vice nez 512 MB fyzicke pameti nelze na MIPSu pristupvat pres 
> identicke mapovani v KSEG0/KSEG1, ale musi se nutne pouzit TLB.
> 
> A nebo se muzeme bavit o filozoficke rovine problemu. O tom, co jsou 
> prirozena a co jsou neprirozena omezeni a v jakem kontextu vec posuzovat.
> 
> Kdyz svou volbu horniho limitu jasne zdokumentujete a pripojite i 
> dostatecne podrobnou analyzu, proc jste se k takovemu hornimu limitu 
> rozhodli, budete spravedlive ohodnoceni ve srovnani s ostatnimi 
> skupinami. Skutecne nedovedu napsat nejake strucne pravidlo, protoze 
> zadne takove pravidlo nemame -- nesnazime se Vasi praci hodnotit 
> strojove, ale lidskym mozkem, a verime, ze Vy pri implementaci vyuzivate 
> stejne prostredky.
> 
> Dovedu si predstavit kernel, ktery sice dovede vyuzit cele 4 GB fyzicke 
> pameti, ale dela to tak spatnym zpusobem, ze v celkovem hodnoceni 
> dopadne hure nez elegantne naprogramovany kernel, ktery dovoluje vyuzit 
> celou fyzickou pamet jen pro uzivatelske procesy, ale vlastni kernelovy 
> heap a vsechny datove struktury muze alokovat vyhradne z prvnich 512 MB 
> kvuli identickemu mapovani.
> 
> Just use common sense! :-)
> 
> 
> M.D.
> 
> _______________________________________________
> OSy mailing list
> OSy at d3s.mff.cuni.cz
> https://d3s.mff.cuni.cz/mailman/listinfo/osy
> 
> 
> 
> 




More information about the NSWI004 mailing list