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:00 | Nasazení Linuxu
Stabilní aktualizace Chrome OS 69 (resp. Chromium OS), konkrétně 69.0.3497.95, přináší mj. podporu linuxových aplikací. Implementována je pomocí virtualizace, a proto je tato funkce také omezena na zařízení s dostatkem paměti a podporou hardwarové akcelerace, tudíž nejsou podporovány chromebooky s 32bitovými architekturami ARM, či Intel Bay Trail (tzn. bez Intel VT-x).
Fluttershy, yay! | Komentářů: 0
včera 21:32 | Zajímavý projekt
Došlo k uvolnění linuxové distribuce CLIP OS, vyvíjené francouzským úřadem pro kybernetickou bezpečnost ANSSI, jako open source. Vznikla za účelem nasazení v úřadech, kde je potřeba omezit přístup k důvěrným datům. Je založená na Gentoo.
Fluttershy, yay! | Komentářů: 0
včera 16:00 | Komerce

Zjistěte více o bezpečné a flexibilní architektuře v cloudu! IBM Cloud poskytuje bezpečné úložiště pro Vaše obchodní data s možností škálovatelnosti a flexibilitou ukládání dat. Zároveň nabízí prostředky pro jejich analýzu, vizualizaci, reporting a podporu rozhodování.

… více »
Fluttershy, yay! | Komentářů: 12
včera 12:22 | Nová verze

V dubnu letošního roku Mozilla představila webový prohlížeč pro rozšířenou a virtuální realitu Firefox Reality (GitHub). V úterý oznámila vydání verze 1.0. Ukázka na YouTube. Firefox Reality je k dispozici pro Viveport, Oculus a Daydream.

Ladislav Hagara | Komentářů: 2
včera 12:00 | Komunita

V srpnu loňského roku společnost Oracle oznámila, že Java EE (Enterprise Edition) bude uvolněna jako open source. O měsíc později bylo rozhodnuto, že tato open source Java EE bude přejmenována a předána Eclipse Foundation. Nové jméno bylo oznámeno v únoru letošního roku. Z Java EE se stala Jakarta EE. Eclipse Foundation včera oznámila dosažení dalšího milníku. Zdrojové kódy aplikačního serveru GlassFish jsou již k dispozici v git repozitářích Eclipse Foundation (GitHub).

Ladislav Hagara | Komentářů: 0
19.9. 23:55 | Komunita

LTS (Long Term Support) podpora Ubuntu 12.04 LTS (Precise Pangolin) skončila po 5 letech od jeho vydání, tj. v dubnu 2017. V březnu 2017 ale Canonical představil placenou ESM (Extended Security Maintenance) podporu, díky které je Ubuntu 12.04 podporováno do dubna 2020. Dnes Canonical potvrdil ESM podporu také pro Ubuntu 14.04 LTS (Trusty Tahr), jehož LTS podpora skončí v dubnu 2019.

Ladislav Hagara | Komentářů: 0
19.9. 15:00 | Nová verze

Byla vydána verze 3.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí HTML, CSS a JavaScriptu Electron (YouTube, GitHub). Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

Ladislav Hagara | Komentářů: 0
19.9. 14:44 | Nová verze

Po půl roce vývoje od vydání verze 6.0.0 byla vydána verze 7.0.0 překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, clang-tools-extra a LLD.

Ladislav Hagara | Komentářů: 0
19.9. 13:44 | Nová verze

Byla vydána verze 3.0.0 knihovny pro vykreslování grafů v programovacím jazyce Python Matplotlib (Wikipedie, GitHub). Přehled novinek a galerie grafů na stránkách projektu. Zrušena byla podpora Pythonu 2.

Ladislav Hagara | Komentářů: 0
19.9. 00:22 | Komunita

V Norimberku probíhá do pátku ownCloud conference 2018, tj. konference vývojářů a uživatelů open source systému ownCloud (Wikipedie) umožňujícího provoz vlastního cloudového úložiště. Přednášky lze sledovat online. Videozáznamy jsou k dispozici na YouTube. Při této příležitosti byl vydán ownCloud Server 10.0.10. Z novinek lze zdůraznit podporu PHP 7.2. Vydán byl také ownCloud Desktop Client 2.5.0. Vyzkoušet lze online demo ownCloudu.

