Uvaha, was: Jak zabit nezabitelne?

Pavel Machek pavel na Elf.mj.gts.cz
Pátek Září 26 12:21:15 CEST 1997


Ahoj!

> >Tezke to je. Nemuzes jen tak skoncit operaci. Ten stav 'D' ma svuj
> >duvod. Kdyby to nebylo potreba, byl by tam stav 'S'.
> 
> Myslim, ze se jedna hlavne o pristup na periferie a zvlast o
> disk. Kazda takova operace preci pracuje jen nad nejakou omezenou
> mnozinou objektu. Priklad: provadim operaci write a v tom dostanu
> signal KILL. Zrusim tedy vsechny prislusne pozadavky na diskovou

Jadro je atomicke vuci sobe. V jadre je nejaky locking. Nemuzes
skoncit operaci kdykoliv se ti zachce, protoze locky by zustaly
zamcene - a to uz system nerozchodi. 

> (fixup) rutina, ktera se vyvola, pokud dojde k vyjimce (chybe), mohla
> by podobne u kazde jine operace, ktera by mohla selhat, rutina,
	                           ~~~~~~~~~~~~~~~~~~~~~
> ktera

Proste problem je s tim, ze nikdo necekal ze to muze sfailovat miste v
kterem to sfailovalo. 'D' po delsi dobu je IMO chyba v kernelu. A
chyby se maji co? Odstranit.
		
> >> To by preci melo byt trivialni, ne? Proste, pokud existuje prioritni
> >> proces, ktery chce procesor a uz ho chvili nemel, tak ho dostane. 
> >Prioritni scheduler by ti vubec nepomoh' protoze vetsinou neni problem
> >strojovy cas ale misto v pameti. Jinymi slovy bys potreboval
> >prioritni scheduler na pamet
> 
> Souhlasim, pamet by se taky nemela pridelovat tak 'demokraticky'. Pokud
> chce nejaky program hodne pameti, O.K. at ji dostane, ale hlavne ve
> swapu a nikoli na ukor ostatnich slusnych (nebo dulezitejsich)
> programu, je to jeho chyba, ze je tak velky. A jestli vycerpa 90%
> sveho prideleneho casu presouvanim dat ze swapu do pameti, taky jeho
> problem. Nektere starsi Unixy umoznovaly zakazat odswapovani
> urciteho

To neni jeho problem, protoze celou dobu jeho behu budes mit tak
pretizenej diskovej subsystem, ze masina bude do znacny miry k nepotrebe.

> procesu na disk. Tak tvrdy bych nebyl, ale bylo by hezke mit moznost
> zadat nejake priority, komu se ma dat pamet, kdyz je ji nedostatek.

No jo. Jenze tohle uz neni linux. Napis si vlastni operacni system
;-). (A btw zakazat program od swapovani jde i dnes, staci mu dat
realtimovou prioritu.)

> Kdyby mel shutdown-script vetsi prioritu, tak by mohl dostat procesor
> (a pamet) hned, na ukor ostatnich. To by ovsem jadro muselo dopredu
> vedet, pozor, ted jdu spustit neco duleziteho. 

Hmm. To by musel mit taky init vetsi prioritu, a taky nektere vybrane
veci ktere init pousti. Jo a musel by sis zabezpecit aby se init nebo
shutdown script nezabeh', protoze to by znicilo cely
system. (Realtimova priorita je vec pekne nebezpecna.)

> No nic, zase jsem se poucil. Az budu mit chvili, tak to zkusim
> prostudovat poradne. Diky za odpovedi.

-- 
I'm really pavel na atrey.karlin.mff.cuni.cz. 	   Pavel
Look at http://atrey.karlin.mff.cuni.cz/~pavel/ ;-).


Další informace o konferenci Linux