Portál AbcLinuxu, 17. července 2025 07:29


Dotaz: Priorita procesu v Linuxe

11.9.2007 19:44 Jan Kovac
Priorita procesu v Linuxe
Přečteno: 605×
Odpovědět | Admin
Podarite mi, prosim, ako nastavim proces, ktory vyuziva CPU cas len vtedy, ked pocitac "nema co robit" ? Ked znizim nice na minimum stale proces zere zopar percent ale ja potrebujem, aby ked ine procesy potrebuju CPU, dany proces vobec nebezal a bezal len ked su volne sys. prostriedky.

Dakujem
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

michich avatar 11.9.2007 20:02 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
Odpovědět | | Sbalit | Link | Blokovat | Admin
Potřeboval bys kernel s podporou plánovací politiky SCHED_IDLE. Linusův to nemá.
11.9.2007 20:30 jarda | skóre: 22 | blog: nadoraz | Chomutov
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
proces by měl žrát hodně (tolik kolik potřebuje) proto, že nic jiného neběží. Celé nice je o tom, že když není nic jiného jde dělat tohle.
Připíjím na krásu našich koní a rychlost našich žen.
michich avatar 11.9.2007 20:53 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
Nechápu tak úplně komentář. Nesouhlasíš s něčím, co jsem napsal?
proces by měl žrát hodně (tolik kolik potřebuje) proto, že nic jiného neběží.
Pokud je proces jediným procesem na runqueue, tak mu scheduler přidělí CPU, ať už má prioritu jakoukoliv, to je samozřejmé. Myslím, že tady spolu souhlasíme.
Celé nice je o tom, že když není nic jiného jde dělat tohle.
Tady tak docela nesouhlasím. Čas od času scheduler přidělí na chvíli CPU i tomu nejvíc niceovanému procesu. Nejen tehdy, když není co jiného dělat.
11.9.2007 21:56 trekker.dk | skóre: 72
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
Tady tak docela nesouhlasím. Čas od času scheduler přidělí na chvíli CPU i tomu nejvíc niceovanému procesu. Nejen tehdy, když není co jiného dělat.
Určitě? Já měl ten dojem, že v některých Jaderných novinách bylo, že jedna z nových věcí v novém plánovači je, že i procesy s velkým nice dostanou alespoň nějaký čas procesoru. Tak nějak jsem z toho pochopil, že současný plánovač tohle nedělá...
Quando omni flunkus moritati
michich avatar 11.9.2007 21:58 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
Dělal to vždycky. Akorát se s příchodem CFS změnily poměry, kolik času konkrétně proces dostane ve srovnání s ostatními. Nyní nice 19 proces dostává ještě méně času než dříve.
rADOn avatar 11.9.2007 22:27 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
I procesy s velkym nice musi mit nejaky cas. Nemusi byt velky ale musi se cas od casu objevit aby task mel prilezitost obstarat aspon zakladni servis.
Predstavte si treba niceovaneho sitoveho tcp demona. Pri zvysene zatezi bude uriznut - prestane stihat a zacne zpracovavat mene dat, coz je ok - tcp stack si zmensi okno a jede se dal (mocalem cernym kolem bilych skal). Kdyz by ale nedostaval vubec zadny cas tak by drive ci pozdeji narazil do timoutu spojeni a protistrana se dozvi ze 'server umrel'. To uz by bylo jednodussi ten proces rovnou zabit a usetrit si zbytecnou praci. Podobna sranda je se zamky apod. (byly casy/planovace kdy pri spravne konstelaci hvezd a procesu jeden proces s velmi nizkou prioritou dokazal vzetim Big Kernel Locku dostat tucnaka na kolena).
AFAIK jeden z duvodu proc je pro deskopy lepsi vetsi frekvence planovace (nebo dynamicky tik :-) je prave aby to nutne minimalni kvantum bylo opravdu minimalni.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
11.9.2007 22:43 jarda | skóre: 22 | blog: nadoraz | Chomutov
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
odpovídal jsem na ten původní dotaz. Proces s nízkou prioritou se "zastaví" když běží ostatní ale to znamená, že dokážou zaměstnat procesor na 100%. pokud zabírají procesoru méně než 100% tak proč by neběžel?
Připíjím na krásu našich koní a rychlost našich žen.
11.9.2007 23:46 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
Taková věc se samozřejmě nebude nastavovat procesu, který udržuje aktivní TCP spojení, ale spíš třeba numerickým výpočtům, John-the-Ripper apod., tedy procesům, které můžete bez problémů úplně uspat, aniž by to komukoli vadilo. Koneckonců, když na noc dávám suspend to disk, všechny procesy neběží několik hodin a také se s tím duševně vyrovnají…
11.9.2007 23:41 dasda
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
Odpovědět | | Sbalit | Link | Blokovat | Admin
Kdyz jsem pred lety pocital seti, tak jsem mel takovou utilitku. Jmenovalo se to YASC a mozna ze se to da jeste vyguglit. Pracovalo to tak, ze se seti uspalo a pokud po neakou dobu se nic nedelo tak to nahodilo seti a pak, kdyz clovek hrabl do strun tak ho to zase zhodilo. Upravoval jsem to z jader 2.4.x na 2.6.x. To o vsem pracovalo se seti, ktere se dalo nahazovat a shazovat dle libovule. Nicmene jak inspiraci to asi pouzit muzes.
Josef Kufner avatar 12.9.2007 13:58 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Priorita procesu v Linuxe
Kdejakému procesu můžeš poslat SIGSTOP a SIGCONT, není třeba je zrovna ukončovat (to by se ani nemuselo vyplatit). Celkem dobře by to šlo pověsit třeba na spořič obrazovky nebo na něco podobného.
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.