Ladislav Hagara | Komentářů: 1
Na optické médium (CD, DVD, BD aj.) jsem naposledy vypaloval(a) data před méně než
 (13%)
 (15%)
 (20%)
 (23%)
 (25%)
 (4%)
 (1%)
Celkem 376 hlasů
 Komentářů: 33, poslední 16.9. 11:55
Rozcestník

Jaderné noviny – 24. 3. 2011: Trvalé úložiště pro poslední slova jádra

4. 4. 2011 | Jirka Bourek | Jaderné noviny | 6443×

Aktuální verze jádra: 2.6.38.1. Citáty týdne: Alan Cox, Steven Rostedt, Linus Torvalds, Russel King, Julia Lawall. Konverze řetězců na čísla. Začleňovací okno 2.6.39, část druhá. Trvalé úložiště pro poslední slova jádra.

Obsah

Aktuální verze jádra: 2.6.38.1

link

Začleňovací okno 2.6.39 je v době psaní tohoto článku stále otevřené; níže vizte samostatný článek o tom, co bylo za tento týden začleněno.

Stabilní aktualizace: stabilní aktualizace 2.6.32.34, 2.6.37.5 a 2.6.38.1 byly vydány 23. března; každá obsahuje mnoho důležitých oprav.

21. března vyšlo 2.6.33.8; toto jádro původně již nemělo být dále udržováno, ale Greg Kroah-Hartman jeho aktualizace obnovil, protože sada patchů realtime preempce se na tomto vydání zasekla.

Citáty týdne: Alan Cox, Steven Rostedt, Linus Torvalds, Russel King, Julia Lawall

link

Kód pro embedded zařízení specifický pro architekturu většinou beru jako velmi pochybné večírky. Co se děje u někoho doma za zdí, do toho mi nic není.

8250 je nicméně základní kód, takže by měl zůstat oblečený a chovat se tak, jak se od kódu v jeho postavení očekává.

-- Alan Cox

Také věřím, že Greg tráví mnoho osamělých nocí koukáním do git commitů, pitím oblíbeného Latte a proklínáním všech patchů, které opravují chybu, ale nemají značku pro Cc do stable. Než se začal starat o stabilní jádra, měl na hlavě obrovskou hřívu.

-- Steven Rostedt vysvětluje, jak fungují stabilní jádra

Jestli je to něčí zoufalý pokus, jak přilákat pozornost, tak bych si přál, aby se tihle lidé raději natáčeli při sexu nebo něco a netahali linuxové jádro do svého špinavého světa.

-- Linus Torvalds

Začínám mít pocit, že jsi extrémně nespokojený s tím, jak fungují věci okolo ARMu, a já nemám tušení, jak to napravit. Myslím si, že většina z toho je jenom záležitost vnímání a ne něčeho hmatatelného.

Možná je pro ARM jediným řešením vytvořit fork jádra, což je něco, což opravdu dělat nechci – ale z toho, co vidím, je to jediné řešení, které by tě mohlo alespoň trochu potěšit.

-- Russel King

To se diskutovalo již dříve a vyskytovaly se názory, že 75000 řádků kódu v ocamlu do stromu zdrojových kódu Linuxu úplně nepatří.

-- Julia Lawall

Konverze řetězců na čísla

link

napsal Jonathan Corbet, 23. března 2011

Vývojáři jádra si oprávněně můžou stěžovat na to, že mají zmatek v tom, které funkce mají být používány k převodu řetězců na číselné typy. Staré funkce jako simple_strtoul() budou tiše ignorovat bordel na konci řetězce, takže „100xx“ se úspěšně převede na bezeznaménkové celé číslo. Bylo doporučováno používat alternativy jako strict_strtoul(), ale ty mají také problémy, mezi něž patří chybějící kontroly na přetečení. Co má tedy hacker jádra dělat?

Od 2.6.39 je tu nová sada funkcí pro konverzi řetězců na čísla, která má být preferována před všemi ostatními.

  • Bezeznaménkové konverze se lze provést pomocí kstrtoull(), kstrtoul(), kstrtouint(), kstrtou64(), kstrtou32(), kstrtou16() a kstrtou8().

  • Konverze znaménkových čísel pomocí kstrtoll(), kstrtol(), kstrtoint(), kstrtos64(), kstrtos32(), kstrtos16() a kstrtos8().

