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 | Komunita

    Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).

    ❗Červivý Hřib krade❗ | Komentářů: 6
    dnes 03:33 | Nová verze

    V červnu byla představena aplikace Myna pro převod řeči na text v prostředí desktopu Ubuntu. Včera byla Myna zpřístupněna širší komunitě Ubuntu formou technologické ukázky dostupné v Ubuntu 24.04 LTS, Ubuntu 26.04 LTS a Ubuntu 26.10 s GNOME na Waylandu.

    Ladislav Hagara | Komentářů: 0
    včera 21:11 | Komunita

    Ubuntu 27.04 bude Tenacious T-Rex.

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

    Byla vydána nová verze 2026.4.0 "Never-slop" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu. ScummVM oslavil 25 let. Verze 0.0.1 vyšla 8. října 2001.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Humor

    Kanadský vývojář Anthony Sistilli vytvořil ironický DIY projekt parodující kamerové systémy Flock, s cílem názorně demonstrovat rizika masového sledování jaké provozují tyto komerční ALPR systémy. Z levné IP kamery a vlastního ML softwaru (napsaného s pomocí SI circa za 20 minut, kód se mi bohužel nepodařilo dohledat) běžícího v laptopu sestavil jednoduchý systém, který detekuje výhradně policejní vozidla, zaznamenává jejich SPZ a

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 7
    včera 12:44 | Upozornění

    Část údajů uživatelů internetového supermarketu Rohlík byla odcizena. Kyberútočníci napadli nástroj zákaznické podpory Rohlíku, odcizili tak jména, e-mailové adresy, v některých případech také telefonní čísla nebo přepisy komunikace mezi klienty a zákaznickou podporou. Rohlík incident nahlásil příslušným orgánům a přijal příslušné opatření, aby zamezil podobným případům v budoucnosti, uvedla firma.

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

    Aplikace eDoklady fungovala v obou volebních dnech stabilně a prakticky bez front. Digitální a informační agentura (DIA) odhaduje, že se digitálním dokladem prokázalo více než 100.000 voličů. Aplikaci si před volbami či během nich aktualizovalo 247.517 uživatelů. Nových registrací bylo 19.431 a do aplikace se přihlásilo 357.879 lidí. Největší nápor přišel bezprostředně po otevření volebních místností mezi 14. a 16. hodinou, kdy si

    … více »
    Ladislav Hagara | Komentářů: 11
    včera 00:55 | Pozvánky

    Začal semestr, začal i podzim a kromě hub rostou jako po dešti i veřejné dílny v Praze. Nedávno strahováci referovali o hackerspacu Bordel, nyní se otevřela dílna Dejvice Lab jen kousek od ČVUT. Na blížící Virtuální Bastlírně tak uslyšíte nejen report z návštěvy dílny HWLab, ale i řadu novinek, událostí a úsměvných momentů, které se za poslední měsíc ve světě techniky, ale i vědy udály. Připojte se tedy již v úterý 13.10. od 20:00 a zapojte se do

    … více »
    bkralik | Komentářů: 0
    11.10. 11:33 | Nová verze

    Byl vydán LineageOS 24 (Mastodon). LineageOS (Wikipedie) je svobodný operační systém pro chytré telefony, tablety a set-top boxy založený na Androidu. Jedná se o nástupce CyanogenModu. LineageOS 24 je založený na Androidu 17.

    Ladislav Hagara | Komentářů: 0
    11.10. 03:55 | IT novinky

    Společnost Valve publikovala na svém GitLabu nákresy a schémata zapojení headsetu Steam Frame. Pro nekomerční účely.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2839 hlasů
     Komentářů: 32, poslední 11.10. 17:02
    Rozcestník

    Jaderné noviny – 19. 6. 2014: Nejistý osud volatilních rozsahů

    8. 7. 2014 | Luboš Doležel | Jaderné noviny | 3822×

    Aktuální verze jádra: 3.16-rc1. Citáty týdne: Paul McKenney. Začleňovací okno 3.16 se završuje. Volatilní patch pro volatilní rozsahy.

    Obsah

    Aktuální verze jádra: 3.16-rc1

    link

    Aktuální vývojová verze jádra je 3.16-rc1 vydaná 15. června. Linus k ní řekl:

    Možná to bylo trochu neobvyklé dvoutýdenní začleňovací okno, a to kvůli tomu, že máme jen týden od vydání verze 3.15 a první týden se překrýval s posledním -rc pro předchozí vydání, ale nezdá se, že by to mělo na vývoj dopad. Věci se zdají být normální a když už, tak jde o jedno z větších začleňovacích oken spíš, než že by patřilo mezi ta menší. Není tak veliké jako okno pro 3.15, ale nemá k němu tak daleko.

    Nakonec bylo přetaženo celkem 11 364 sad změn (3.15-rc1 jich mělo 12 034).

    Stabilní aktualizace: verze 3.15.1, 3.14.8, 3.10.44 a 3.4.94 všechny vyšly 16. června. Výčet oprav je tentokrát docela krátký, ale i tak stojí za to je mít.

    Citáty týdne: Paul McKenney

    link

    V mé hlavě se nachází jakási impresionistická malba RCU. A v jednom z rohů je něco, co by mohl být pes. Pokud je to opravdu pes nebo to můžeme přesvědčit, aby se to jím stalo, pak by možná mohl vést stádo ovcí uprostřed malby. Přinejmenším vypadají jako ovce. Možná to jsou deštivá oblaka. Nebo napudrovaní advokáti s parukami. V takovém případě by zajisté stálo za to je jen pro pobavení seznámit se zmiňovaným psem.

    Nuže, mám namířeno do posilovny. Několik návštěv posilovny a spánkových cyklů tuto malbu možná přetvoří na užitečný kód. Tento přístup mi za uplynulá léta mnohokrát zafungoval, tak je jistá naděje, že to tak opět dopadne.

    -- Škola návrhu softwaru Paula McKenneyho

    Začleňovací okno 3.16 se završuje

    link

    15. června Linus Torvalds vydal předverzi 3.16-rc1 a ukončil začleňovací okno tohoto cyklu. Od nynějška by se neměly přidávat nové funkce, půjde hlavně o opravy a stabilizující patche.

    Torvalds do verze 3.16 začlenil 11 364 neslučovacích změn. Od přehledu z minulého týdne jde o 3200 změn (a celkem o téměř 6000 od prvního přehledu). Poslední dvě začleňovací okna jsou v trojici největších začleňovacích oken co se commitů týče, 3.16 je na třetím místě za 3.10 (11 963) a 3.15 (12 034). Uvidíme, zda tento trend bude pokračovat a dočkáme se u 3.17 a dalších verzí 11 až 12 tisíc patchů.

    Tak jako tak tu máme přehled významných změn, které uživatelé ve verzi 3.16 uvidí:

    • Moduly nyní mají bity jen ke čtení (RO) a pro zákaz spouštění (NX) nastaveny mnohem dříve v průběhu načítání, ještě než jsou zpracovány argumenty modulů. Toto ještě více omezí časový úsek, během kterého by špatně se chovající (nebo zákeřný) modul mohl upravit nebo spustit svá data.
    • BPF filtry pro bezpečné výpočty (seccomp) jsou nyní kompilovány v režimu JIT.
    • Byla přidána podpora pro TCP fast open na IPv6.
    • Virtuální síťová rozhraní Xen mají nyní podporu pro vícero front, což vede k mnohem lepšímu výkonu.
    • Byla přidána podpora pro aktivní čekání (busy polling) na soketech SCTP. Funkce se na soketu aktivuje pomocí volby SO_BUSY_POLL; může snížit latenci při čtení na rozhraních s vysokým provozem, která tuto volbu podporují.
    • Modul pro rozšířené ověřování (EVM) má konfigurační volby přidávající podporu vkládání nových rozšířených atributů (xattrs) do výpočtu HMAC pro soubor. Díky této funkčnosti mohou být tři atributy Smacku (SMACK64EXEC, SMACK64TRANSMUTE a SMACK64MMAP) přidány do výpočtu HMAC.
    • Btrfs má nové ioctl() nazvané BTRFS_IOC_TREE_SEARCH_V2, se kterým lze hledat klíče na systému souborů. Jak z názvu vyplývá, jde o flexibilnější verzi BTRFS_IOC_TREE_SEARCH, se kterou lze předávat větší buffer pro získávání větších výsledků vyhledávání, které by se nevešly do bufferu o pevné velikosti 3992 bajtů.
    • Podpora nového hardwaru.

    Mezi změny zajímavé pro vývojáře jádra patří:

    • V lib/interval_tree.c najdete jednoduché rozhraní intervalového stromu. Intervalový strom je implementován jako rozšířený RB strom.
    • Sledovací body mají přesnější rozlišení událostí v průběhu uspávání a probouzení.
    • Interpretr BPF má nyní testy sebe sama, které pokrývají jak klasické tak interní instrukce BPF.
    • Přibylo API pro TCP TSO (segmentation offload); několik ovladačů (mvneta, mv643xx_eth apod.) jej používá pro přidání softwarové podpory TSO.
    • Soubor Documentation/mutex-design.txt byl značně zaktualizován, takže více odpovídá skutečnosti.
    • Byl přidán optimistický spinning do read-write semaforů (rwsems). Přibyla rovněž frontová varianta RW zámků (qrwlocks).
    • Ve struct file_operations přibyly dvě nové metody read_iter() a write_iter(). Smyslem je podporovat přechod na rozhraní iov_iter, které nakonec nahradí metody aio_read() a aio_write().

    Nyní začíná stabilizační fáze verze 3.16. To znamená, že se vydání konečné verze 3.16 dočkáme někdy začátkem srpna v závislosti na tom, jak bude cyklus probíhat. Pak přijde čas na to zopakovat si to zase s verzí 3.17.

    Volatilní patch pro volatilní rozsahy

    link

    "Volatilní rozsah" je název, kterým označujeme oblasti paměti v uživatelském prostoru, které může jádro uvolnit, je-li paměti málo. Typickým případem použití je cache obrázků ve webovém prohlížeči; prohlížeč by si rád uchoval tyto informace v paměti pro rychlejší načítání stránek, ale obejde se i bez nich, pokud by paměť použitá pro cache byla zapotřebí jinde. Implementace volatilních rozsahů se dočkaly neobvykle velkých změn; to bude dost možná pokračovat dál – pokud se najde vývojář, který by v práci pokračoval.

    Rané verze patche byly založené na systémovém volání posix_fadvise(). Někteří vývojáři si stěžovali, že jde spíše o koncept související s alokací, takže byl patch přepracován tak, aby se používalo fallocate(). Do konce roku 2013 se plán změnil – přibyla dvě nová systémová volání nazvaná fvrange() a mvrange(). 11. verze vydaná v březnu 2014 přechází na jediné systémové volání nazvané vrange(). Během všech těchto iterací se objevily také obavy o sémantiku v uživatelském prostoru (hlavně tedy co se stane, pokud se proces pokusí přistoupit ke stránce, která byla uvolněna) a nejlepší interní způsob implementace volatilních rozsahů. Takže nebylo zatím do jádra začleněno nic.

    14. verze, kterou 29. dubna zaslal John Stultz, opět mění API v uživatelském prostoru. Volatilní rozsahy nyní používají systémové volání madvise(). Zejména pak volání:

    madvise(address, length, MADV_VOLATILE);

    označí oblast paměti o length bajtech začínajících na address jako volatilní. Jakmile je oblast takto označena, jádro může s ní spojené stránky kdykoliv uvolnit a jejich obsah zahodit. Pokud aplikace potřebuje k oblasti přistoupit v budoucnosti, měla by oblast označit jako nevolatilní voláním:

    madvise(address, length, MADV_NONVOLATILE);

    Návratová hodnota nula značí úspěch (oblast je nyní nevolailní a předchozí obsah zůstal nedotčen), záporné číslo značí buď chybu, nebo úspěch v případě, že alespoň jedna stránka v rozsahu byla zahozena.

    Používání madvise() už bylo v minulosti zvažováno; dává to smysl vzhledem k tomu, že cílem je jádru dát doporučení ohledně důležitosti určité oblasti paměti. Předchozí implementace volatilních rozsahů měly ale tu vlastnost, že označování oblasti jako nevolatilní mohlo na půli cesty selhat. To znamenalo, že rozhraní muselo mít schopnost vrátit dvě hodnoty: 1) kolik stránek bylo úspěšně označeno a 2) zda některé z nich byly zahozeny. Tentokrát ale John našel způsob, jak učinit tuto operaci atomickou v tom smyslu, že buď celá uspěje, nebo selže. Jelikož tedy druhá návratová hodnota už není potřeba, rozhraní madvise() je pro tento účel vhodné.

    Co se stane, když se uživatelský prostor pokusí přistoupit k volatilní stránce, jež byla mezitím zahozena? Tato implementace doručí signál SIGBUS. Náležitě připravená aplikace může tento signál zpracovat a získat data z jiného zdroje; nepřipravené aplikace místo toho po sobě zanechají nepořádek v podobě core dumpu. To možná nevypadá jako přátelské chování, ale mohli bychom tvrdit, že by aplikace neměla přímo přistupovat k paměti, kterou podle instrukcí, jež dala jádru, nutně nepotřebuje.

    Minchanu Kimovi se tento přístup nelíbí; dal by přednost tomu, aby aplikace zkrátka obdržela v takové situaci novou stránku plnou nul. Uvažuje totiž o jiném případu užití: jde mu o kód, který opětovně používá paměť a říká jádru, že původní obsah není třeba zachovávat. V tomto případě by opětovné použití mělo mít co nejnižší režii; Minchanovi by více vyhovovalo, kdyby nebylo nutné používat MADV_NONVOLATILE nebo obsluhu signálu SIGBUS. John navrhl, že Minchanův vlastní patch MADV_FREE se pro tento případ hodil více, ale Minchan nesouhlasil, že prý MADV_FREE je jednorázová operace, zatímco MADV_VOLATILE se u rozsahu paměti zachovává napříč několika cykly zahození a opětovného použití. John má nicméně obavy, že tiché nahrazení stránek nulami by mohlo vést k poškození dat nebo jiným nepříjemným překvapením.

    Johannes Weiner, který se do debaty zapojil v červnu, rovněž dává přednost tomu, aby zahozené stránky byly nahrazeny nulami při přístupu k nim. Zeptal se, zda by bylo patch možné přepracovat tak, aby pracoval nad MADV_FREE (které má podle něj lepší vnitřní implementaci) s cílem dát uživateli na výběr: aplikace by si mohly zažádat buď o prázdnou stránku, nebo o SIGBUS. John odpověděl, že to možná někdy zkusí:

    Uvidím, jestli na to budu mít čas. Spíš je ale pravděpodobné, že budu muset uznat porážku a nechat to na někoho jiného. Zdá se, že opět opadl zájem i aktivita v podobě revidování a přibývá další práce, takže si nejsem jistý, zda dokáži ospravedlnit další práci na toto téma.

    Johna určitě nemůžeme vinit z nedostatečného úsilí; patch od roku 2011 prošel čtrnácti revizemi; mluvilo se o něm i na Jaderném sumitu a Sumitu o úložištích, systémech souborů a správě paměti. Po připomínkách od různých lidí se dočkal rozsáhlých úprav. I tak to ale vypadá, že i když na zařazení funkce čekají skuteční uživatelé, tak nemá k zařazení do hlavní řady blíže.

    Stejně tak je těžké něco dávat za vinu těm, kteří kód revidovali. Koncept volatilních rozsahů přidává nové chování správy paměti s různými drobnými detaily. Pokud implementace a rozhraní nebudou správně udělány, pak to vývojáře v jádře i mimo něj bude trápit po dlouhou dobu. Změny ve správě paměti se do jádra těžko dostávají z dobrého důvodu; stejně tak změny viditelné uživatelům. Tento patch se dotýká obou oblastí, kde – jak nás minulost už naučila – je obtížné udělat věci správně, proto je nezbytné si dávat pozor.

    I tak si ale nemusíme být jisti tím, jestli je nezačlenění ničeho z dlouhodobého hlediska správnou cestou. Uživatelé začnou používat řešení vyvinutá mimo hlavní řadu jádra (zejména pak androidí „ashmem“), nad kterými nemá komunita takovou kontrolu. Pokud někdo nebude mít čas pokračovat v práci na tomto patchi, pak se této funkce nemusíme v jádře nikdy dočkat, což by uživatele nechalo bez funkčnosti, kterou jednoznačně vyžadují.

           

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

    Karry avatar 9.7.2014 09:54 Karry | skóre: 10
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 6. 2014: Nejistý osud volatilních rozsahů
    Existuje zpusob jak muze dat kernel aplikacim vedet ze by bylo vhodne zahodit pamet kterou nutne nepotrebuji? Vim ze se tento problem jiz nekolikrat resil, nevim ale jestli to dospelo k nejakemu vysledku... Dokazu si predstavit dany usecase bez volatile rozsahu...
    unzip; strip; touch; grep; finger; mount; fsck; more; yes; umount; sleep
    9.7.2014 10:55 tap
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 6. 2014: Nejistý osud volatilních rozsahů
    Toto by bolo oveľa horšie riešenie. Kernel v danom čase vie koľko potrebuje pamäte keď má zoznamy potenciálne voľnej vie sa nejak rozhodnúť. Keď kernel pamäť potrebuje napr. pre dáta ktoré na neho padajú zo siete nemôže si dovoliť poprosiť user space proces nech mu niečo láskavo dá. A potom ako dlho by mal kernel čakať kým user space procesy mu niečo uvolnia. Implementácia typu kernel pošle každému user space procesu signál. Je skoro isté že ako reakcia to bude pokračovať tak že väčšina procesov si nejakú pamäť vyžiada.
    Gilhad avatar 9.7.2014 11:14 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 6. 2014: Nejistý osud volatilních rozsahů
    Kdyzi jsem o tom premyslel a dosel k nazoru, ze by mozna stalo za to, kdyby kernel (nebo nekdo jiny, zodpovedny) poslal zpravu ve chvili, kdy zbyva treba jen 10% pameti (nebo jina nastavitelna hodnota, nebo urcity pocet megabajtu, nebo tak neco), ve smyslu "kdyz to pujde takhle dal, zacnu radit a zahazovat pamet/volat OOMKillera, nechcete se dobrovolne zbavit neceho nepotrebneho?"

    S tim, ze procesy bud uvolni nejakou pamet, nebo ji prestanou pozirat, nebo bude za chvili zle a nikdo se jich uz ptat nebude.
    Karry avatar 9.7.2014 11:16 Karry | skóre: 10
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 6. 2014: Nejistý osud volatilních rozsahů
    Naprosto souhlasím. Řešení čistě v Kernelu je hezčí. Ale já hledám řešení které by fungovalo na současném kernelu. Dokážu si představit že signál o tlaku na paměť by se posílal s dostatečným předstihem. Stále mi to přijde jako lepší řešení než v aplikaci pollovat /proc/vmstat
    unzip; strip; touch; grep; finger; mount; fsck; more; yes; umount; sleep
    9.7.2014 11:52 tap
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 6. 2014: Nejistý osud volatilních rozsahů
    Nejaké pokusy už zjavne boli http://lwn.net/Articles/268732/ http://lwn.net/Articles/475791/ V Chormiu to snáď majú zamergeované.
    9.7.2014 14:10 luky
    Rozbalit Rozbalit vše Re: Jaderné noviny – 19. 6. 2014: Nejistý osud volatilních rozsahů
    Existuje zpusob jak muze dat kernel aplikacim vedet ze by bylo vhodne zahodit pamet kterou nutne nepotrebuji? Vim ze se tento problem jiz nekolikrat resil, nevim ale jestli to dospelo k nejakemu vysledku... Dokazu si predstavit dany usecase bez volatile rozsahu...
    Jo, to muzete udelat normalne pres munmap()

    Založit nové vlákno • Nahoru

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