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 15:33 | Komunita

    Na YouTube byly zveřejněny videozáznamy přednášek z hackerské konference DEF CON 33, jež proběhla 7. až 10. srpna v Las Vegas.

    Ladislav Hagara | Komentářů: 0
    dnes 05:33 | Nová verze

    Bun (Wikipedie), tj. běhové prostředí (runtime) a toolkit pro JavaScript a TypeScript, alternativa k Node.js a Deno, byl vydán ve verzi 1.3. Představení novinek také na YouTube. Bun je naprogramován v programovacím jazyce Zig.

    Ladislav Hagara | Komentářů: 2
    včera 14:22 | IT novinky

    V Lucemburku byly oznámeny výsledky posledního kola výzev na evropské továrny pro umělou inteligenci neboli AI Factories. Mezi úspěšné žadatele patří i Česká republika, potažmo konsorcium šesti partnerů vedené VŠB – Technickou univerzitou Ostrava. V rámci Czech AI Factory (CZAI), jak se česká AI továrna jmenuje, bude pořízen velmi výkonný superpočítač pro AI výpočty a vznikne balíček služeb poskytovaný odborníky konsorcia. Obojí bude sloužit malým a středním podnikům, průmyslu i institucím veřejného a výzkumného sektoru.

    Ladislav Hagara | Komentářů: 15
    včera 01:22 | Nová verze

    Byla vydána (𝕏) zářijová aktualizace aneb nová verze 1.105 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.105 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    9.10. 15:33 | Komunita

    Ve Firefoxu bude lepší správa profilů (oddělené nastavení domovské stránky, nastavení lišt, instalace rozšíření, uložení hesla, přidání záložky atd.). Nový grafický správce profilů bude postupně zaváděn od 14.října.

    Ladislav Hagara | Komentářů: 0
    9.10. 12:44 | Nová verze

    Canonical vydal (email) Ubuntu 25.10 Questing Quokka. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2026.

    Ladislav Hagara | Komentářů: 0
    9.10. 12:22 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzi 1.5.0.

    Ladislav Hagara | Komentářů: 0
    9.10. 01:22 | Nová verze

    Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 0
    8.10. 15:11 | Bezpečnostní upozornění

    V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).

    Ladislav Hagara | Komentářů: 5
    8.10. 14:00 | IT novinky

    Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.

    Ladislav Hagara | Komentářů: 20
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (46%)
     (16%)
     (17%)
     (22%)
     (15%)
     (17%)
     (15%)
     (15%)
    Celkem 207 hlasů
     Komentářů: 13, poslední 8.10. 07:41
    Rozcestník

    Dotaz: rt-preempt problem

    1.5.2010 11:18 hajoucha | skóre: 22
    rt-preempt problem
    Přečteno: 415×
    Ahojda, mám jednoduchý prográmek (čte z měřáku a vypisuje čas a data ve smyčce), který pouštím na stroji s rt-preempt patchem. Ovšem ať už pustím ten program

    takto:

    #> chrt -r 99 ./program

    nebo takhle:

    #> nice -20 ./program

    nebo normálně:

    #> ./program

    vždy se rozptyl času potřebného k vykonání smyčky pohybuje okolo 9.99+-0.04ms. Tj. jedna smyčka proběhne průměrně o 9.99ms jinak dlouho než nějaká jiná smyčka. Není mi jasné, proč ani chrt ani nice nemá na rozptyl vliv. Jádro je 2.6.31.6-rt19-1-amd64 #1 SMP PREEMPT RT .

    Máte tip, jak otestovat, zdali rt-preemt funguje a pakliže ano, proč nefunguje chrt?

    Odpovědi

    1.5.2010 11:32 hajoucha | skóre: 22
    Rozbalit Rozbalit vše Re: rt-preempt problem
    ještě doplním výsledek cyclitestu (test rt_preempt)
    
     ./cyclictest -t1 -p 80 -n -i 10000 -l 10000
    policy: fifo: loadavg: 0.02 0.17 0.10 1/158 17841          
    
    T: 0 (17147) P:80 I:10000 C:  10000 Min:      6 Act:    8 Avg:    8 Max:      31
    
    
    
    Bluebear avatar 1.5.2010 17:29 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Yo chwapče, to je kurevsky odborná záležitost, s tím budeš možná muset na mailinglist realtime kernelu.

    Osobně bych se trochu obával, že přesnost, kterou požaduješ, je příliš velká a procesor, respektive celý hardware + OS, to prostě nedokáže načasovat lépe.

    Zkusil bych to na normálním (ne-RT) kernelu (s PREEMPT a bez PREEMPT) a podívat se, jaký to bude mít vliv.
    To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
    Bluebear avatar 1.5.2010 17:55 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Ještě mě napadlo: zkusil bych ta data psát nejdřív do bufferu, ne je přímo vypisovat. Možná, že tam překáží přístup na konzoli nebo disk.
    To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
    stativ avatar 1.5.2010 18:54 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Nejsem odborník, ale AFAIK rt jádro neříká nic o tom jaký má být rozptyl, ale mělo by jen zaručit, že každý požadavek bude vyřízen za určitou maximální dobu (nic nebude čekat na vyřízení déle než např. 20 ms).
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    5.5.2010 09:47 hajoucha | skóre: 22
    Rozbalit Rozbalit vše Re: rt-preempt problem
    no, když je jenom _rozptyl_ 10ms, tak těžko rt-jádro zaručí, že nebude požadavek čekat méně než 10ms. A to se mi zdá právě zatraceně málo.
    5.5.2010 09:54 Wentasah | skóre: 6 | Praha
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Ted nevim presne jak funguje round-ribin, ale ja vzdycky pouzivam SCHED_FIFO, takze bych zkusis

    # chrt -f 99 ./program

    Pak si over, jestli tvuj program ma opravu RT prioritu prikazem:

    # ps aH --sort rtprio -o pid,policy,rtprio,state,tname,time,command
    5.5.2010 22:22 frr | skóre: 34
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Čte z měřáku? Jakým protokolem? Není to náhodou ten měřák, který se občas zamyslí než odpoví? Například některé IO moduly s termočlánkovým vstupem (na bázi MCU) provádějí v pravidelných intervalech odměřování CJC...

    Ohledně hostitelského systému: není zatížený ještě nějakým dalším procesem, který si čas od času uloupne timeslice pro sebe? Jasně, ten nice by měl dát měřenému procesu prioritu...

    Obecně souhlasím s poznámkou, že měřený proces možná občas někde čeká na IO.

    Rozptylem myslíte střední čtvercovou chybu? Pokud tomu správně rozumím, tak nikoli. Prostě Vám ta smyčka v některých iteracích trvá záhadně přesně o 10 ms déle (asi těžko proběhne rychleji) - mám pravdu? Nějaká podrobnější statistika (rozdělení četností, histogram) by nebyla? Dokázal byste případně snímat časové značky na několika místech uvnitř smyčky a vyhodnocovat anomálie na této úrovni? Možná byste došel ke konkrétnímu syscallu, který se za určitých okolností zablokuje o něco déle...

    V souvislosti s projektem RTAI jsem svého času četl, že na některých PCčkách je problém s latencí message-signaled interruptů na PCI sběrnicích zatížených větším provozem (disk, VGA). Podobné "dilatace času" způsobuje SMI či některé klasické interrupty. V rámci SMI dělají moderní motherboardy kdeco, některé věci ale s oblibou provádějí třeba i v interruptu časovače. 10 ms je docela hodně, ale člověk nikdy neví... Nemáte v BIOSu zapnutou podporu emulace hardwarové PS2 klávesnice pomocí skutečné USB klávesnice? To byl tradiční troublemaker. Je fakt, že v Linuxu by kontrolu nad USB měl přebrat operační systém... Tady jsou nějaké zdrojáky pro DOS - program, kterým jsem se to svého času snažil testovat... http://www.fccps.cz/download/adv/frr/smi.zip

    O jaký počítač se jedná? (procesor a čipset) S jakou periodou Vám "tiká" linuxový plánovač procesů? (compile-time volba Hz, 100/250/1000, RT jádra mají tuším default 1000).
    [:wq]
    Bluebear avatar 5.5.2010 23:08 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Podobné "dilatace času" způsobuje SMI

    Šmarjá, na tuhle "featuru" jsem skoro zapomněl... :-(

    (Pro ty šťastné, kteří o téhle hrůze nevědí: http://en.wikipedia.org/wiki/System_Management_Mode#Entering_SMM - pozor, je to k zblití)

    Tohle je nutné ověřit; asi bych zkusil něco jako vypisovat místo měření jenom čistý systémový čas, stroj ničím jiným nezatěžovat a sledovat, jak moc čas skáče. Pokud poskakuje moc, tak je zle a daný motherboard se prostě nehodí pro realtime operace. (Respektive, možná by šlo přeflashovat BIOS nějakým otevřeným firmwarem, ale hádám, že to skončí mrtvou deskou.)

    Když to nepůjde jinak, což zbastlit nějaký mezikus s Atmelem, PICem nebo tak (pokud bude stíhat, ale snad by mohl) a do PC-čka posílat už připravená data?
    To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
    6.5.2010 09:14 frr | skóre: 34
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Pro zájemce jsem ten svůj DOSový softík zkompiloval do EXE. Je to specifické pro čipsety "Intel + Winbond", umí to nejvýš ICH8 (pokud máte ICH9 nebo ICH10, dejte vědět). Potřebujete bootovačku DOSu (třeba FreeDOS) a tuším zapnutou podporu XMS (himem.sys nebo jemmex.exe).

    http://www.fccps.cz/download/adv/frr/smi_bin.zip

    "Metoda detekce" spočívá v tom, že softík v DOSu napřed vypne všechny zdroje SMI a IRQ, a pak je po jednom odblokovává, měří čas a hledá anomálie. Konkrétně ten softík spustí nějakou těsnou smyčku na CPU (jenom dekrementace registru a loop), která má pevný počet cyklů (např. 3000), předem odhadnutý/spočítaný tak, aby jedna dávka trvala 1 mikrosekundu. Těsně před a těsně po smyčce se provede navíc instrukce "rdtsc", která čte timestamp counter registr CPU (jeho takt je taky předem obenchmarkovaný). V algoritmu je natvrdo zadrátováno, že pokud je naměřené trvání nebržděné mikrosekundové dávky (dle TSC) minimálně o půlku delší, jedná se o anomálii. Tahle měřící sonda se provede párkrát po sobě, aby měla statistika nějakou významnost. Nakonec program nahlásí min/max/avg. A tohle zkouší postupně pro jednotlivé zdroje SMI a IRQ.

    Pokud je to skutečně SMI, tak jednotlivé zdroje SMI se dají z Linuxu softwarově zakázat a s trochou štěstí to nebude ničemu vadit. Obecně bych hned neskákal z mostu, ten problém si zaslouží pečlivější diagnózu... v Linuxu nedá moc práce přesně změřit čas uplynulý "od do". Nějaká lehká průběžná aritmetika/vyhodnocení v rámci běžícího procesu (včetně floating-point operací, ale bez potenciálně blokujících syscallů) je v klidu. Pokud si výsledky průběžně počítáte a ukládáte do paměti, ale za chodu detekční smyčky neděláte printf() a nejlíp ani malloc(), nemělo by docházet ke zkreslení Vašeho měření.

    Časové značky udávané linuxovým kernelem (například to co vrací funkce GetTimeOfDay) mají přesnost danou nikoli periodou plánovače, ale rozlišením nějakého hardwarového časovače, který si kernel při bootu zvolí jako nejpřesnější a "nejlevnější" (třeba HPET nebo TSC). Dalším limitem je granularita použitého datového typu, např. u gettimeofday() je to tuším 1 us (TSC i HPET mají hardwarově lepší přesnost). Čili časovým značkám se dá věřit.

    Ćemu se nedá 100% věřit jsou časovací/probouzecí funkce jako sleep() a spol., setitimer() nebo timer_create() nebo select(), které při "usnutí" odevzdají procesor plánovači - jejich přesnost se proto odvíjí od periody plánovače procesů a zátěže systému (nebo žerou 100% CPU, protože používají těsnou smyčku).

    Tolik jenom v kostce, nechci tady zabíhat do detailů...
    [:wq]
    Bluebear avatar 6.5.2010 14:52 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
    Rozbalit Rozbalit vše Re: rt-preempt problem
    Skvělá práce - tomu aspoň říkám těžká hackeřina (v dobrém slova smyslu)
    To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
    6.5.2010 16:54 hajoucha | skóre: 22
    Rozbalit Rozbalit vše Re: rt-preempt problem
    pánové děkuji, děkuji. Studuji a pokusuji, výsledky a alespoň některé odpovědi dodám přes víkend.
    michich avatar 7.5.2010 10:41 michich | skóre: 51 | blog: ohrivane_parky
    Rozbalit Rozbalit vše Re: rt-preempt problem
    K detekci SMI lze použít také utilitu hwlatdetect z balíčku rt-tests. Používá se k tomu jaderný modul hwlat.ko, který je součástí preempt-rt patche.

    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.