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 16:55 | Zajímavý článek

Vývojáři postmarketOS (GitLab) hodnotí 600 dnů vývoje tohoto v květnu 2017 představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky [reddit].

Ladislav Hagara | Komentářů: 0
dnes 15:55 | Bezpečnostní upozornění

Společnost Oracle vydala čtvrtletní bezpečnostní aktualizaci svých softwarových produktů (CPU, Critical Patch Update). Opraveno bylo celkově 284 bezpečnostních chyb. V Oracle Java SE je například opraveno 5 bezpečnostních chyb. Všechny jsou vzdáleně zneužitelné bez autentizace. V Oracle MySQL je opraveno 30 bezpečnostních chyb. Vzdáleně zneužitelných bez autentizace jsou 3 z nich.

Ladislav Hagara | Komentářů: 0
dnes 15:44 | Komunita

Na YouTube byly zveřejněny komunitní videozáznamy přednášek z konference OpenAlt 2018. Letošní OpenAlt proběhne o víkendu 2. a 3. listopadu opět na FIT VUT v Brně.

Ladislav Hagara | Komentářů: 0
dnes 10:33 | Komunita

Mozilla.cz informuje (en), že program Firefox Test Pilot se příští týden uzavře. Program sloužil téměř tři roky pro testování nových funkcí pro Firefox. Díky němu dnes máme stránku nového panelu, Screenshots pro vytváření snímků stránek, bezpečné sdílení souborů Send, doplněk pro lepší práci a přihlašování k více účtům nebo připravovaný správce hesel Lockbox. Tyto funkce pokračují dál, ale samotný Firefox Test Pilot bude 22. ledna 2019

… více »
Ladislav Hagara | Komentářů: 0
včera 21:45 | Zajímavý projekt

Humble Bundle v rámci akce Double Fine Presents nabízí skupinu multiplatformních her bez DRM za vlastní cenu: Mountain, 140 a THOTH (jako jediná nikoliv pro Linux), za nadprůměrnou cenu navíc GNOG a Escape Goat 2 a za aspoň $10 Gang Beasts a Everything. Platbu lze rozdělit mezi vývojáře, Humble Bundle a charitu. Akce probíhá do 29. ledna.

Fluttershy, yay! | Komentářů: 2
včera 17:22 | Nová verze

Laboratoře CZ.NIC vydaly novou verzi 4.12.0 aplikace Datovka, tj. svobodné multiplatformní desktopové aplikace pro přístup k datovým schránkám a k trvalému uchovávání datových zpráv v lokální databázi.

Ladislav Hagara | Komentářů: 0
včera 17:00 | IT novinky

Byla zveřejněna pravidla hackerské soutěže Pwn2Own Vancouver 2019, jež proběhne od 20. do 22. března v rámci bezpečnostní konference CanSecWes. Vedle virtualizačních softwarů nebo webových prohlížečů se bude letos útočit i na automobil Tesla Model 3.

Ladislav Hagara | Komentářů: 0
včera 10:33 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostních chybách v scp klientech. Jedná se o chyby CVE-2019-6111, CVE-2018-20685, CVE-2019-6109 a CVE-2019-6110 v scp z OpenSSH a CVE-2018-20684 ve WinSCP. Zranitelné je také pscp z PuTTY. Server pod kontrolou útočníka může provádět neoprávněné operace na straně klienta.

Ladislav Hagara | Komentářů: 4
včera 09:44 | Komunita

Mozilla.cz informuje, že Firefox letos vypne Flash. Stane se tak s verzí 69. Podpora Flashe oficiálně skončí na konci roku 2020.

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

Android Studio (Wikipedie), tj. oficiální integrované vývojové prostředí pro vývoj aplikací pro mobilní operační systém Android, bylo vydáno v nové stabilní verzi 3.3. Přehled novinek i s náhledy v oficiálním oznámení a také na YouTube.

Ladislav Hagara | Komentářů: 0
Používáte USB Type-C?
 (19%)
 (15%)
 (10%)
 (12%)
 (37%)
 (3%)
 (45%)
Celkem 368 hlasů
 Komentářů: 0
Rozcestník

Jaderné noviny – 11. 1. 2018: Nové jaderné rozhraní pro dotazování

29. 1. 2018 | Redakce | Jaderné noviny | 2474×

Stav vydání jádra. Kroah-Hartman: Stav Meltdown a Spectre v jádře Linux. Citáty týdne: Larry McVoy, Willy Tarreau, Thomas Gleixner, David Miller a Linus Torvalds. Nové jaderné rozhraní pro dotazování.

Stav vydání jádra