Všechny tyto funkce jsou označeny __must_check, od volajících se tedy očekává, že zkontrolují, že konverze proběhla úspěšně. Starší funkce byly označeny jako zastaralé a dříve či později budou odstraněny. Nové funkce kstrto*() jsou nyní Oficiálně nejlepším způsobem, jak převádět řetězce, takže vývojáři už nemusí tápat.

Začleňovací okno 2.6.39, část druhá

link

napsal Jonathan Corbet, 23. března 2011

V době psaní tohoto článku bylo od shrnutí z minulého týdne do hlavní řady začleněno nějakých 5 500 neslučovacích sad změn. Do jádra přibyla široká škála nových vlastností, pročištění a výkonnostních zlepšení. Některé z těch významnějších jsou:

  • Mechanismus ipset. Tento mechanismus umožňuje vytvářet skupiny IP adres, portů a MAC adres tak, aby je bylo možné rychle kontrolovat pomocí pravidel iptables.

  • Velikost počátečního congestion window v kódu TCP se zvýšila; tato změna by měla vést ke kratším dobám odezvy při načítání webových stránek a dalších serverových úlohách. Detaily vizte v tomto článku.

  • Nové systémové volání:

    int syncfs(int fd);

    Chová se jako sync() s tím rozdílem, že na trvalé úložiště se zapíše jenom souborový systém, na kterém je fd uloženo.

  • Základní kód USB získal podporu pro huby USB 3.0

  • Základní kód přechodné paměti byl začleněn do stromu staging. Společně s tím přišla „zcache“, cachovací mechanismus komprimující data do paměti.

  • V síťové vrstvě je nová metoda řazení do fronty [queueing discipline] „vícefrontový plánovač s prioritami“ [multi-queue priority scheduler]; umožňuje předat práci související s kvalitou služby [quality-of-service] hardwaru.

  • Součástí kódu síťování jsou nyní plánovač toku CHOKe a plánovač Stochastic Fair Blue.

  • Nyní jsou podporována rozšířená čísla IPSEC sekvence RFC 4303

  • Byla začleněna podpora pro 32 bitovou RISC architekturu UniCore.

Mezi změny viditelné pro jaderné vývojáře patří:

  • Po mnoha letech práce mnoha vývojářů byl odstraněn velký jaderný zámek [big kernel lock]

  • Mechanismus dynamického ladění má nové příznaky, které umožňují nastavit, jestli se vypíší jméno funkce, číslo řádky, jméno modulu a ID současného vlákna.

  • Jádro nyní může přes sysfs exportovat čistá data DMI tabulek, takže jsou k dispozici uživatelskému prostoru bez prohrabávání se /dev/mem.

  • Síťové ovladače nyní mohou povolit hardwarovou podporu pro směrování přijímaného toku metodou ndo_rx_flow_steer().

  • Souborový systém „pstore“ poskytuje přístup k trvalému úložišti specifickému pro platformu, takže ho je možné použít k uchovávání informací mezi rebooty.

  • Makefile proměnné EXTRA_CFLAGS a EXTRA_AFLAGS byly nahrazeny proměnnými ccflags-y, ccflags-m, asflags-y a asflags-m.

  • Funkce kmem_cache_name(), která vracela jméno slab cache, byla z jádra odstraněna

  • Paměťový alokátor SLUB nyní má bezzámkovou rychlou cestu pro alokace, což významně zvyšuje výkonnost. Bohužel to nic neudělá s pomalou cestou, kde jsou hlavní problémy s výkonností slubu, ale výkonnost v nejlepším případě významně roste.

  • Jaderná vlákna lze vytvořit na specifickém NUMA uzlu pomocí nové funkce kthread_create_on_node().

  • Nová funkce delete_from_page_cache() dělá to, co naznačuje její jméno; narozdíl od remove_from_page_cache() (která teď byla odstraněna) také dekrementuje počet odkazů na stránku. Blížeji tedy zrcadlí add_to_page_cache().

  • Nový framework „hwspinlock“ umožňuje implementaci synchronizačních primitiv na systémech, kde na různých jádrech běží různé operační systémy. Více informací vizte v Documentation/hwspinlock.txt.

