abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 14:44 | IT novinky

    Námořní drony používané elitními jednotkami britského královského námořnictva tajně posílaly údaje do Číny. Stroje vybavené čínskými komponenty měly být využívány pro vojenské operace na Blízkém východě. Kamery na dálkově řízených průzkumných člunech K3 Scout byly vybavené součástkami, které bez vědomí britského námořnictva odesílaly informace do spojeného zařízení v Číně. Britské námořní síly využívaly flotilu námořních dronů

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 13:33 | IT novinky

    Alza.cz nabízí herní AlzaPC s předinstalovaným Linuxem (YouTube), konkrétně s linuxovou distribucí Bazzite (Wikipedie).

    Ladislav Hagara | Komentářů: 4
    včera 04:55 | Nová verze

    Squeak (Wikipedie), open source implementace programovacího jazyka a prostředí Smalltalk, byl vydán ve verzi 6.1. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Bezpečnostní upozornění

    V Linuxu v KVM byla nalezena a v upstreamu již byla opravena kritická zranitelnost Zapscape aneb CVE-2026-64561. Root na hostovaném počítači (virtuální stroj) může obejít izolaci a získat plnou kontrolu nad hostitelským systémem (DoS útok nebo vzdálené spuštění kódu s právy roota). Na obou hlavních architekturách – Intel i AMD. Zranitelnost v Linuxu existovala 6 let (od července 2020 do července 2026).

    Ladislav Hagara | Komentářů: 0
    10.8. 19:00 | IT novinky

    Počítačová hra Knytt napsaná v Multimedia Fusion 2 byla vydána před 20 lety. Při této příležitosti byl dnes představen moderní port (YouTube) této plošinovky na současné operační systémy pod názvem Knytt Classic. Je zdarma k dispozici na Steamu a GOG.com.

    Ladislav Hagara | Komentářů: 0
    10.8. 16:00 | IT novinky

    Americká technologická společnost Meta Platforms představila nový model umělé inteligence (AI) Muse Glimmer. Model je menší než přední modely AI od konkurence a má běžet přímo na počítačích uživatelů. Meta model zpřístupní jako open source, tedy otevřený software. Nový model je navržen tak, aby zvládal takzvané agentní úkoly na počítačích se spotřebitelskou grafickou kartou. Klade si tak za cíl uspokojit poptávku po systémech AI, které běží přímo na zařízeních uživatelů.

    Ladislav Hagara | Komentářů: 8
    10.8. 12:11 | Pozvánky

    V pátek 28. srpna 2026 se v pražském Karlíně uskuteční již osmý Mobilní Hackday. Akce začne v 10:00 a potrvá až do večera. Setkání proběhne v prostorách SUSE Linux, s.r.o. na adrese Křižíkova 148/34, Praha 8 – Karlín. Nejbližší zastávkou je Křižíkova, kam se lze dostat tramvají i metrem. Na programu budou například novinky z posledních měsíců, možnosti, jak si zjednodušit práci s LLM/AI, a také nová linuxová distribuce BengalOS, včetně … více »

    David Heidelberg | Komentářů: 0
    9.8. 17:22 | Nová verze

    Jakub Vrána vydal Adminer ve verzi 6.0.0 s více než 130 změnami: "Většina změn vznikla s asistencí Claude Opus 5. Někteří lidi se bojí, že AI asistence může kód zamořit technickým dluhem. To je jistě pravda, pokud vývojář všechny změny bezduše odbouchne Enterem. Ale pokud si pořádně projde plán, vyjedná v něm změny a pak totéž udělá i s vygenerovaným kódem, kvalita kódu stoupne a technický dluh naopak klesne. Je to jako párové programování s

    … více »
    Ladislav Hagara | Komentářů: 2
    9.8. 12:44 | Nová verze

    Sam Aaron vydal novou major verzi 5.0.0 aplikace Sonic Pi (Wikipedie) určené také pro výuku programování pomocí skládání hudby. Přehled novinek na GitHubu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    8.8. 04:44 | IT novinky

    U příležitosti 30. výročí vydání počítačové hry Quake byla vydána nová epizoda s názvem Dawn of the Machine (Steam).

    Ladislav Hagara | Komentářů: 8
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (6%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2369 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Procesy

    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 amarokapp
    
    První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.

    Informace o běžících procesech

    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 ps
    
    Volba 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 x
    
    Pokud 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
    


    Zabíjení

    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.tex
    
    A následně můžeme procesu poslat zprávu o ukončení. Jako identifikaci použijeme PID procesu:
    $ kill 32128
    
    Pokud chceme ukončit proces dle jména (vhodné při mnoha procesech jednoho programu) , lze využít program killall:
    $ killall gvim
    
    Pokud 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

    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: 27721×

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.