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 22:22 | Komunita

    Open source webový aplikační framework Django slaví 20. narozeniny.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.

    Ladislav Hagara | Komentářů: 0
    včera 11:33 | IT novinky

    Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.

    Ladislav Hagara | Komentářů: 15
    včera 10:55 | IT novinky

    Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.

    Ladislav Hagara | Komentářů: 16
    13.7. 17:55 | Zajímavý projekt

    Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.

    Ladislav Hagara | Komentářů: 11
    11.7. 16:44 | Komunita

    Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.

    Ladislav Hagara | Komentářů: 3
    11.7. 14:55 | Humor

    McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.

    Ladislav Hagara | Komentářů: 16
    11.7. 00:11 | Nová verze

    Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    10.7. 21:00 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 4
    10.7. 15:22 | Nová verze

    Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.

    Ladislav Hagara | Komentářů: 12
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (26%)
     (7%)
     (3%)
     (1%)
     (1%)
     (4%)
    Celkem 393 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: Jak zjistit aktuální zátěž cpu

    vogo avatar 28.10.2006 12:53 vogo | skóre: 34 | blog: "Skládat papír"
    Jak zjistit aktuální zátěž cpu
    Přečteno: 2646×
    Chtěl bych v jednom skriptu zjišťovat aktuální zátěž CPU, jak na to? Ideální formát by byl v procentech, ale klidně v čemkoli jiném co se dá dále slušně zpracovat. Co spustit aby to na standardní výstup vyplivlo jen tuto informaci?

    díky
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.

    Odpovědi

    28.10.2006 13:20 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Co si představuješ pod pojmem "aktuální zátěž CPU"? Hlavně co od té hodnoty očekáváš?
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    vogo avatar 28.10.2006 13:27 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    očekávám hodnotu která vyjadřuje vytížení CPU, kterou třeba zobrazuje gkrellm, nebo cokoli jiného co monitoruje zátěž, prostě hodnotu v procentech (nebo desetinné číslo, or some think like this) vyjadřující využití od posledního měření (?), User Kernel a Nice dohromady, nebo zvlášť - já už si to klidně sečtu :)

    Myslel jsem že to bude někde v /proc (nebo /sys?) ale nic jsem nenašel - asi neumím hledat.
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    Luboš Doležel (Doli) avatar 28.10.2006 14:29 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Je to v /proc/stat
    vogo avatar 28.10.2006 14:39 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    to je sice hezké, ale jak to z toho dostat? :)
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    28.10.2006 19:26 hanzz | skóre: 19 | blog: hanzz
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Po chvilce hledani jsem nasel tohle.. :) http://www.abclinuxu.cz/forum/show/78392#6
    28.10.2006 19:37 hanzz | skóre: 19 | blog: hanzz
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Nebo to jde vzit primo z topu, ale tam je vysledek trochu zkresleny tim, ze start topu si taky neco vezme...
    top -b -n 1 | awk '/Cpu\(s\)/ {print $2}'
    
    nebo pouzit mpstat...
    28.10.2006 21:34 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Pokud vám jde o procento non-idle stavů, bude možná jednodušší počítat to z /proc/uptime - první číslo je uptime systému v sekundách, druhé čas, po který procesor zahálel.
    28.10.2006 14:12 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    zkus programek iostat z balicky sysstat
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free
    David Watzke avatar 28.10.2006 16:09 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Tenhle démon každejch 5 minut zapíše zátěž CPU do souboru /var/log/cpuload. Mám to pro MRTG. Trochu jsem v tom hrabal, snad je to OK...
    #include <stdio.h>
    #include <stdlib.h>
    #include <signal.h>
    #include <unistd.h>
    
    struct Cpustat
    {
            unsigned long u, n, s, i, w, x, y;
    };
    
    void GetStat(Cpustat* pStat)
    {
            FILE* file = fopen("/proc/stat", "r");
            fscanf(file, "cpu %Lu %Lu %Lu %Lu %Lu %Lu %Lu", &pStat->u, &pStat->n,
    		&pStat->s, &pStat->i, &pStat->w, &pStat->x, &pStat->y);
            fclose(file);
    }
    
    void sigterm(int trm) // co delat pri SIGTERMu
    {
            unlink("/var/run/cpuload.pid");
            unlink("/var/log/cpuload");
            exit(0);
    }
    
    int main(void)
    {
            daemon(0,0); // po startu se urve od shellu
            signal(SIGTERM, sigterm);
    
            Cpustat before, now, diff;
            unsigned long total;
            float scale;
            FILE *mrtg, *pid;
    
            pid = fopen("/var/run/cpuload.pid", "w");
            fputs(pid, getpid()); // zapisem si PID
            fclose(pid);
    
            for (;;) {
                    GetStat(&before);
                    sleep(300); // 5 minut = 300
                    GetStat(&now);
    
                    diff.u = now.u - before.u;
                    diff.n = now.n - before.n;
                    diff.s = now.s - before.s;
                    diff.i = now.i - before.i;
                    diff.w = now.w - before.w;
                    diff.x = now.x - before.x;
                    diff.y = now.y - before.y;
    
                    total = diff.u+diff.n+diff.s+diff.i+diff.w+diff.x+diff.y;
                    scale = 100.0f / (float) total;
    
                    mrtg = fopen("/var/log/cpuload", "w");
                    fprintf(mrtg, "%d\n", (int) 100-diff.i*scale);
                    fclose(mrtg);
            }
    }
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    David Watzke avatar 28.10.2006 16:12 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Jen taková poznámka: zapíše tam průměr za těch 5 minut. Zátěž CPU se nedá jakoby vypsat hned, musí to být za určitou dobu...
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    David Watzke avatar 28.10.2006 18:57 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Sorry, tak tohle zrovna nejde zkompilovat. Nicméně pokud se v tom vyznáš, dá se z toho pochopit, jak se to dá spočítat...
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    vogo avatar 29.10.2006 02:00 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    tak přesně něco takového jsem měl na mysli :) super
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    Dalibor Smolík avatar 28.10.2006 19:01 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    příkazem uptime
    Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
    1.8.2008 16:43 bob@income.cz
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Používám uptime, beru z něj zátěž každou minutu a ukládám ji do souboru pomocí php skriptu.

    Postup:

    1. Stáhnout php-cli (php pro příkazovou řádku), v debianu 'apt-get install php5-cli'

    2. Uložit níže uvedený skript do nového souboru cpuload, např. pomocí 'cat > /home/bob/cpuload'

    3. 'chmod +x /home/bob/cpuload'

    4. 'crontab -e', měl výsledně by vypadat takto:
    # m h  dom mon dow   command
    * * * * * /home/bob/cpuload
    No a pak už jen koukat jak přibývají řádky, třeba 'tail -fn50 /home/bob/zatez.txt'

    *********************************************
    #!/usr/bin/php
    <\?
    
    function dtu()
    {
      $temp=explode(' ', microtime());
      return date('d.m.Y G:i:s.', $temp[1]).substr($temp[0],2,6)." ";
    }
    
    function radek($n=1)
    {
      while ($n--) echo "\n";
    }
    
    
    //********************************************************************************************************//
    //********************************************************************************************************//
    //*************************** MAIN ***********************************************************************//
    //********************************************************************************************************//
    //********************************************************************************************************//
    
    radek();
    echo "prg='", $argv[0], "'\n";
    echo "dir='", getcwd(), "'\n";
    echo "arg='", $argv[1], "'\n";
    for ($i=2; $i<10; $i++) if (strlen($argv[$i])) echo "arg".$i."='", $argv[$i], "'\n"; else break;
    radek();
    
    $out=dtu();
    $eregstr_load='load average: 0.([0-9]{2})';
    $aa=exec("uptime");
    if (!ereg($eregstr_load, $aa, $pom)) $out.="Nevidim zatez, nekde je chybka :))\n";
    else $out.=sprintf("%2d%%\n", $pom[1]);
    echo $out;
    file_put_contents("/home/bob/zatezcpu.txt", $out, FILE_APPEND);
    
    \?>
    Fakt nevim jak sem dostat otazník bez \?, takže musíte ty backslashe na těch dvou místech vymazat. Jinak je to ok. Nemám rád html :))

    Enjoy!

    Založit nové vláknoNahoru

    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.