ULE a ZFS na freebsd 7.0
Radim Kolar
kolar.radim at gmail.com
Wed Jan 9 14:32:54 CET 2008
> coze? co to znamena ze "nedela cs mezi userspace/kernel" ? to snad nedela
> zadny (unixovy) OS, ne?
>
> thread XYZ bezi v userspace, zavola "getpid" (napriklad) a vleze do jadra,
no jak presene vleze do jadra? naboucha argumenty na zasobnik a udelat
int 80? aby se prepnul do kernelu, tak musi minimalne zmenit mapovani
pameti a flush ty mapovaci cache procesoru.
mainframe os maji oproti unixum jednourovnovou pamet tam procesu staci
udelat far jump a je v kernelu. Je to bezpecne, protoze tam nemuzes
primo spoustet strojak, ale jen TIMI kod (kompilator to ma v
kernelu), primej strojak tak jede pouze pod hypervisorem. Zajimave je
test GCC->TIMI vs GCC->primej strojak. Testovano pri pure-userlevel
zatezi (specint test), timi kod je o malinko rychlejsi nez gcc. Jak
koukam do dokumentace tak timi -> strojak kompilator ma 4.5M radku,
zadnej drobecek.
More information about the Users-l
mailing list