Met behulp van "Nice" en "Renice" opdragte in Linux

Dit gaan alles oor prioriteite.

Linux-stelsels kan baie prosesse (werksgeleenthede) gelyktydig bestuur. Selfs as die SVE meer verwerkers of kernen het, is die aantal prosesse oor die algemeen baie groter as die aantal beskikbare kern. Dit is die taak van die Linux-kern om die beskikbare SVE-siklusse aan die aktiewe prosesse te versprei.

Leuk om prioriteite reg te kry

By verstek word alle prosesse ewe dringend beskou en word dieselfde hoeveelheid CPU-tyd toegeken. Om die gebruiker in staat te stel om die relatiewe belangrikheid van prosesse te verander, verbind Linux 'n prioriteitsparameter met elke werk wat deur die gebruiker gestel of verander kan word. Die Linux-kern behou dan CPU-tyd vir elke proses wat gebaseer is op die relatiewe prioriteitswaarde.

Die lekker parameter word vir hierdie doel gebruik. Dit wissel van minus 20 tot plus 19 en kan net heelgetalle waarneem. 'N Waarde van minus 20 verteenwoordig die hoogste prioriteitsvlak, terwyl 19 die laagste verteenwoordig. Die feit dat die hoogste prioriteitsvlak deur die negatiewe getal aangedui word, is ietwat onverdedigend; Die uitvoering van 'n laer prioriteit word egter as "mooier" beskou, omdat dit ander prosesse toelaat om 'n groter deel van die SVE-tyd te gebruik.

Hoe om te speel

Met behulp van die opdrag begin 'n nuwe proses (werk) goed en gee dit 'n voorkeur (goeie) waarde op dieselfde tyd. Om die prioriteit van 'n proses wat reeds aan die gang is, te verander, gebruik die bevel renice .

Byvoorbeeld, die volgende opdrag lyn begin die proses "groot werk", stel die goeie waarde op tot 12:

mooi -12 groot werk

Let daarop dat die streep voor die 12 nie 'n minusteken verteenwoordig nie. Dit het die gewone funksie van die merk van 'n vlag wat geslaag is as 'n argument vir die lekker opdrag.

Om die goeie waarde tot minus 12 te stel, voeg nog 'n streep by:

mooi - 12 groot werk

Onthou dat laer mooi waardes ooreenstem met hoër prioriteit. Dus, -12 het 'n hoër prioriteit as 12. Die standaard waarde is 0. Gereelde gebruikers kan laer prioriteite stel (positiewe mooi waardes). Om hoër prioriteite (negatiewe mooi waardes) te gebruik, word administrateur voorregte vereis.

U kan die prioriteit van 'n werk verander wat reeds met renice gebruik word:

Renice 17-P 1134

Dit verander die goeie waarde van die werk met proses ID 1134 tot 17. In hierdie geval word geen streep gebruik vir die opdrag opsie wanneer u die goeie waarde spesifiseer nie. Die volgende opdrag verander die goeie waarde van proses 1134 tot -3:

renice -3 -p 1134

Om 'n lys van huidige prosesse uit te druk , gebruik die ps bevel. Die opsie 'l' (soos in 'lys') bevat die goeie waarde onder die kolomkop 'NI'. Byvoorbeeld:

ps -al