[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Linux scheduler


reflum,

On Wed, 2011-08-24 at 17:34 +0200, Werner Holtfreter wrote:
> Hallo,
> 
> regelt der Linux scheduler nur die Auslastung der CPU oder auch 
> diejenige anderer Hardware, z.B. der Festplatten?
> 
> Wenn zwei Programme mit unterschiedlichem nice gestartet werden: 
> Kommt dann das Programm mit dem hoeheren nice
>   a) nur zum Zuge, wenn im anderen gerade nichts zu tun ist oder
>   b) kommt es trotzdem, aber seltener/kuerzer an die Reihe?

Es gibt bei Linux mehre scheduler zwichen denen man unschalten kann.
Theoretich sollte ein prozess mit einem hoeheren nice value gegenueber
einem prozess mit einem gerrinngeren entsprechen dem verhaeltnis auch
verhaeltnismaesig rechenzeit bekommen. Anderenfalls wuerden ja prozesse
mit niedrigem nice value die kiste aufhaengen koennen.

Aber die Scheduler haben ja noch mehr parameter anhand denen sie
arbeiten (z.b. den prozess status). Gibt da verscheidenen ansetze das zu
loesen.

Fuer die Hardware gibt es aehnliche dinge. Da hardware meist asyncron
leuft ist das nicht so einfach wie bei der CPU da viele anfragen echt
parallel laufen koennen. Diese teile des kernels melden dann dem
scheduler wann er was anschupsen muss/sollte.

Bsp. ein read() leuft teilweise im user space, teilweise im kernel space
und teilweise in der hardware (z.b. HDD) ab. Aber es koennen druchaus
auch mehre read()s gelichzeitig laufen.

Fuer pracktiche anwendun wuerde ich dir empfehlen mit der manpage zu
'ionice' zu beginnen.

Ich hoffe ich konnte etwas helfen.

-- 
Philipp.
 (Rah of PH2)



-- 
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/