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í
×
    dnes 04:00 | Nová verze

    raylib (Wikipedie), tj. multiplatformní open-source knihovna pro vývoj grafických aplikací a her, byla vydána ve verzi 6.0.

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

    Nové verze AI modelů. Společnost OpenAI představila GPT‑5.5. Společnost DeepSeek představila DeepSeek V4.

    Ladislav Hagara | Komentářů: 0
    včera 15:33 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 164 (pdf) a Hello World 29 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Komunita

    Bylo oznámeno, že webový prohlížeč Opera GX zaměřený na hráče počítačových her je už také na Flathubu and Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    23.4. 23:11 | IT novinky

    Akcionáři americké mediální společnosti Warner Bros. Discovery dnes schválili převzetí firmy konkurentem Paramount Skydance za zhruba 110 miliard dolarů (téměř 2,3 bilionu Kč). Firmy se na spojení dohodly v únoru. O část společnosti Warner Bros. Discovery dříve usilovala rovněž streamovací platforma Netflix, se svou nabídkou však neuspěla. Transakci ještě budou schvalovat regulační orgány, a to nejen ve Spojených státech, ale také

    … více »
    Ladislav Hagara | Komentářů: 0
    23.4. 22:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 26.04 LTS Resolute Raccoon. Přehled novinek v poznámkách k vydání. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 11. vydání s dlouhodobou podporou (LTS).

    Ladislav Hagara | Komentářů: 2
    23.4. 11:55 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Gitea (Wikipedie) byla vydána v nové verzi 1.26.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.4. 04:44 | Pozvánky

    Ve středu 29. dubna 2026 se v pražské kanceláři SUSE v Karlíně uskuteční 7. Mobile Linux Hackday, komunitní setkání zaměřené na Linux na mobilních zařízeních, kernelový vývoj i uživatelský prostor. Akce proběhne od 10:00 do večerních hodin. Hackday je určen všem zájemcům o praktickou práci s Linuxem na telefonech. Zaměří se na vývoj aplikací v userspace, například bankovní aplikace, zpracování obrazu z kamery nebo práci s NFC, i na úpravy

    … více »
    lkocman | Komentářů: 1
    22.4. 21:55 | Nová verze

    LilyPond (Wikipedie) , tj. multiplatformní svobodný software určený pro sazbu notových zápisů, byl vydán ve verzi 2.26.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    22.4. 20:33 | Nová verze

    Byla vydána nová verze 11.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 237 vývojářů. Provedeno bylo více než 2 500 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (2%)
     (13%)
     (31%)
     (3%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 1413 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Vycuc systemovych informacii v PHP

    6.1.2014 16:21 tomsk | skóre: 2
    Vycuc systemovych informacii v PHP
    Přečteno: 258×

    Zdravim, programujem si v php administraciu VPS na web, ano existuju uz vytvorene ako ISPconfig ale chcem si vytvorit vlastnu podla svojich predstav a podobne... Tak by som sa vas chcel spytat ci tento kod na zistenie celkovej RAM, volnej a percento zatazenia RAM je napisany korektne, ano kod funguje ale by ma zaujimalo ci by sa to nedalo vypisat elegantnejsie alebo s mensim zatezenim (pri tomto kode je zatazenie nulove lebo to je jednoduchy kod) ale zaujimalo by ma ci je toto spravny sposob ako sa to ma robit :)

     

    PHP kod:

     

    $vycuc = shell_exec('free -m'); //spustim shell

    $data = explode("\n",$vycuc); //kazdy riadok zo shellu si ulozim do array

     

    $celkova_ram = preg_split("/[\s,]+/", $data[1]); //kazdy stlpec z daneho riadku si ulozim do array (tak ziskam presnu informaciu, ktoru potrebujem)

    $volna_ram = preg_split("/[\s,]+/", $data[2]);

    $percento = $volna_ram[2] / ($celkova_ram[1] / 100);

     

    echo $celkova_ram;

    echo $volna_ram;

    echo round($percento);

     

    Dakujem

    Odpovědi

    rADOn avatar 6.1.2014 17:47 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Vycuc systemovych informacii v PHP
    Muzes to vycist primo v /proc/meminfo bez spousteni dalsiho subprocesu. Podrobnejsi statistiky jsou k nalezeni nekde v /sys.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    6.1.2014 18:16 tomsk | skóre: 2
    Rozbalit Rozbalit vše Re: Vycuc systemovych informacii v PHP
    Ahoj dik za feedback, rozmyslam nad tvojou teoriou, nieje spustenie procesu rychlejsie ako otvorit subor, citat z neho a zatvorit ho? :) Lebo vo vseobecnosti praca so subormi patri k najpomalsim
    rADOn avatar 6.1.2014 18:57 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Vycuc systemovych informacii v PHP
    To neni teorie, to je tezka praxe. free nedela nic vic nez ze precte ten stejny soubor a trochu to preformatuje. Prozen to strace a uvidis sam. Vykonem se netrap, /proc a /sys jsou virtualni filesystemy ktery zijou jen v pameti. Jedinej rozdil je ze tam jeste pridas rezii forkovani noveho procesu. Coz je na linuxu relativne lacina operace, ale porad jsou to minimalne dva context switche plus nejaka ta pamet. Ty ten proces navic neotviras primo pres popen() ale v subshellu… ve vysledku jsi neco na co staci tri syscally (open, read, close) opatril cca stonasobnou rezii. Gratuluji.

    Obecne, pokud nepoznas rozdil mezi operaci nad virtualnim filesystemem a realnym diskovym io tak udelas nejlip kdyz se tyhle veci nebudes snazit "optimalizovat" :-)
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    6.1.2014 20:41 tomsk | skóre: 2
    Rozbalit Rozbalit vše Re: Vycuc systemovych informacii v PHP
    ahoj, dik za vysvetlenie cize ked precitam ten subor tak to zozere mensi vypoctovy vykon ako free -m ok a po dalsie ja nic neoptimalizujem :D len si vytvaram jeden system, dik za vysvetlenie :) este mam otazku, takto funguju vsetky procesy? napriklad proces "sar 1 1" zo sysstat tiez sa nacitava z nejakeho subora? a ked ano ako zistim kde dany prikaz ma svoj subor :)
    rADOn avatar 6.1.2014 22:57 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Vycuc systemovych informacii v PHP
    Jestli mas na mysli dolovani rozlicnych informaci z kernelu, tak virtulani filesystemy jsou preferovany zpusob - sysfs, procfs, debugfs... Neco malo se da vydolovat ruznymi ioctl, mozna jsou i divocejsi zpusoby, ale /sys a /proc jsou standart. Kde co najit zjistis nejspis v dokumentaci kernelu, ale budiz varovan ze ta neni zrovna zamerena na phpckare...

    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    Josef Kufner avatar 6.1.2014 19:25 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Vycuc systemovych informacii v PHP
    $ strace free -m 2>&1 | grep '^open(' | wc -l
    32
    
    $ strace free -m 2>&1 | grep 'meminfo'
    open("/proc/meminfo", O_RDONLY)         = 3
    
    Hello world ! Segmentation fault (core dumped)
    6.1.2014 23:09 Sten
    Rozbalit Rozbalit vše Re: Vycuc systemovych informacii v PHP
    Doporučuji si taky přečíst, co všechno to otevírá, třeba zjistíš, že pouze /proc/meminfo je to, odkud čte informace o paměti, zbytek otevírání dělá linker a locale ;-)

    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.