Pokud vydrží obvykle pravidlo o dvou týdnech, začleňovací okno 2.6.39 by se mělo uzavřít 28. března. Za týden zde najdete shrnutí závěrečných změn začleněných v tomto vývojovém cyklu.

Trvalé úložiště pro poslední slova jádra

link

napsal Jake Edge, 23. března 2011

Když linuxový systém spadne, lze různými způsoby zjistit, co se pokazilo, ale tyto způsoby obvykle závisí na zápisu dat do logů na disku. U některých systémů disk v takové situaci nemusí být k dispozici nebo mu nelze věřit, takže by bylo užitečné mít místo specifické pro platformu, kam by se dala našťouchat data užitečná pro příští boot. To přesně zajišťuje souborový systém pstore začleněný do 2.6.39.

Nápad vytvořit pstore vzešel z rozhovoru Tonyho Lucka a Thomase Gleixnera na loňské Linux Plumbers Conference. Tony chtěl použít serializovanou tabulku záznamů ACPI chyb [error record serialization table, ERST] a ukládat do ní informace o pádu. ERST je mechanismus popsaný ve specifikaci ACPI [PDF] (sekce 17.4, stránka 519), umožňuje ukládat a získávat informace o hardwarových chybách z trvalého úložiště (jako je flash disk.)

Místo toho, aby vytvářel něco specifického pro architekturu x86, se nakonec rozhodl vytvořit obecnější framework, který by mohly použít i ostatní platformy, ať už mají k dispozici jakékoliv trvalé úložiště. Tony jej popsal jako obecnou vrstvu pro trvalé úložiště, které bude schopné předat desítky nebo stovky kilobytů dat posledních slov jádra svému nástupci.

Od prvního zaslání ke komentářům v listopadu kód prošel několika iteracemi. Po doporučení Alana Coxe se pstore změnil z ovladače firmware se sysfs rozhraním na přímočařejší implementaci založenou na souborovém systému.

Základem je, že platforma si může zaregistrovat dostupnost trvalého úložiště a jeho umístění voláním pstore_register(), kam se předá ukazatel na struct pstore_info, která vypadá takto:

struct pstore_info {
        struct module   *owner;
        char            *name;
        struct mutex    buf_mutex;      /* serialize access to 'buf' */
        char            *buf;
        size_t          bufsize;
        size_t          (*read)(u64 *id, enum pstore_type_id *type,
                        struct timespec *time);
        u64             (*write)(enum pstore_type_id type, size_t size);
        int             (*erase)(u64 id);
};

Ovladač pro platformu musí poskytnout tři I/O rutiny a buffer. Také je přítomen mutex, který má chránit před simultánním přístupem k bufferu. S tím pstore implementuje souborový systém, ke kterému lze přistupovat z jádra nebo i z uživatelského prostoru, když bude připojen. ERST úložiště je založené na záznamech a Tony předpokládá, že úložiště pro ostatní platformy budou také, takže I/O rozhraní je také založené na záznamech.

Společně s frameworkem pstore byl ovladač ERST změněn tak, aby pstore využíval; i tato změna byla začleněna, takže pstore má uživatele v jádře. Buffer pstore_info je alokován a spravován v drivers/acpi/apei/erst.c a je větší než bufsize kvůli hlavičkám záznamů a sekcí, které potřebuje ERST. Uživatelé I/O rozhraní vyplní buffer před voláním pstore_info.write() a po pstore_info.read() si z něj přečtou data.

Každá položka se ukládá s typem, kterým je PSTORE_TYPE_DMESG pro zprávy logu (pravděpodobně výstup oops), PSTORE_TYPE_MCE pro chyby hardwaru a PSTORE_TYPE_UNKNOWN pro ostatní nedefinované typy. Když se ukládá, je ke každé položce přiřazeno ID záznamu, které je také návratovou hodnotou pstore_info.write(). Toto ID lze použít v operacích read() a erase(), ale také se objevuje ve jménech souborů v souborovém systému.

Souborový systém lze připojit takto:

# mount -t pstore - /dev/pstore

