Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.
Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.
Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Proces vlastně není nic jiného, než program, který je spuštěn a běží. Synonymem pro proces může být slovo úloha (task). Linux je od počátku víceúlohový systém, takže v něm může současně1 běžet více procesů. Stejně jako soubory, tak i procesy jsou vlastněny určitým uživatelem, podléhají přístupovým právům.
Na uživatelské úrovni jsou soubory identifikovány svým jménem (které odpovídá jménu spustitelného souboru), ale systém je jednoznačně identifikuje číslem. Jak je vidět na části příkazu top.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 13743 root 15 0 98.4m 21m 1660 S 12.3 8.5 1:52.07 X 14057 misak 15 0 61884 45m 19m S 4.3 9.0 0:59.27 konqueror 14047 misak 15 0 80420 36m 22m S 2.3 7.5 1:14.01 amarokappPrvním procesem, který je spuštěn a má pořadové číslo 1 je
init. Všechny další procesy jsou jeho potomky a jeho zabití vede k ukončení celého systému. Další proces má přiřazeno číslo 2, 3, ..., až po jisté číslo n. Jeho hodnota bývá nejčastěji 32768. Skutečná hodnota na vašem systému je uložena v souboru /proc/sys/kernel/pid_max. Pokud systém dosáhne maxima, začne přidělovat volná čísla zase od začátku.
Jeden příkaz jsem už uvedl a to je příkaz top. Je to interaktivní program a slouží k výpisu procesů, který je seřazen podle určitého klíče. Nejčastěji se řadí podle spotřebovaného procesorového času, ale je možné klíč změnit a řadit třeba podle zabrané paměti. Ještě pokročilejší je program htop který dokáže procesům posílat signály a podporuje barevné terminály.
Klasičtějším způsobem zobrazení procesů je program ps. Tento program je zvláštní tím, že má SystemV a BSD verzi s jinými parametry příkazové řádky. GNU verze tohoto příkazu, která se používá na Linuxu naštěstí zvládá oba dva způsoby. BSD syntaxe je zajímavá faktem, že se v ní parametry neoznačují pomlčkou, jak je tomu prakticky u všech ostatních programů. Protože bylo FreeBSD mým prvním unixem, používám pouze BSD syntaxi.
Příkaz ps bez parametrů pouze vypíše procesy spojené s jedním konkrétním terminálem.
$ ps PID TTY TIME CMD 30482 pts/6 00:00:00 bash 583 pts/6 00:00:00 psVolba
x zajistí vypsání všech vašich procesů
$ ps x PID TTY STAT TIME COMMAND 13955 ? Ss 0:00 /bin/sh /usr/kde/3.5/bin/startkde 13982 ? Ss 0:00 gpg-agent --daemon ... 32128 ? Ss 0:01 gvim semestralka.tex 553 ? S 0:00 ispell -a -S -m -C -d czech 590 pts/2 R+ 0:00 ps xPokud vás zajímají procesy, které mají spuštěné i ostatní, použijete volbu
a, ale takto byste získali pouze procesy připojené k danému terminálu. Proto musíme přidat i volbu x, která zajistí výpis procesů všech uživatelů na všech terminálech (na něm vidíte, že init má skutečně číslo 1).
$ ps ax
PID TTY STAT TIME COMMAND
1 ? S 0:00 init [3]
2 ? SN 0:00 [ksoftirqd/0]
...
32128 ? Ss 0:01 gvim semestralka.tex
32525 ? S 0:03 konsole
32526 pts/7 Ss 0:00 /bin/bash
623 ? S 0:00 ispell -a -S -m -C -d czech
649 pts/6 R+ 0:00 ps ax
Tento výpis není příliš dobrý, protože nezjistíte, kterému uživateli patří který proces. Parametr u zajistí podrobnější výpis.
$ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 1476 396 ? S Jan05 0:00 init [3] root 2 0.0 0.0 0 0 ? SN Jan05 0:00 [ksoftirqd/0] ... misak 32128 0.0 3.3 19084 8520 ? Ss 18:34 0:01 gvim semestralka.tex misak 32525 0.1 6.5 30460 16796 ? S 18:57 0:03 konsole misak 32526 0.0 0.6 3544 1776 pts/7 Ss+ 18:57 0:00 /bin/bash misak 623 0.1 4.1 12088 10736 ? S 19:16 0:01 ispell -a -S -m -C -d czech misak 726 0.0 0.3 2896 964 pts/6 R+ 19:28 0:00 ps aux
A na závěr si ukážeme jak procesy zabíjet. Dejme tomu, že chceme ukončit program gvim s otevřeným souborem semestralka.tex. Pokud si necháme vypsat všechny procesy pomocí ps aux, jen těžko budeme hledat náš program. Proto můžeme využít rouru (pipe), skrz kterou pošleme výpis programu ps do programu grep jež výsledek vypíše na stdout (obrazovku).
$ ps aux |grep gvim misak 32128 0.0 3.3 19084 8520 ? Ss 18:34 0:01 gvim semestralka.texA následně můžeme procesu poslat zprávu o ukončení. Jako identifikaci použijeme PID procesu:
$ kill 32128Pokud chceme ukončit proces dle jména (vhodné při mnoha procesech jednoho programu) , lze využít program
killall:
$ killall gvimPokud náš program nelze ukončit žádným z obyčejných způsobů a dokonce neodpovídá ani na příkaz
kill (je zřejmě zacyklený a k vykonání příkazu se nedostane) je možné využít jiné typy signálů vysílaných procesu programem kill. Standardně je zasílán signál 15 neboli TERM, který vyvolává exit. Můžete zkusit využít signálu 9, KILL, který má větší šanci, že nebude blokován.
$ kill -9 32128
Priorita procesu se nastavuje příkazem nice, který v překladu znamená "ohleduplnost". Hodnota ohleduplnosti je číselné doporučení pro jádro, jak by měl být proces obsloužen ve vztahu k ostatním procesům. Rozsah hodnot pro příkaz nice je -20 až +19. Vysoká hodnota znamená nízkou prioritu (budete ohleduplní vůči ostatním uživatelům) a nízká nebo záporná hodnota znamená vysokou prioritu (nebudete ohleduplní).
Nově vzniklý proces dědí hodnotu ohleduplnosti po rodičích. Uživatel může pouze zvyšovat hodnotu ohleduplnosti svého procesu, ale nesmí jí už poté snižovat. Superuživatel root má neomezenou moc v ovládání ohleduplnosti procesů.
Hodnotu ohleduplnosti může uživatel nastavit již při vzniku procesu a při běhu procesů jí může měnit příkazem renice. Příkaz nice přijímá jako argument příkazový řádek a příkaz renice očekává jako argument PID procesu nebo jméno uživatele. Příkazu renice se zadává hodnota ohleduplnosti v absolutním tvaru, u příkazu nice se ohleduplnost jako inkrement, který se odečte nebo přičte od aktuální hodnoty ohleduplnosti.
$nice -n 8 /bin/velmi_narocna_uloha #zvýší ohleduplnost o 8 $renice 3 7623 #nastaví ohleduplnost na 3 $sudo renice -2 -u jirka #nastaví ohleduplnost procesů patřící Jirkovi na -2
1Na jednoprocesorovém stroji může v jeden čas běžet pouze jediný proces, ale díky jejich rychlému přepínání navenek nic nepoznáme.
Dokument vytvořil: vladka, 29.8.2005 11:43 | Poslední úprava: |🇵🇸, 12.2.2011 17:18 | Další přispěvatelé: Ash, Vít Ožana | Historie změn | Zobrazeno: 27243×
Tiskni
Sdílej: