Dobry vecer,<br><br>je mozne, ze teraz tresnem nejaku hlupost, ale vzhladom na to, ze deadline sa blizi a ja to stale neviem pochopit, radsej sa opytam:<br><br>Ako mam nakonfigurovat MSIM, aby sa na nom dalo otestovat to, co definuje 2. zadanie?<br>
<br>Mame byt schopni adresovat 4GB fyzickej pamate. Ak som spravne pochopil MSIM, musel by som za tymto ucelom vytvorit prislusny device - pridat pamat s pozadovanou velkostou. Po dvoch pokusoch ukoncenych hlaskou "not enough memory" mi doslo, ze samozrejme na to, aby MSIM mohol odsimulovat, ze ma k dispozicii 4 GB fyzickej pamate, tak musi byt schopny zapisat a precitat kazdy jeden bajt z tejto pamate - cize ju sam potrebuje naalokovat od realneho OS.<br>
<br>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?<br>
<br>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. 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). Potom by sa zrejme nedalo ocakavat spravne chovanie programu, aj ked v principe by kod nasho kernelu mohol pracovat spravne.<br>
<br>Dufam, ze som moj problem vyjadril zrozumitelne. Nepamatam sa, ze by sa niekde spominalo, aku pamat mame nakonfigurovat a pouzivat v MSIMe (to nevylucuje moznost, ze sa tak stalo ;-)).<br><br>S pozdravom,<br>Robert Sisaj<br>