Uvaha, was: Jak zabit nezabitelne?

Jan Kybic kybic na circhp.epfl.ch.epfl.ch
Čtvrtek Září 25 19:06:53 CEST 1997


>> povedlo se mi dostat mkisofs do takoveho stavu, ze ceka na ukonceni
>> nejake diskove operace a odmita se nechat zabit:

>Dokud to nedokonci diskovou operaci, tak se s tim v podstate ni delat
>neda. Jakymsi hintem muze byt ps -auxl ktery rekne _kde_ to spi. A

To se mi taky stava. Napriklad kdyz neco cte z CD nebo floppy a pritom nastane
chyba cteni. Nekdy se mi potom jeste na konzoli vypisuji kazdych par
vterin osklive hlasky o te chybe. Vetsinou to casem vytimeoutuje, ale
trva to dost dlouho. Stava se mi to dost zridka, takze me te az tolik
neotravuje a zatim jsem se s tim nezabyval. 

Horsim pripadem z tohoto soudku je, pokud chci po nejakem programu,
aby si naalokoval prilis mnoho pameti, napr. 100MB. V takovem pripade
zacne vetsinou disk divoce rachtat a pocitac prestane komunikovat,
presneji receno da se s nim mluvit pres seriovy port a programy na
pozadi stale (pomalu) bezi, ale Xy zatuhnou, na obrazovce se nehne ani
pixel a nereaguje na klavesnici, ani na Ctrl-Alt-Del. Jednou jsem to
experimentalne nechal bezet, ale kdyz to ani za pul hodiny neobzivlo,
tak jsem rezignoval a stiskl Reset, on uz si ext2 poradi.

Predpokladam, ze je to cena za pouzivani 'nestabilniho' jadra a beru
to. Presto bych byl rad, kdyby z takovych situaci bylo lepsi
vychodisko. Chtel bych, aby bylo mozne zabit i procesy, ktere zrovna
cekaji (v jadre) na dokonceni nejake I/O operace. To by prece nemelo
byt tak tezke, ne? 

Dale bych chtel, aby mi planovac procesu (scheduler) dovolil vytvorit
prioritni proces, ktery by mel zarucene urcite procento casu
procesoru. Pak bych jako takovy proces spustil treba login  a mel
bych sanci opravit, co se pokazilo, zatimco za soucasne situace trva
prihlaseni na pretizeny pocitac cele minuty, pokud to vubec jde.
To by preci melo byt trivialni, ne? Proste, pokud existuje prioritni
proces, ktery chce procesor a uz ho chvili nemel, tak ho dostane. 

Konecne nechapu, jak je vubec mozne, ze pocitac nereaguje na
Ctrl-Alt-Del. To musi byt chyba v jadre, nebo ne? Jedine snad, ze by
se nejak 'ztracely' interrupty od klavesnice pri praci s diskem?
Nevim.

Zaverem bych ovsem dodal, ze podobne chovani neni jen vysadou
Linuxu. Nedavno se nam napriklad stalo na jednom dost zatizeneme a pro
nas dulezitem stroji s HP-UX, ze jeden program zacal vlivem chyby
nekontrolovane alokovat stale vice pameti. Kdyz dosahl nastaveneho
limitu, OS mu poslal prislusny signal a tim ho zabil. Pak ovsem bylo
nutne ulozit core. No a nez se tech nekolik desitek MB za staleho
swapovani presunulo na disk, pocitac byl temer zcela nepouzitelny,
timeouty vytimeoutovaly, proste prusvich. To jenom tak na okraj, 
ze i ostatni OS maji sve problemy.

Honza







Další informace o konferenci Linux