default kernel configuration options

Dan Lukes dan at obluda.cz
Tue Aug 31 23:45:41 CEST 2004


Divacky Roman wrote:

>>>napriklad CPU_UPGRADE_HW_CACHE je defaultne on nebo off?
>>
>>	Nemam dojem, ze by existovalo neco jako "optiony, ktere jsou uvedeny i
>>kdyz uvedeny nejsou". Takovy option by, jaksi, nemel smysl, protoze by
>>"platil" at by v konfiguraku byl nebo nebyl - tak k cemu by byl ?
>>
>>	Option, ktery neni uveden, uveden neni ...

> tak tim bych se nebyl tak zcela jist...
> taky zalezi na definici (ted mluvim ciste o i386 jinde nemam zkusenost) cpu..
> nekde napr. I686_CPU implikuje CPU_blabla takze nic neni jednoznacne ;)

	No, to je mozna trochu problem uhlu pohledu. Ja nemohu poprit, ze
nasledek uvedeni nektereho optionu se castecne nemuze (castecne nebo
uplne) prekryvat s nasledky uvedeni jineho optionu.

	Takze abychom to vzali na onom konkretnim pripade (CPU_UPGRADE_HW_CACHE):

	Problem - PC98 systemy nepodporuji "neintelovske" procesory. Konkretne
jde o to, ze v pripade DMA prenosu neni zarucena konzistence L1 cache
procesoru. Je tedy treba, aby (pokud je takovy procesor v takovem
systemu pouzit), v zavislosti na konkretnim pouzitem procesoru, byl [1]
obsah L1 cache zapsan do hlavni pameti pred zapocetim DMA prenosu a/nebo
[2] obsah L1 cache invalidovan po dokonceni prenosu

Po procesorech:                           vyzaduje:

IBM Blue Lightning                     -> [2]
i486 procesor upgrade for i386 machine -> [2]
Cyrix 486DLC                           -> [2]
Cyrix M1SC                             -> [1]
Cyrix CY486DX                          -> [1]
Cyrix CY486DX v i386 systemu           -> [1] i [2]
AMD Enhanced Am486DX2 WB               -> [1]
AMD Am5x86 WB                          -> [1]
jiny IBM procesor                      -> [2]
jiny i486 upgrade v i386 systemu       -> [1]

Na techto systemech jsou tedy v prislusnych chvilich generovany
prislusne softwarove instrukce ( wbinvd resp invd ) zajistujici
konzistenci cache.

	Nektere PC98 systemy mohou byt "nadstandardne" upraveny pro pouziti
non-intel procesoru a tato uprava zajistuje, ze potrebne operace s L1
cache jsou zajisteny/vynuceny externim hardware. V takovem pripade lze
pouzit option CPU_UPGRADE_HW_CACHE, ktery zpusobi, ze (zbytecne)
softwarove instrukce se nepouziji.

	Ja bych rekl, ze nektere systemy zajistuji konzistenci L1 cache "samy
od sebe". Instrukce pro praci s L1 cache se tedy negeneruji z tohoto
duvodu. Otazka "specialne upraveneho hardware" nema v takovem kontextu
smysl a tedy nema jakykoliv smysl uvazovat o tom, zda OS dame vedet, ze
takovy upraveny hardware mame (jako ze nemame, protoze specialni upravy
neni treba). Nenapadlo by me tedy rict, ze  "CPU_UPGRADE_HW_CACHE" je v
nekterych pripadech "defautne on" - rikam, ze v nekterych pripadech
situace, na kterou lze zareagovat pomoci "CPU_UPGRADE_HW_CACHE" vubec
nenastava a ten option tedy nema (v takovem pripade) zadny smysl.

	Neni to ale asi az tak dulezite. Hlavnim smyslem tohoto dopisu bylo
odpovedet na cast puvodni otazky - kdy je "CPU_UPGRADE_HW_CACHE"
defaultne "on" (coz jsem si pretransformoval na otazku - kdy system pri
DMA prenosech pouziva instrukce pro praci s L1 cache).

							Dan



-- 
Dan Lukes,  SISAL, MFF UK  tel: +420 2 21914205, fax: +420 2 21914206
AKA: dan at obluda.cz, dan at freebsd.cz, dan at kolej.mff.cuni.cz, dan at fio.cz



More information about the Users-l mailing list