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:22 | Nová verze

    Knihovna FFmpeg byla vydána ve verzi 8.0 „Huffman“. Přibyla mj. podpora hardwarově akcelerovaného kódování s využitím API Vulcan, viz seznam změn.

    Fluttershy, yay! | Komentářů: 0
    včera 17:44 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Zprávu o stavu kybernetické bezpečnosti ČR za rok 2024 (pdf). V loňském roce NÚKIB evidoval dosud nejvíce kybernetických bezpečnostních incidentů s celkovým počtem 268. Oproti roku 2023 se však jedná pouze o drobný nárůst a závažnost dopadů evidovaných incidentů klesá již třetím rokem v řadě. V minulém roce NÚKIB evidoval pouze jeden velmi významný incident a významných incidentů bylo zaznamenáno 18, což oproti roku 2023 představuje pokles o více než polovinu.

    Ladislav Hagara | Komentářů: 0
    včera 13:55 | Komunita

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované obrázky APNG a WebP.

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

    Na chytré telefony a počítačové tablety v Rusku bude od začátku příštího měsíce povinné předinstalovávat státem podporovanou komunikační aplikaci MAX, která konkuruje aplikaci WhatsApp americké společnosti Meta Platforms. Oznámila to dnes ruská vláda. Ta by podle kritiků mohla aplikaci MAX používat ke sledování uživatelů. Ruská státní média obvinění ze špehování pomocí aplikace MAX popírají. Tvrdí, že MAX má méně oprávnění k přístupu k údajům o uživatelích než konkurenční aplikace WhatsApp a Telegram.

    Ladislav Hagara | Komentářů: 21
    včera 04:22 | IT novinky

    Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu srpnový souhrn novinek. Kvůli nedostatečnému zájmu byla ukončena výroba telefonů PinePhone Pro.

    Ladislav Hagara | Komentářů: 1
    21.8. 22:22 | Nová verze

    Po pěti měsících vývoje byla vydána nová verze 0.15.1 programovacího jazyka Zig (GitHub, Wikipedie). Verze 0.15.0 byla přeskočena. Přispělo 162 vývojářů. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    21.8. 21:55 | Komunita

    Před sedmi lety společnost Valve představila fork projektu Wine s názvem Proton umožňující v Linuxu přímo ze Steamu hrát počítačové hry do té doby běžící pouze ve Windows. Aktuální přehled podporovaných her na stránkách ProtonDB

    Ladislav Hagara | Komentářů: 0
    21.8. 14:55 | IT novinky

    Společnost DuckDuckGo rozšířila svůj AI chat Duck.ai o GPT-5 mini (𝕏). Duck.ai umožňuje anonymní přístup bez vytváření účtů k několika modelům umělé inteligence. Aktuálně k GPT-4o mini, GPT-5 mini, Llama 4 Scout, Claude Haiku 3.5 a Mistral Small 3.

    Ladislav Hagara | Komentářů: 5
    21.8. 12:44 | Bezpečnostní upozornění

    Marek Tóth v příspěvku DOM-based Extension Clickjacking: Data ve správcích hesel v ohrožení na svém blogu popsal novou clickjacking techniku s několika variantami útoků a otestoval ji proti 11 správcům hesel. Výsledkem bylo nalezení několika 0-day zranitelností, které mohly ovlivnit uložená data desítek milionů uživatelů. Jedno kliknutí kdekoliv na webové stránce kontrolované útočníkem umožňovalo ukrást uživatelská data ze

    … více »
    Ladislav Hagara | Komentářů: 1
    20.8. 21:11 | IT novinky

    Na dnešní akci Made by Google 2025 (YouTube) byly představeny telefony Pixel 10 s novým čipem Google Tensor G5 a novými AI funkcemi, hodinky Pixel Watch 4 a sluchátka Pixel Buds 2a.

    Ladislav Hagara | Komentářů: 25
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (76%)
     (10%)
     (4%)
     (4%)
     (6%)
     (0%)
    Celkem 49 hlasů
     Komentářů: 6, poslední 21.8. 13:35
    Rozcestník

    Jaderné noviny – 19. 4. 2012: Strukturované logování v Linuxu

    7. 5. 2012 | Luboš Doležel | Jaderné noviny | 3440×

    Aktuální verze jádra: 3.4-rc3. Citáty týdne: Thomas Gleixner, Linus Torvalds. Alokace neinicializovaných bloků v souborech. Za spolehlivější logování.

    Obsah

    Aktuální verze jádra: 3.4-rc3

    link

    Aktuální verze jádra je 3.4-rc3 vydaná 15. dubna. Krátký přehled změn najdete v příloze, ale nemyslím si, že by tam bylo něco zajímavého. Jde hlavně o aktualizace ovladačů s trochou oprav v architekturách a síťování. Suma sumárum bylo od 3.4-rc2 začleněno 332 sad změn.

    Stabilní aktualizace: verze 3.0.28, 3.2.15 a 3.3.2 vyšly 13. dubna; všechny obsahují dlouhý seznam důležitých oprav.

    Citáty týdne: Thomas Gleixner, Linus Torvalds

    link

    Na druhou stranu jsem byl vystaven zdrojovému kódu jistých ovladačů s utajeným zdrojovým kódem. Kvůli tomu jsem začal věřit že důvodem, proč mnohdy nechtějí zveřejnit zdrojový kód ovladačů, je to, že jeho zveřejnění by u nepřipravených osob mohlo při pohledu vyvolat rakovinu očí a žaludeční vředy.

    Takže tuto změnu zařazuji z důvodu ochrany zdraví.

    -- Thomas Gleixner

    Pokud se vyznáte ve fyzice, tak o vydání (a tagu s ním spojeným) uvažujte jako o „kolapsu vlnové funkce“. Do té doby okolní svět nezná stav vašeho stromu (ale mohou jej odhadovat na základě patchů, které viděli) – a poté je to „hotové“. Nemůžete do toho zasahovat. A co je ještě důležitější, ostatní lidé mohou stav vidět, mohou jej měřit a záviset na něm.

    -- Linus Torvalds

    Jsem naprosto zvrácená osobnost. A jsem také neuvěřitelně inteligentní a fotogenický...

    Připraveni? Z následujícího *oslepnete* – budete oslněni čistou krásou a intelektem skrytým v této věci:

    #define IS_DEFINED(x) (__stringify(CONFIG_##x)[0]=='1')

    Tohle je naprosté umělecké dílo. Očekávám, že se se mnou každou chvíli spojí Guggenheim.

    -- Linus Torvalds

    Alokace neinicializovaných bloků v souborech

    link

    Systémové volání fallocate() lze použít ke zvětšení velikosti souboru, aniž by došlo k zapsání nových bloků. Jde o užitečný způsob, jak jádru dát najevo, že by měl na disku rozmístit bloky za sebou nebo že by se měl ujistit, že je před zahájením operace na disku dostatek místa. Souborové systémy implementující fallocate() upozorňují, že nové bloky nejsou ve skutečnosti zapsány; snaha o čtení těchto neinicializovaných bloků obvykle vrátí samé nuly. Kdyby tomu tak nebylo, bylo by tu riziko prozrazení informací v blocích, které byly nedávno uvolněny z jiných souborů.

    Pro většinu uživatelů funguje fallocate() tak, jak má. Někdy ale daná aplikace provádí spoustu zápisů na náhodných místech v souboru. Zapsání malého kousku dat v neinicializovaném extentu může způsobit, že souborový systém musí inicializovat mnohem větší rozsah bloků, což práci zpomalí. Ale pokud aplikace ví, kam do souboru zapsala, a tudíž nebude z neinicializovaných částí souboru nikdy číst, nemá toto extra úsilí žádný význam.

    Jaké zbrzdění taková inicializace způsobí? Zheng Liu nedávno implementoval nový příznak pro fallocate() (nazvaný FALLOC_FL_NO_HIDE_STALE), který označí nové bloky jako inicializované, i když ve skutečnosti nedošlo k jejich zápisu; tyto bloky budou obsahovat náhodná stará data. Benchmark s náhodnými zápisy trval 76 sekund na běžném jádře a 18 sekund při zapnutí tohoto příznaku. Není nutné dodávat, že jde o značné zvýšení výkonu; z tohoto důvodu Zheng navrhl, aby tento příznak byl začleněn do hlavní řady.

    Tato funkce má zjevné bezpečnostní dopady; Zhengův patch se je snaží napravit přidáním přepínače v sysctl, který by funkci zapínal a standardně by byl vypnutý. Přesto se tento nápad Ricu Wheelerovi nelíbí; řekl na to, že To vypadá, že navrhujeme přidání velké bezpečnostní díry místo toho, abychom se problémům s výkonem postavili čelem. Ted Ts'o byl o něco přístupnější, zejména kdyby přístup k funkčnosti vyžadoval capability jako CAP_SYS_RAWIO. Všichni ale zdá se souhlasí, že by bylo dobré nejprve zjistit, proč je v této situaci výkon tak špatný a jestli se to dá náležitě opravit. Pokud by bylo možné problém s výkonem opravit bez nutnosti změn v aplikacích nebo bez možného prozrazování citlivých dat, bylo by to pro všechny nakonec lepší.

    Za spolehlivější logování

    link

    Zprávy z jádra jsou vytvořeny lidmi, typicky za pomoci jedné z variant funkce printk(). Čím dál častěji jsou přitom tyto zprávy čteny stroji v podobě parserů logů, automatizovaných systémů pro správu a tak dále. Tyto stroje už nějakou dobu mají co dělat, aby lidem napsaným zprávám porozuměly, protože jsou mnohdy chaotické, scházejí v nich podstatné informace a mění se. Proto není překvapivé, že se někdo vytrvale snaží o to, aby zprávy byly více strukturované; o tomto se mluvilo i na nedávném Collaboration Summitu. Zatím ale všechny pokusy o zlepšení selhaly.

    Stejný osud čeká asi i Lennarta Poetteringa a Kaye Sieverse, kteří své nápady představili na Kernel Summitu 2011, šlo zejména o koncept připojování 128bitového unikátního ID ke každé zprávě, což narazilo na opovržení snad od všech lidí. Lennart a Kay to ale nevzdali. Poslední verze jejich práce je k vidění v patchi pro strukturované printk().

    Patch dělá několik nesouvisejících věcí – což na mailing listu vedlo ke stížnostem. První věcí je změna jaderného logu ze streamu na řadu záznamů. Každá zpráva je uložena do bufferu s hlavičkou, která obsahuje délku, sekvenční číslo, facility a prioritu. Ve výsledku, jak Kay tvrdí, to nevede k nárůstu spotřebované paměti, ale spíše k mírnému poklesu.

    Interní formát na bázi záznamů má řadu předností. Pokud jsou zprávy vytvářeny rychleji, než je uživatelský prostor zvládá číst, je nutné přepsat ty nejstarší. Současná jádra jednoduše přepíší proud znaků, což vede až k useknutým zprávám v logu. Nová implementace zahazuje celé zprávy, takže proud není nikdy poškozen, ačkoliv nemusí být kompletní. Sekvenční čísla umožňují zahozené zprávy odhalit. Tento formát také zlepšuje práci s navazujícími řádky, i když to u takových řádků znamená povinné používání „priority“ KERN_CONT.

    Druhou změnou je povolení přidání čísla facility a „slovníku“, který obsahuje dodatečné informace, o které se budou zajímat automatické parsery. Slovník obsahuje páry KLÍČ=hodnota oddělené mezerami; tyto páry budou například obsahovat označení zařízení a subsystému, aby bylo možné jednoznačně odlišit původ zprávy. Jaderný kód, který chce přiřadit číslo facility nebo slovník ke zprávě, může použít novou funkci printk_emit():

    int printk_emit(int facility, int level, const char *dict, 
    		size_t dictlen, const char *fmt, ...);
    

    Z obyčejného printk() se stává volání printk_emit()facility nula a nulovým dict.

    Vytvoření slovníku v podobě řetězce už je na volajícím; není to něco, co by bylo pravděpodobně možné vídat v místech, kde se printk() volá. Jediným plnohodnotným uživatelem printk_emit() v patchi je dev_printk(), které vytváří slovník s položkami SUBSYSTEM a DEVICE. Pokud bude takový patch začleněn, dá se očekávat, že právě takto to bude vypadat i jinde; vytváření slovníků s dodatečnými informacemi se bude asi řešit v print funkcích daného subsystému.

    Na závěr patch mění vzhled zpráv, jak se dostávají do uživatelského prostoru. Po stížnostech od Linuse se formát rozvinul do této podoby:

    7,384,6193747;sr 1:0:0:0: Attached scsi CD-ROM sr0
         SUBSYSTEM=scsi
         DEVICE=+scsi:1:0:0:0
    

    Pole oddělená čárkou na začátku textu jsou priorita (v tomto případě 7), sekvenční číslo (384) a systémový čas od bootu v mikrosekundách. Zbytek řádky představuje zpráva předaná do printk(). Pokud zpráva obsahuje slovník, tak je tento zobrazen na dalších řádkách; dle stylu definovaného v RFC 821 začínají navazující řádky mezerou. Výsledkem je něco, co snad bude dostatečně čitelné pro lidi i stroje.

    Chování zařízení /dev/kmsg se také tak trochu mění. V současných jádrech je toto zařízení použitelné jen pro vkládání zpráv do jaderného streamu. Kayův patch jej mění na zařízení, které podporuje i read() a poll() s podporou vícero současných uživatelů. Pokud jsou zprávy přepsány dříve, než je konkrétní uživatel stihne přečíst, příští volání read() vrátí chybu EPIPE; opakované čtení bude pokračovat od další zachované zprávy. Toto zařízení se tedy stává zdrojem jaderných logových zpráv, se kterým je snadné pracovat a který spolehlivě doručuje zprávy a současně umožňuje, aby uživatel zjistil, že něco schází.

    Vyjma drobných neshod kolem formátu logu byla reakce na patch veskrze pozitivní. Největší výjimkou byl asi Ingo Molnar, jehož návrh, že by se spíš měly použít sledovací body (tracepoints) a perf, se nesetkaly s podporou. Dokonce i Linusovi se to líbí, a to asi díky tomu, že už tam nejsou žádná 128bitová unikátní ID. Ale tak jako tak má robustnější buffer zpráv se sekvenčními čísly jednoznačné výhody; Linus navrhl, že kdyby byla tato část patche vyčleněna, zvážil by zařazení do vydání 3.4. To se asi v této fázi cyklu už nestane, ale nebylo by překvapením, kdyby se něco podařilo dát dohromady pro vývojový cyklus verze 3.5. Pokud k tomu dojde, Linuxu bude stále scházet pravé strukturované logování, ale budu mít něco, co je do struktury a spolehlivosti lepší než současný stav.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    7.5.2012 08:55 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 4. 2012: Strukturované logování v Linuxu

    Z toho Linusova mailu (a celého toho šíleného threadu) se mi spíš líbilo

    If you think that "stable" means "bug free", you are fundamentally confused about software engineering.

    If you think you can go back in time and "undo" things, you are even more fundamentally confused about reality.

    Bedňa avatar 8.5.2012 08:31 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 4. 2012: Strukturované logování v Linuxu
    Ja viem že som neznaboh, ale čo alebo kto je ten Guggenheim?
    KERNEL ULTRAS video channel >>>
    8.5.2012 08:59 chrono
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 4. 2012: Strukturované logování v Linuxu
    Bedňa avatar 8.5.2012 09:09 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 4. 2012: Strukturované logování v Linuxu
    Tak moderné umenie, to dáva zmysel. Dík.
    KERNEL ULTRAS video channel >>>

    Založit nové vláknoNahoru

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