Současné vývojové jádro je 4.15-rc7, vydané 7. ledna. „OK, byl to zajímavý týden a teď už všichni vědí, proč jsme začleňovali všechny ty divné patche izolace tabulek stránek na x86, aniž bychom postupovali podle všech těch obvyklých pravidel pro postup vydání. Ale samotná rc7 je ve skutečnosti celkem v klidu.“

Stabilní aktualizace: 4.14.12, 4.9.75 a 4.4.110 byly vydány 5. ledna, 10. ledna je následovaly aktualizace 4.14.13, 4.9.76 a 4.4.111. Všechny tyto aktualizace obsahují opravy oprav meltdown/spectre, takže kdo provozuje stabilní jadra, se nejspíš bude chtít držet nejnovějších verzí.

Kroah-Hartman: Stav Meltdown a Spectre v jádře Linux

Tady jsou novinky od Grega Kroah-Hartmana ohledně odpovědi jádra na Meltdown a Spectre. „Pokud právě spoléháte na jiné jádro než 4.4, 4.9 nebo 4.14 a nemáte distribuční podporu, máte smůlu. Absence patchů řešících problém Meltdown je v porovnání se stovkami dalších známých zranitelností a chyb, které vaše jádro momentálně obsahuje, naprosto zanedbatelná. Ze všeho nejvíc by vás teď mělo trápit právě tohle a první byste měli aktualizovat své systémy. Také byste měli seřvat ty lidi, kteří vás přinutili používat zastaralou a nebezpečnou verzi jádra, ti si musí uvědomit, že takové chování je naprosto bezohledné.“

diskuze na Linux Weekly News

Citáty týdne

Monolitická jádra jsou daleko otevřenější k tomu, aby s nimi zacházeli lidé, kteří nejsou až tak dobří. Je to smutné, ale je to tak. Byl bych rád za svět, kde se používají mikrojádra, ale bojím se, že jsme příliš hloupí, než abychom toho dosáhli. Něco, něco, něco, proto nemůžeme mít hezké věci.

Larry McVoy

Stále musíme hodně myslet na výkon. Už je tu probíhající trend nasazování mechanismů obcházejících jádro kvůli výkonu a nové zvýšení ceny systémových volání nutně zesílí zájem vyhnout se jádru. Osobně nechci vidět, jak je jádro redukováno na zavádění systému a spouštění SSH pro správu počítačů.

Willy Tarreau

Doufám, že tohle cvičení konečně zastaví probíhající jadernou nekrofilii v distribucích. Vím, že se tak nestane, ale naděje umírá poslední.

Thomas Gleixner

Zdá se, že řízeným odhalováním velmi důležitých chyb se daří dosahovat dvou věcí:

  • Dodavatelé si mohou chránit zadek a přijít s úhybnými manévry.
  • „Divadelní“ aspekt bezpečnosti může být maximalizován, jak to jen jde. Tentokrát dokonce máme pěkné webové stránky a roztomilé avatary!

Nic z toho nemá nic společného s tím, kolik máme času na to přijít s co nejlepší možnou implementaci opravy. S tou technickou částí, víte?

David Miller

Obvykle jsme vždy ladili s ohledem na latenci. Propustnost je „snadná“, ale téměř nikdy zajímavá.

Linus Torvalds (díky Jimu Gettysovi)

Nové jaderné rozhraní pro dotazování

A new kernel polling interface. Jonathan Corbet. 9. ledna 2018

Je užitečné dotazovat se (poll) skupiny deskriptorů souborů za účelem zjistit, který z nich zvládne provést I/O bez blokování. Je to dokonce tak užitečné, že jádro k tomu nabízí tři různá systémová volání (select(), poll() a epoll_wait() — plus nějaké další varianty). Jenže někdy ani tři možnosti nestačí. Aktuálně koluje návrh na čtvrté jaderné rozhraní pro dotazování. Jak je obvyklé, změna je motivována požadavky na výkon.

Christoph Hellwig 4. ledna zveřejnil nové dotazovací API založené na mechanismu asynchronního I/O (AIO). Někoho by to mohlo překvapit, jelikož AIO nepatří k nejoblíbenějším jaderným rozhraním a obvykle si nezíská mnoho pozornosti. AIO umožňuje zadávat I/O operace bez čekání na jejich dokončení. Čekání může být provedeno někdy jindy, je-li nutno. Jádro podporuje AIO již od doby vydání 2.5, ale vždy to bylo tak nějak neúplné. Přímé souborové I/O (původní způsob užití) funguje dobře, stejně jako síťové I/O. Mnoho dalších typů I/O ale není podporováno pro asynchronní použití – takové pokusy vedou na synchronní chování. V jistém smyslu je dotazování se přirozeným rozšířením AIO. Smyslem dotazování se je vyhnout se čekání na ukončení operací.

