GNU/Linux >> Znalost Linux >  >> Linux

Výukový program pro Linux chrt Command pro začátečníky (5 příkladů)

Procesy tvoří jádro běžícího systému Linux. Když se program převede na proces (což je, když je spuštěn), je nastaveno mnoho atributů. Někdy můžete chtít změnit tyto atributy za běhu. Existuje nástroj příkazového řádku chrt který vám to umožní.

V tomto tutoriálu probereme tento nástroj s několika snadno pochopitelnými příklady. Ale než to uděláme, stojí za zmínku, že všechny příklady v tomto článku byly testovány na počítači Ubuntu 18.04 LTS.

Linuxový příkaz chrt

Jak již bylo zmíněno v úvodní části výše, příkaz chrt vám umožňuje manipulovat s atributy procesu v reálném čase. Následuje jeho syntaxe:

chrt [options] -p [prio] pid

A zde je návod, jak to vysvětluje manuálová stránka nástroje:

       chrt sets or retrieves the real-time scheduling attributes of an exist?
       ing pid, or runs command with the given attributes.  Both  policy  (one
       of  SCHED_OTHER,  SCHED_FIFO, SCHED_RR, SCHED_BATCH, or SCHED_IDLE) and
       priority can be set and retrieved.

       The SCHED_BATCH policy is supported since Linux 2.6.16.  The SCHED_IDLE
       policy is supported since Linux 2.6.23.

       The  SCHED_RESET_ON_FORK  flag  for policies SCHED_RR and SCHED_FIFO is
       supported since Linux 2.6.31.
.

Následuje několik příkladů ve stylu otázek a odpovědí, které by vám měly poskytnout dobrou představu o tom, jak příkaz chrt funguje.

O1. Jak používat příkaz chrt?

Předpokládejme, že máte zájem manipulovat se zásadami plánování nebo prioritou procesu gedit. Takže první věc, kterou musíte udělat, je získat ID procesu pro tento proces, což můžete udělat pomocí příkazu pidof.

pidof gedit

V mém systému například výše uvedený příkaz dal jako výstup pid '6063'. Chcete-li nyní načíst aktuální politiku plánování a prioritu pro proces gedit, použijte chrt následujícím způsobem:

chrt -p 6063

A zde je výstup, který tento příkaz vytvořil v mém systému:

pid 6063's current scheduling policy: SCHED_OTHER
pid 6063's current scheduling priority: 0

Q2. Jak zajistit, aby chrt zobrazoval minimální/maximální platné priority?

To lze provést pomocí volby příkazového řádku -m.

chrt -m

Například v našem systému vytvořil výše uvedený příkaz následující výstup:

SCHED_OTHER min/max priority    : 0/0
SCHED_FIFO min/max priority    : 1/99
SCHED_RR min/max priority    : 1/99
SCHED_BATCH min/max priority    : 0/0
SCHED_IDLE min/max priority    : 0/0

Při nastavování zásad plánování se budete muset řídit těmito hodnotami pro nastavení priority.

O3. Jak nastavit zásadu plánování na SCHED_BATCH?

To lze provést pomocí volby příkazového řádku -b.

Například:

chrt -b -p 0 6063

Pokud nyní znovu zkontrolujete zásady plánování pro gedit pomocí následujícího příkazu:

chrt -p 6063

Měli byste získat výstup podobný následujícímu, což znamená, že vámi provedená změna byla použita:

pid 6063's current scheduling policy: SCHED_BATCH
pid 6063's current scheduling priority: 0

4. Jak nastavit zásady plánování na SCHED_FIFO?

To lze provést pomocí volby -f příkazového řádku.

chrt -f -p 20 6063

Stejně jako v předchozích otázkách a odpovědích můžete křížově ověřit změny pomocí chrt -p příkaz. Vezměte prosím na vědomí, že pro použití volby -f z příkazového řádku můžete vyžadovat oprávnění uživatele root.

O5. Jak nastavit zásady plánování na SCHED_OTHER?

To lze provést pomocí volby -o příkazového řádku.

chrt -o -p 0 6063

Pro ověření použijte příkaz chrt -p.

chrt -p 6063

Následující výstup je v mém případě:

pid 6063's current scheduling policy: SCHED_OTHER
pid 6063's current scheduling priority: 0

Závěr

Souhlasím, příkaz chrt není druh nástroje, který můžete používat každý den. Sakra, možná to ani nebudete potřebovat, dokud se nezačnete věnovat správě systému nebo nepracujete na nějaké práci související s plánováním jádra. Nicméně stojí za to vědět alespoň to, že takový nástroj existuje. Pro více informací o chrt přejděte na jeho manuálovou stránku.


Linux
  1. Linux cd command tutorial pro začátečníky (8 příkladů)

  2. Linux Date Command Tutorial pro začátečníky (8 příkladů)

  3. Linux hostname Command Tutorial pro začátečníky (5 příkladů)

  1. Výuka příkazů Linux pro začátečníky (5 příkladů)

  2. Linux df Command Tutorial pro začátečníky (8 příkladů)

  3. Linux du Command Tutorial pro začátečníky (10 příkladů)

  1. Výukový program Linux echo Command pro začátečníky (5 příkladů)

  2. Linux env Command Tutorial pro začátečníky (5 příkladů)

  3. Návod k příkazu velikosti Linuxu pro začátečníky (6 příkladů)