[OSy] Zadani 2. semestralky

Martin Cetkovský martin at alikuvkoutek.cz
Thu Nov 1 11:26:37 CET 2007


> Argument flags funkci frame_alloc() a vma_alloc() obsahuje tyto
> mozne
> bitove priznaky:
> 
> VF_AT_KUSEG
> VF_AT_KSEG0
> VF_AT_KSEG1
> VF_AT_KSSEG
> VF_AT_KSEG3
> 
> VF_VA_AUTO
> VF_VA_USER
> 
> Jak je videt, jedna se o dve logicky nezavisle skupiny priznaku.
> Jejich
> bitovy rozsah v ramci VF_ADDR_TYPE je tedy dan makry VF_AT_SIZE,
> VF_AT_SHIFT, VF_VA_SIZE a VF_VA_SHIFT. Tato makra lze pouzit pro
> vytvoreni vhodne bitove masky, kterou se z priznakoveho slova vybere
> ta
> skupina priznaku, ktera programatora v dany okamzik zajima.

Dekuji, nicmene mi stale neni jasne, jakym zpusobem se budou ta makra moci pouzit k vytvornei bitove masky. *_TYPE bude predpokladam obsahovat pouzity typ pro ulozeni flags, cili asi unsigned int. *_SIZE predpokladam vrati velikost bitoveho pole (cili pocet ruznych flagu, ktere tim lze nastavit). Nenapada mne ale, co by se dalo rozumne pomoci _SHIFT posunovat. Mam podezreni, ze jsem to pochopil v jinem smyslu, nez to bylo puvodne zamysleno, na coz se mi ale nedari take prijit. Prosim proto o detailnejsi vysvetleni jednotlivych maker pripadne i nasmerovani na spravny pohled.

Dekuji,

Martin Cetkovsky





More information about the NSWI004 mailing list