Patche přidávají nový příkaz (IOCB_CMD_POLL), který může být předán io_submit() v kontrolním bloku I/O (IOCB) spolu s ostatními obvyklými příznaky POLL*, které popisují požadovaný typ I/O — např. POLLIN pro data dostupná ke čtení. Tento příkaz, jako ostatní příkazy AIO, nebude (nezbytně) dokončen před návratem z io_submit(). Místo toho, když je určený deskriptor souboru připraven k požadovanému typu I/O, bude do fronty zařazena událost dokončení. Následné volání io_getevents() (nebo varianty io_pgetevents() přidané sadou patchů, ta během operace blokuje signály) vrátí tuto událost a volající aplikace bude vědět, že na uvedeném deskriptoru souboru může provést I/O. Dotazovací operace AIO vždy pracují v jednorázovém (one-shot) režimu. Takže jakmile se vygeneruje upozornění na dotaz a jsou zapotřebí další upozornění, je nutné pro daný deskriptor souboru poslat nový IOCB IOCB_CMD_POLL IOCB.

Zatím se toto rozhraní jeví složitější než stávající dotazovací systémová volání. Je tu ale výhoda, která spočívá v cyklické frontě (ring buffer) AIO. Tento bídně zdokumentovaný aspekt subsystému AIO mapuje cyklickou frontu do adresního prostoru volajícího procesu. Tento proces pak může konzumovat události oznámení přímo odtud, místo aby volal io_getevents(). Vícero oznámení lze přijmout zcela bez nutnosti vstupu do jádra a volání pro více deskriptorů souborů lze obnovit jediným voláním io_submit(). Hellwig uvedl ve zprávě doprovázející patche, že výsledkem je až 10% nárůst výkonu I/O frameworku Seastar. Hellwig nedávno poznamenal, že zlepšení výkonu roste až na 16 % u jader se zapnutou izolací tabulek stránek.

Uvnitř jádra může nové dotazovací rozhraní podporovat libovolný ovladač zařízení (nebo jiný subsystém, který exportuje strukturu file_operations), ale bude to vyžadovat nějaké drobné změny. Není však nutné podporovat (nebo dokonce ani vědět o) AIO obecně. V současných jádrech jsou všechna dotazovací systémová volání podporována metodou poll() ve struct file_operations:

int (*poll) (struct file *file, struct poll_table_struct *table);

Tato funkce musí provést dvě akce: nastavit upozornění na dobu, kdy bude příslušný soubor file připraven k I/O, a vrátit typy I/O, které lze provést bez okamžitého blokování. První se provede přidáním jedné nebo více čekacích front do poskytnuté tabulky table, ovladač na jedné z těchto front vykoná volání probuzení ve chvíli, kdy se stav zařízení změní. Aktuální stav připravenosti (readiness) vrací samotná metoda poll().

Podpora dotazování založeného na AIO vyžaduje rozdělit tyto dvě funkce do samostatných metod file_operations. Čili tato struktura obsahuje dva nové záznamy:

struct wait_queue_head *(*get_poll_head)(struct file *file, int mask);
int (*poll_mask) (struct file *file, int mask);

(Patche samotné používají novou definici typu __poll_t pro mask, ale ta zatím není v hlavním repozitáři jádra.) Dotazovací subsystém zavolá get_poll_head(), aby získal ukazatel na čekací frontu, která dostane oznámení, když se změní stav připravenosti I/O zařízení. Aktuální stav připravenosti se získá voláním poll_mask(). Ovladač, který implementuje tyto dvě operace si nemusí (a pravděpodobně by ani neměl) zachovat implementaci staršího rozhraní poll().

Jedno možné omezení vlastní tomuto API spočívá v tom, že čekací fronta, která přijímá oznámení pro daný soubor file, může být pouze jedna. Stávající rozhraní naopak umožňuje více front a mnoho ovladačů tuto skutečnost využívá, například má různé fronty pro připravenost čtení a zápisu. Současné čekací fronty nabízejí tolik flexibility, že používání více front by již nemělo být nutné. Jestliže ovladač nemůže být změněn, „tak prostě nebude podporovat aio dotazování,“ řekl Hellwig.

Ke zveřejnění tohoto patche se zatím neobjevilo mnoho komentářů. Řada potenciálně zainteresovaných vývojářů byla v posledním týdnu zaneprázdněna jinými záležitostmi. S 10% nárůstem výkonu je ale těžké polemizovat, takže nějaká forma tohoto patche se pravděpodobně do hlavního jádra dříve nebo později dostane – koho to zajímá, může dále sledovat hlavní repozitář, jestli už to tam je. Zda se někdy dočkáme pátého dotazovacího rozhraní, je zatím otázkou.

       

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

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