[OSy] Problem se stackem v KUSEG
Jiří Tlach
jiri.tlach at centrum.cz
Tue Jan 9 13:44:47 CET 2007
Zdravim,
s problemem ktery tu popisujes uz jsem se setkal v jine 3. semestralce, ktera take pouziva
nas kernel Sirius. Resenim je nekolik malo uprav primo v kodu kernelu Sirius. Takze
mi napis mail, a muzeme to vyresit bud osobne nebo treba pres ICQ.
Pokud i ostatni skupiny pracujici na 3. semestralce pouzivaji kernel Sirius, tak at se
mi taktez ozvou narazi-li na obdobne problemy.
S pozdravem
Jiri Tlach
______________________________________________________________
> Od: mike at section.cz
> Komu: osy at dsrg.mff.cuni.cz
> Datum: 09.01.2007 13:29
> Předmět: [OSy] Problem se stackem v KUSEG
>
>Zdravim,
>
>mam dve vlakna, jedno kerneli a jedno uzivatelske.
>Stack u toho kerneliho (idle) vlakna vytvarim tak jak to mela predchozi
skupina, tzn. pomoci mallocu v KSEG0.
>Stack u toho "uzivatelskeho" (tam kde je nakopirovan kod procesu) se nyni
snazim premistit na nejakou konkretni adresu v KUSEGu pomoci vmalloc. Pamet
pomoci vmallocu se v poradku naalokuje. To moje uzivatelske vlakno sdili
adresovy prostor s tim kernelim (thread_create() ).
>
>Nicmene po spusteni mi to zahlasi "Access to address 0x0 not allowed". Po
trpelivem "debugovani" jsem zjistil, ze to vyhuci v context switchi (hned
pri prvnim prepnuti na to uzivatelske vlakno). To same to hlasi, pokud
zakomentuju registry pro prepnuti do user modu a tim zustanu v kernelu.
>
>Rikal jsem si jestli chyba neni treba v nastaveni entryhi, entrylo, ale
bud tady chyba neni, a nebo to nastavuju nejak spatne.
>
>Pokud vytvarim stack pomoci vmalloc v KSEG0 tak mi to chodi (sice ne v
user space, ale aspon se to spusti).
>
>Pouzivame kernel Sirius(kohlto).
>
>Setkali jste se s tim nekdo?
>Diky
>
>Michal F.
>
>
>_______________________________________________
>OSy mailing list
>OSy at dsrg.mff.cuni.cz
>http://dsrg.mff.cuni.cz/mailman/listinfo/osy
>
More information about the NSWI004
mailing list