Nice: Difference between revisions

From ICO wiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 3: Line 3:


Sügis 2014
Sügis 2014
==Süntaks==
 
<pre>
==Sissejuhatus==
nice [OPTION] [COMMAND [ARG]...] 
 
</pre>
[http://linux.about.com/library/cmd/blcmdl1_nice.htm 1]
==Sissejuhatus==
Nice on Unixi ja Unixi-laadsete operatsioonisüsteemide (nagu nt Linux) programm.
Nice on Unixi ja Unixi-laadsete operatsioonisüsteemide (nagu nt Linux) programm.
Kuigi Linuxi süsteem on võimeline töös hoidma korraga mitmeid protsesse („töid“), tuleb siiski ette teatud piir töösolevatele protsessidele. Tuuma (kernel) ülesanne Linuxis on aktiivsetele protsessidele otsida protsessorist vaba „aega“.
Kuigi Linuxi süsteem on võimeline töös hoidma korraga mitmeid protsesse („töid“), tuleb siiski ette teatud piir töösolevatele protsessidele. Tuuma (kernel) ülesanne Linuxis on aktiivsetele protsessidele otsida protsessorist vaba „aega“.


Vaikimisi on kõik protsessid ühtviisi tähtsad ning neile on eraldatud sama palju protsessori aega. Prioriteetsuse parameeter (nice) ongi mõeldud selleks, et ühtvõi teist protsessi kasutaja poolt kiirendada. Linuxi tuum reserveerib igale protsessile protsessori aega vastavalt määratud prioriteetsuse astmele.
Vaikimisi on kõik protsessid ühtviisi tähtsad ning neile on eraldatud sama palju protsessori aega. Prioriteetsuse parameeter (nice) on mõeldud selleks, et üht või teist protsessi kasutaja poolt kiirendada. Linuxi tuum reserveerib igale protsessile protsessori aega vastavalt määratud prioriteetsuse astmele.
[http://linux.about.com/od/commands/a/Example-Uses-Of-The-Commands-nice-And-renice.htm 2]
[http://linux.about.com/od/commands/a/Example-Uses-Of-The-Commands-nice-And-renice.htm 1]


Igale töötavale Unixi protsessile on määratud prioriteetsuse aste.  
Igale töötavale Unixi protsessile on määratud prioriteetsuse aste.  
Line 22: Line 19:


*Ilma parameetrita antakse vaikeprioriteet 0
*Ilma parameetrita antakse vaikeprioriteet 0
[http://www.thegeekstuff.com/2013/08/nice-renice-command-examples/ 3]
[http://www.thegeekstuff.com/2013/08/nice-renice-command-examples/ 2]
*Olemasoleva protsessi nice väärtuse saab kui kasutada käsku:
 
Tavakasutajad saavad määrata madalamaid prioriteetsuse astmeid (positiivsed nice väärtused). Selleks, et anda kõrgem prioriteetsuse aste, on vaja administraatori õigusi.
 
==Süntaks==
<pre>
nice [OPTION] [COMMAND [ARG]...] 
</pre>
[http://linux.about.com/library/cmd/blcmdl1_nice.htm 3]
 
==Ülesehitus==
 
*Kõigepealt lisa prioriteetsus ADJUST’iga
<pre>
-n, --adjustment=ADJUST
-nN, --adjustment=N lisa arv N (vaikeväärtus on 10)
</pre>
[http://www.computerhope.com/unix/unice.htm 4]
 
*kuva help ja exit
 
<pre>
<pre>
ps -o nice
--help


</pre> [http://pubs.opengroup.org/onlinepubs/9699919799/utilities/nice.html 4]
</pre>
 
*väljutab version informatsiooni ja exit
<pre>
--version
</pre>[http://linux.about.com/library/cmd/blcmdl1_nice.htm 5]


==Käivitamine==
==Käivitamine==
Line 34: Line 55:
*ps –al
*ps –al
*top
*top
<br>Mõlemal juhul on prioriteetsuse aste ära toodud veeru NI all.[http://www.slashroot.in/nice-and-renice-command-usage-examples-process-priority-linux 5]
<br>Mõlemal juhul on prioriteetsuse aste ära toodud veeru NI all.[http://www.slashroot.in/nice-and-renice-command-usage-examples-process-priority-linux 6]


===Prioriteetsuse määramine uuele protsessile===
===Prioriteetsuse määramine uuele protsessile===
Line 49: Line 70:
Mõnikord on vaja anda mõnele kindlale kasutajale madalam protsesside proriteetsuse tase kui teisele, et hoida süsteemi ressursse vajalikemateks (põhi)tegevusteks ja teisteks programmideks.  
Mõnikord on vaja anda mõnele kindlale kasutajale madalam protsesside proriteetsuse tase kui teisele, et hoida süsteemi ressursse vajalikemateks (põhi)tegevusteks ja teisteks programmideks.  


Kindel nice väärtuse saab anda mingile kindlale kasutajele või grupile failis /etc/security/limits.conf file.
Kindel nice väärtuse saab anda mingile kindlale kasutajale või grupile failis /etc/security/limits.conf file.


/etc/security/limits.conf
/etc/security/limits.conf
Line 55: Line 76:
See kasutab süntaksit:
See kasutab süntaksit:


[username] [hard|soft] priority [nice value] [http://www.nixtutor.com/linux/changing-priority-on-linux-processes/ 6]
[username] [hard|soft] priority [nice value] [http://www.nixtutor.com/linux/changing-priority-on-linux-processes/ 7]
 
==Näited==
==Näited==
*Olemasoleva protsessi nice väärtuse saab kui kasutada käsku:
<pre>
ps -o nice
</pre> [http://pubs.opengroup.org/onlinepubs/9699919799/utilities/nice.html 8]
Käivitades nice käskluse algatatakse uus protsess (töö) ja antakse talle prioriteetsuse (nice) aste samal ajal. Juba töötava protsessi prioriteetsuse astet saab muuta käsklusega renice.
Käivitades nice käskluse algatatakse uus protsess (töö) ja antakse talle prioriteetsuse (nice) aste samal ajal. Juba töötava protsessi prioriteetsuse astet saab muuta käsklusega renice.
------------------------------------------------
------------------------------------------------
Line 87: Line 116:
ps –al
ps –al
</pre>
</pre>
[http://linux.about.com/od/commands/a/Example-Uses-Of-The-Commands-nice-And-renice.htm 7]
[http://linux.about.com/od/commands/a/Example-Uses-Of-The-Commands-nice-And-renice.htm 9]
==Ülesehitus==
*Kõigepealt lisa prioriteetsus ADJUST’iga
<pre>
-n, --adjustment=ADJUST
-nN, --adjustment=N lisa arv N (vaikeväärtus on 10)
</pre>
[http://www.computerhope.com/unix/unice.htm 8]  


*kuva help ja exit
<pre>
--help
</pre>
*väljutab version informatsiooni ja exit
<pre>
--version
</pre>[http://linux.about.com/library/cmd/blcmdl1_nice.htm 9]
==Sarnased käsud==
{| class="wikitable"
|-
| '''csh''' || C shelli käsu interpretaator
|-
| '''ksh''' || Korn shelli käsu interpretaator
|-
| '''nohup''' || instrueerib käsku isegi kui sessioon on katkenud või kasutaja logib välja
|-
| '''priocntl''' || Solarise all olevate protsesside parameetrite planeerimine ja kuvamine
|-
| '''sh''' || Bourne’i shelli käsu interpretaator
|}
==Keskkonnamuutujad==
==Keskkonnamuutujad==
Nice käsklust võivad mõjutada järgmised keskkonnamuutujad:
Nice käsklust võivad mõjutada järgmised keskkonnamuutujad:
Line 134: Line 129:


==Kokkuvõte==
==Kokkuvõte==
Nice käsku kasutatakse protsesside prioriteedi seadmisel. Antud programm on mõeldud selleks, et üht või teist protsessi kasutaja poolt kiirendada.
Nice käsku kasutatakse protsessi töö prioriteedi vähendamiseks või suurendamiseks, seega aeglustatakse või kiirendatakse selle töötlusse võtmist.  See tähendab, et protsessid, millega kasutajal on kiirem, saab töösse võtta varem ning need saavad seega ka kiiremini tehtud.  
 
Autori arvates on nice näol tegemist vägagi tarviliku käsuga, et olla ise oma administreerimise aja peremees. Kuna antud käsu vajalikkus ilmneb juhtumil, kui korraga on teoksil mitmed ja mitmed protsessid, kulub  nice marjaks ära eelkõige kõrgema administreerimistasemega isikutele.
 
==Kasutatud materjalid==
==Kasutatud materjalid==
#http://linux.about.com/library/cmd/blcmdl1_nice.htm
#http://linux.about.com/library/cmd/blcmdl1_nice.htm

Latest revision as of 17:15, 14 January 2015

Autor

Reili Kaibald A21

Sügis 2014

Sissejuhatus

Nice on Unixi ja Unixi-laadsete operatsioonisüsteemide (nagu nt Linux) programm. Kuigi Linuxi süsteem on võimeline töös hoidma korraga mitmeid protsesse („töid“), tuleb siiski ette teatud piir töösolevatele protsessidele. Tuuma (kernel) ülesanne Linuxis on aktiivsetele protsessidele otsida protsessorist vaba „aega“.

Vaikimisi on kõik protsessid ühtviisi tähtsad ning neile on eraldatud sama palju protsessori aega. Prioriteetsuse parameeter (nice) on mõeldud selleks, et üht või teist protsessi kasutaja poolt kiirendada. Linuxi tuum reserveerib igale protsessile protsessori aega vastavalt määratud prioriteetsuse astmele. 1

Igale töötavale Unixi protsessile on määratud prioriteetsuse aste. Selleks, et muuta protsessi proriteetsuse astet, kasutataksegi nice ja renice käske.

nice – käsk programmi teatud prioriteediga käivitamiseks st käivitab kasutaja poolt ajastatud protsessi. Renice käsklus muudab käimasoleva protsessi prioriteeti.

  • Vahemik -20 (kõrgeim prioriteetsus, madalaim nice) kuni 19 (madalaim prioriteetsus, kõrgeim nice)
  • Ilma parameetrita antakse vaikeprioriteet 0

2

Tavakasutajad saavad määrata madalamaid prioriteetsuse astmeid (positiivsed nice väärtused). Selleks, et anda kõrgem prioriteetsuse aste, on vaja administraatori õigusi.

Süntaks

nice [OPTION] [COMMAND [ARG]...]  

3

Ülesehitus

  • Kõigepealt lisa prioriteetsus ADJUST’iga
-n, --adjustment=ADJUST
-nN, --adjustment=N	lisa arv N (vaikeväärtus on 10) 

4

  • kuva help ja exit
--help

  • väljutab version informatsiooni ja exit
--version

5

Käivitamine

Töötavate protsesside prioriteetsuse kindlakstegemine

Selleks on kaks erinevat moodust:

  • ps –al
  • top


Mõlemal juhul on prioriteetsuse aste ära toodud veeru NI all.6

Prioriteetsuse määramine uuele protsessile

nice -n [nice value] [command]:

nice -n 10 apt-get upgrade

Prioriteetsuse määramine olemasolevale protsessile

renice [nice value] -p [process id]:

renice 10 -p 21827

Prioriteetsuse määramine ühe kindla kasutaja kõikidele protsessidele

Mõnikord on vaja anda mõnele kindlale kasutajale madalam protsesside proriteetsuse tase kui teisele, et hoida süsteemi ressursse vajalikemateks (põhi)tegevusteks ja teisteks programmideks.

Kindel nice väärtuse saab anda mingile kindlale kasutajale või grupile failis /etc/security/limits.conf file.

/etc/security/limits.conf

See kasutab süntaksit:

[username] [hard|soft] priority [nice value] 7

Näited

  • Olemasoleva protsessi nice väärtuse saab kui kasutada käsku:
ps -o nice

8

Käivitades nice käskluse algatatakse uus protsess (töö) ja antakse talle prioriteetsuse (nice) aste samal ajal. Juba töötava protsessi prioriteetsuse astet saab muuta käsklusega renice.


Järgnev käsk algatab „large-job“ protsessi nice väärtusega kuni 12.

nice -12 large-job

Märka, et miinus märk 12 ees ei tähista miinust. Kui soovida nice väärtust -12, tuleb kirjutada 12 ette lisaks veel üks miinusmärk (--12).

nice --12 large-job

On oluline meelde jätta, et madalam nice väärtus tähistab kõrgemat prioriteetsuse astet. Niisiis -12 omab kõrgemat prioriteetsuse astet kui 12. Tavakasutajad saavad määrata madalamaid prioriteetsuse astmeid (positiivsed nice väärtused). Selleks, et anda kõrgem prioriteetsuse aste, on vaja administraatori õigusi.

Renice käsk on juba töötava töö prioriteetsuse mutmiseks.

renice 17 -p 1134

Antud käsk muudab töötava protsessi, mille id on 1134 töö nice väärtuse 17-ks. Praegusel juhul ei kirjutata miinus-märki nice väärtuse numbri ette. Järgnev käsk muudab protsessi 1134 nice väärtuse -3-ks:

renice -3 -p 1134

Kasutades ps käsklust, on võimalik töötavad protsessid välja printida. Kui lisada täht „l“ (nagu „list“), on võimalik nice väärtust näidata veerus, mille pealkirjaks on „NI“. Näiteks:

ps –al

9

Keskkonnamuutujad

Nice käsklust võivad mõjutada järgmised keskkonnamuutujad:

  • LANG
  • LC_ALL
  • LC_CTYPE
  • LC_MESSAGES
  • NLSPATH
  • PATH

10

Kokkuvõte

Nice käsku kasutatakse protsessi töö prioriteedi vähendamiseks või suurendamiseks, seega aeglustatakse või kiirendatakse selle töötlusse võtmist. See tähendab, et protsessid, millega kasutajal on kiirem, saab töösse võtta varem ning need saavad seega ka kiiremini tehtud.

Autori arvates on nice näol tegemist vägagi tarviliku käsuga, et olla ise oma administreerimise aja peremees. Kuna antud käsu vajalikkus ilmneb juhtumil, kui korraga on teoksil mitmed ja mitmed protsessid, kulub nice marjaks ära eelkõige kõrgema administreerimistasemega isikutele.

Kasutatud materjalid

  1. http://linux.about.com/library/cmd/blcmdl1_nice.htm
  2. http://linux.about.com/od/commands/a/Example-Uses-Of-The-Commands-nice-And-renice.htm
  3. http://www.thegeekstuff.com/2013/08/nice-renice-command-examples/
  4. http://pubs.opengroup.org/onlinepubs/9699919799/utilities/nice.html
  5. http://www.slashroot.in/nice-and-renice-command-usage-examples-process-priority-linux
  6. http://www.nixtutor.com/linux/changing-priority-on-linux-processes/
  7. http://linux.about.com/od/commands/a/Example-Uses-Of-The-Commands-nice-And-renice.htm
  8. http://www.computerhope.com/unix/unice.htm
  9. http://linux.about.com/library/cmd/blcmdl1_nice.htm
  10. http://pubs.opengroup.org/onlinepubs/9699919799/utilities/nice.html