Jména souborů, která se v něm zobrazí, jsou odvozena z typu, jména ovladače úložiště a id, takže první záznam dmesg bude v ERST /dev/pstore/dmesg-erst-1. Typickým způsobem použití bude připojení souborového systému při bootu, pak se nějaký proces v uživatelském prostoru podívá, jestli tam nejsou nějaké soubory, zkopíruje je na trvalejší úložiště a smaže je pomocí rm. To umožní ovladači úložiště znovu využít místo a zapsat tam další informace o pádech a chybách.

Ve výchozím nastavení si pstore zaregistruje obsluhu výpisu v kmsg_dump a zapíše do zařízení pstore posledních 10 kB dat z jaderného logu, když dojde k oops nebo panice. Množství dat, která se mají ukládat, lze nastavit parametrem kmsg_bytes při bootu.

Tony také sestavil RFC patch zakazující vypisování informací do pstore pro některé z důvodů kmsg_dump (například KMSG_DUMP_HALT či KMSG_DUMP_RESTART), ale různí další vývojáři si nebyli tak jisti, jestli je to dobrý nápad. Seiji Aguchi upozornil na dva případy (1, 2), kde v takových případech potřeboval někam uložit poslední zprávy v jaderném logu. A Artem Bityutskiy navíc upozornil na to, že když bude pstore rozhodovat, které důvody pro kmsg_dump ukládat a které ne, smrdí to politikou v jádře. Rozhodně je možné přidat další volby, které budou chování nastavovat, ale Tony chce podle všeho chvíli počkat, než bude něco měnit.

Pro jaderné zprávy jsou další metody, jak je dostat na trvalé úložiště, mezi hlavními můžeme zmínit devices/mtd/mtdoops.c a devices/char/ramoops.c. Ty se ale zaměřují na embedded zařízení, kde převažují NVRAM paměti, a na platformy, kde lze rezervovat část RAM, která se při přebootu nevynuluje. Pstore je flexibilnější a může ukládat více než jenom jaderné logy, zatímco obě *oops zařízení jsou zadrátována tak, že mohou ukládat pouze výstup kmsg_dump.

Když bylo pstore začleněno, začnou ho pravděpodobně používat i další architektury. David Miller již řekl, že ho použije pro sparc64, kde lze nastavit, aby část paměti zůstala zachována mezi rebooty. Dá se předpokládat, že další architektury, které mají hardwarovou podporu pro podobné mechanismy, budou následovat.

       

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ář

atan avatar 4.4.2011 08:26 atan | skóre: 21 | Liberec
Rozbalit Rozbalit vše Re: Jaderné noviny – 24. 3. 2011: Trvalé úložiště pro poslední slova jádra
Aktuální verze jádra: 2.6.33.8?
Luboš Doležel (Doli) avatar 4.4.2011 11:41 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Jaderné noviny – 24. 3. 2011: Trvalé úložiště pro poslední slova jádra
Díky, opraveno, nějak mě ta hromada verzí zmátla.
4.4.2011 09:08 xxx
Rozbalit Rozbalit vše Re: Jaderné noviny – 24. 3. 2011: Trvalé úložiště pro poslední slova jádra
„posledních slov jádra jeho nástupci.“ -- svému zástupci!
4.4.2011 10:27 hnidopich
Rozbalit Rozbalit vše Muphryho zákon opět udeřil
svému nástupci
4.4.2011 15:46 Patrik Uhrak | skóre: 31 | blog: pato
Rozbalit Rozbalit vše Re: Jaderné noviny – 24. 3. 2011: Trvalé úložiště pro poslední slova jádra

Je tam maly preklep na konci sekcie  "Konverze řetězců na čísla" :

... Straší funkce byly označeny jako zastaralé a dříve či později budou odstraněny. ...

 

Ale inak som velice vdacny za kazdy preklad. ;)

Luk avatar 4.4.2011 16:52 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Jaderné noviny – 24. 3. 2011: Trvalé úložiště pro poslední slova jádra
Starší funkce, co tam ještě straší ;-)
LinuxMarket - linuxový e-shop | LinuxEXPRES - linuxový magazín | OpenOffice.cz - portál uživatelů OpenOffice/LibreOffice
4.4.2011 19:06 Patrik Uhrak | skóre: 31 | blog: pato
Rozbalit Rozbalit vše Re: Jaderné noviny – 24. 3. 2011: Trvalé úložiště pro poslední slova jádra

Pekne vystihnute. :D

Založit nové vláknoNahoru

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