abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 14
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 13
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    24.4. 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 14
    24.4. 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (16%)
    Celkem 782 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12

    23. 9. 2013 | Luboš Doležel | Jaderné noviny | 4632×

    Aktuální verze jádra: 3.11. Citáty týdne: Linus Torvalds, Ted Ts'o. Hermann: Oddělení device nodů DRM a KMS. Bootování self-signed linuxového jádra. Začleňovací okno 3.12 se otevírá. Příchod lockrefů.

    Obsah

    Aktuální verze jádra: 3.11

    link

    Vyšlo jádro verze 3.11, a to 2. září. Mezi významné novinky v tomto vydání patří distribuovaný systém souborů Lustre, podpora transparentních velkých stránek na ARM, virtualizace Xen a KVM pro ARM64, příznak O_TMPFILE, dynamická správa výkonu v ovladači Radeon, patch pro dotazování ethernetových karet s nízkou latencí a ještě více. Podrobnosti najdete na stránce na KernelNewbies.

    Stabilní aktualizace: verze 3.10.10, 3.4.60 a 3.0.94 vyšly 29. srpna.

    Citáty týdne: Linus Torvalds, Ted Ts'o

    link

    No tak, lidi! Když zasíláte adresy na ssh, tak do vaší žádosti o přetažení přidávajete i vaše uživatelské jmeno a heslo nebo privátní klíč.

    -- Linus Torvalds

    Nevidím na výhradním používání hardwarového generátoru náhodných čísel žádné přednosti. Už teď přidáváme výstup hardwarového generátoru do /dev/random, a proto výhradním používáním hardwarového zdroje uděláme jádro zranitelnějším vůči útokům, kdy NSA zatlačí na několik zaměstnanců Intelu a donutí/podplatí je, aby poslední krok při generování AES přes RDRAND bylo používat klíč AES známý NSA a k tomu čítač.

    -- Ted Ts'o

    Hermann: Oddělení device nodů DRM a KMS

    link

    David Hermann popisuje nedávnou práci na grafických ovladačích, ve kterých je řízení režimů obrazovky odděleno od vykreslovacího enginu. Takže kdykoliv aplikace potřebuje hardwarově akcelerované vykreslování, přístup ke GPGPU nebo vykreslování mimo obrazovku, už se nemusí dotazovat grafického serveru (přes DRI nebo wl_drm), místo toho stačí otevřít libovolný dostupný vykreslovací uzel (render node) a začít jej používat. Řízení přístupu k vykreslovacím uzlům probíhá přes standardní přístupová práva systému souborů. Už není sdíleno s prostředky pro nastavování režimu obrazovky, a proto je možné jej poskytnout aplikacím s nižším oprávněním.

    Bootování self-signed linuxového jádra

    link

    Greg Kroah-Hartman vytvořil jednoduchý tutoriál popisující, jak sestavit a nabootovat self-signed linuxové jádro na systému s UEFI secure boot. Tyto první dvě volby povolí režim EFI a poví jádru, že se má sestavit jako binárka EFI, kterou je možné spustit přímo z EFI BIOSu. To znamená, že se v systému nepoužívá žádný zavaděč [bootloader], UEFI BIOS přímo spustí jádro bez jakéhokoliv „mezikroku“. Jakkoliv mám gummiboot rád, tak pokud věříte obrazu jádra, které používáte, toto je nejsnazší způsob, jak spustit podepsané jádro.

    Začleňovací okno 3.12 se otevírá

    link

    Začleňovací okno 3.12 se tentokrát otevřelo přesně na čas – 3. září; do sepsání tohoto článku bylo do hlavní řady přetaženo více než 3500 patchů. Opět dochází k internímu pročišťování, které nevypadá v seznamu novinek tak zajímavě, ale v budoucnu ucítíme výhody, které to má. Zejména probíhala práce na výkonu, což by mělo Linux v řadě oblastí zrychlit.

    Mezi změny viditelné uživatelům patří:

    • Systém souborů Lustre, zařazený ve verzi 3.11, je nyní při povolen v sestavovacím systému. Současně byl kód pročištěn.
    • Rozhraní /proc/acpi/event, které už je dlouho označené za zastaralé, bylo odstraněno. Pokud jej někdo potřebuje, pak by se v průběhu vývojového cyklu 3.12 měl přihlásit.
    • Mechanismus pstore (který ukládá informace o pádu do perzistentního úložiště) nyní dokáže ukládat komprimovaná data.
    • Byl přetažen patch pro detekci nečinnosti celého systému. Ten umožňuje jádru detekovat, zda je celý systém nečinný a případně vypnout tik hodin, což zvyšuje výkon při používání zcela dynamického tiku.
    • Mechanismus „paravirtualizovaných tiketových spinlocků“ umožňuje efektivnější zamykání ve virtualizovaných systémech. Ve zkratce, pokud není spinlock dostupný téměř okamžitě, pak se kód zámku přestane cyklit a požádá hypervizor, aby počkal, dokud zámek nebude dostupný.
    • Podpora nového hardwaru.

    Změny viditelné vývojářům zahrnují:

    • Přibyl nový čítač referencí nazvaný „lockref“ definovaný v <linux/lockref.h>. Kombinuje spinlock a čítač referencí tak, aby bylo možné měnit počet referencí bez získání zámku. Více se dozvíte v tomto článku.
    • Architektura S390 byla převedena na obecný mechanismus obsluhy přerušení. Protože S390 bylo poslední překážkou, tak tento mechanismus bude povinný a volba CONFIG_GENERIC_HARDIRQS tedy zmizí.
    • Přibyl nový mechanismus pro ladění problémů se životním cyklem kobjektů [kobjects]; funguje tak, že opožďuje volání funkce release() v době, kdy počet referencí klesne na nulu. Většinou je release() zavoláno právě tehdy, kdy ovladač vypíná příslušné zařízení, ale to není zaručeno. Zapnutí CONFIG_DEBUG_KOBJECT_RELEASE pomůže odhalit situace, kdy ovladač není připraven na opožděné volání release().
    • Funkce PTR_RET() byla přejmenována na PTR_ERR_OR_ZERO(); všechna místa používání byla upravena.

    Příchod lockrefů

    link

    Ke sledování životního cyklu struktur v jádře se často používají čítače referencí. Tyto čítače jsou sice efektivní, ale mohou vést ke spoustě přehazování řádků cache u často používaných objektů. Režie spojená s tímto přehazováním je ještě horší, pokud je čítač referencí nutné chránit spinlockem. Jádro 3.12 bude obsahovat nový nástroj pro zamykání nazvaný „lockref“, který tím, že kombinuje spinlock a čítač referencí do jediné osmibajtové hodnoty, tuto režii dokáže znatelně snížit.

    V mnoha případech jsou čítače referencí implementovány pomocí proměnných typu atomic_t, které lze používat bez zámku. Bezzámková povaha atomic_t je užitečná jen tehdy, pokud je čítač referencí možné měnit nezávisle na zbytku struktury, ke které čítač přísluší. Jinak je celou strukturu nutné nejprve zamknout. Podívejme se například na intenzivně používanou strukturu dentry, kde není možné měnit počet referencí, pokud se strukturou pracuje jiná část jádra. Z tohoto důvodu až do verze 3.12 struct dentry obsahovalo tato pole:

    unsigned int d_count;       /* protected by d_lock */
    spinlock_t d_lock;          /* per dentry lock */
    

    Pro změnu d_count je nejprve nutné uzamknout d_lock. Na systému s vysokou zátěží systémů souborů je čekání na d_lock významným úzkým hrdlem; nutnost získání zámku pro změnu počtu referencí je nemalou částí tohoto problému. Proto by bylo pěkné najít způsob, jak se režii zámku vyhnout, ale na d_count nelze používat atomické operace, protože vlákno, které drží d_lock nesmí vidět změny hodnoty d_count.

    Mechanismus „lockref“ přidaný na začátku začleňovacího okna 3.12 umožňuje typicky bezzámkovou úpravu počtu referencí za současného respektování zámku; původně tuto funkčnost implementoval Waiman Long, před začleněním to ještě upravil Linus. Lockref funguje tak, že spojuje čítač referencí a spinlock do jediné osmibajtové struktury, která vypadá takto:

    struct lockref {
    	union {
    		aligned_u64 lock_count;
    		struct {
    			spinlock_t lock;
    			unsigned int count;
    		};
    	};
    };
    

    Návrh je takový, že kód kontroluje, zda zámek někdo nedrží, pak inkrementuje (nebo dekrementuje) počet referencí a současně si hlídá, že někdo mezitím nezískal zámek. Klíčovou roli zde hraje kouzelné makro cmpxchg():

    u64 cmpxchg(u64 *location, u64 old, u64 new);
    

    Toto makro je mapované přímo na instrukci procesoru, která uloží novou hodnotu do *location, a to jen tehdy, pokud je hodnota v *location rovná old. V případě lockrefu odpovídá location poli lock_count ve struktuře – toto pole obsahuje jak spinlock, tak počet referencí. Při inkrementaci se ověří stav zámku, spočítá se nový počet referencí a pak se použije cmpxchg() pro atomické zapsání nové hodnoty, což zajišťuje, že se mezitím nezměnil stav zámku, ani počet referencí. Pokud ke změně došlo, pak se to buď zkusí znovu nebo se přejde na původní způsob zamykání v závislosti na tom, zda zámek zrovna někdo drží, nebo ne.

    Tento trik umožňuje změnu počtu referencí, aniž by (většinou) bylo nutné zamykat spinlock a tedy bez dalšího vyvolávání čekání na spinlocky. Zlepšení výkonu může být obrovské – například šestinásobné s jedním z Waimanových benchmarků na testování systému souborů na velkém systému. Vzhledem k tomu, že se nový kód s lockrefem používá zatím jen na jediném místě (cache dentry), jde o obrovský přínos malé změny v kódu.

    Aktuálně je kompletní implementace lockrefu jen na x86-64. Vypadá to ale, že ostatní platformy se podpory dočkají do konce vývojového cyklu 3.12 a že v pozdějších cyklech najdou lockrefy své využití v dalších částech jádra. Mezitím pozornost na režii zámků vedla k vylepšením na jiných místech ve vrstvě systémů souborů, která by se měla dostat do jádra ještě v tomto začleňovacím okně; současně se teď více pozornosti dostává i jiným místům, kde by se práce se zámky dala zlepšit. Dá se to tedy shrnout tak, že v 3.12 budeme svědky značných výkonnostních vylepšení a další ještě přijdou.

           

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

    23.9.2013 09:52 Pev | skóre: 28
    Rozbalit Rozbalit vše Re: Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12
    Typo bylkód.
    23.9.2013 09:53 Pev | skóre: 28
    Rozbalit Rozbalit vše Re: Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12
    Typo za je celý systém nečinný (=> zda).
    Luboš Doležel (Doli) avatar 23.9.2013 10:00 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12
    Opraveno, díky.
    23.9.2013 11:27 tom
    Rozbalit Rozbalit vše Re: Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12
    linek cache -> radku cache

    Slovo "linka" jsem pouzite v tomhle vyznamu nikdy jeste nevidel
    Luboš Doležel (Doli) avatar 23.9.2013 14:04 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12
    Nahrazeno.
    23.9.2013 23:37 Petr Ježek | skóre: 10
    Rozbalit Rozbalit vše Re: Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12
    Jsem zvědav na konkrétní prvky na zrychlení. Pochopitelně čistota kódu je jen drobným faktorem.
    Archlinux for your comps, faster running guaranted!
    25.9.2013 10:55 Jindřich Makovička | skóre: 17
    Rozbalit Rozbalit vše Re: Jaderné noviny – 6. 9. 2013: Vyšší výkon v 3.12
    "Generování AES přes RDRAND" mi nedává taky moc smysl, v originále má Ted zřejmě na mysli bělení výstupu z RDRAND pomocí AES.

    http://blog.jim.com/crypto/rdrand.html

    Založit nové vláknoNahoru

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