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

Správce nástroje curl Daniel Stenberg na GitHubu průběžně vytváří svou novou knihu Uncurled, v níž shrnuje své dlouhodobé zkušenosti s údržbou open-source projektu: od odpozorovaných pouček po vtipné a ne až tak vtipné příklady e-mailů od uživatelů.

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

Byla vydána nová major verze 25.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.

Ladislav Hagara | Komentářů: 2
včera 00:11 | Nová verze

Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript a TypeScript, bylo vydáno ve verzi 1.22. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
18.5. 18:22 | Nová verze

Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 9.0. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 6
18.5. 14:00 | Komunita

Lars Knoll oznámil, že po 25 letech v ekosystému Qt, z toho 22 let pracující pro různé společnosti vlastnící Qt, odchází ze společnosti The Qt Company do malého norského startupu.

Ladislav Hagara | Komentářů: 4
18.5. 13:22 | Zajímavý projekt

Na Kickstarteru běží kampaň na podporu mini ITX desky Turing Pi 2 Cluster Computer. Vložením 4 výpočetních modulů, podporovány jsou Raspberry Pi 4, Turing RK1 a Nvidia Jetson, lze získat 4uzlový cluster. Cena desky je 219 dolarů.

Ladislav Hagara | Komentářů: 2
18.5. 10:00 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 198. brněnský sraz, který proběhne v pátek 20. května tradičně od 18 hodin v Pivovarské restauraci Moravia.

Ladislav Hagara | Komentářů: 2
18.5. 07:00 | Zajímavý software

Byla vydána nová verze 0.25 herního enginu Fyrox, původně rg3d. Přehled novinek s kódy, náhledy i videi v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
18.5. 00:11 | Nová verze

Multiplatformní audio přehrávač Qmmp (Wikipedie) byl vydán ve verzi 2.1.0. Z novinek lze zmínit například podporu XDG Base Directory Specification.

Ladislav Hagara | Komentářů: 0
17.5. 23:22 | Komunita

Letošní konference LibreOffice proběhne 28. září až 1. října v Bolzanu. The Document Foundation hledá přednášející.

Zdeněk Crhonek | Komentářů: 0
Na sociálních sítích nebo jiných webových diskuzích vystupuji pod
 (59%)
 (16%)
 (25%)
Celkem 281 hlasů
 Komentářů: 24, poslední dnes 09:27
Rozcestník


Jaderné noviny - 18. 2. 2015: Začleňovací okno 3.20 2. část.

17. 6. 2015 | Redakce | Jaderné noviny | 2017×

Stav vydání jádra. Citáty týdne. Začleňovací okno 3.20 2. část.

Stav vydání jádra

Začleňovací okno 3.20/4.0 zůstává i nadále otevřeno, takže není nový vývojový kernel. Příliv patchů do hlavního repozitáře pokračuje. Pro více informací viz. články níže.

Minulý týden nebyly žádné stabilní aktualizace.

Citáty týdne

Připomíná to styl kódování robotů. Jako nějaká opuštěná chodba, kterou neúnavně čistí zapomenutý vysavač Roomba, kam ale lidská noha nevkročila už roky.

-Alan Cox


SMP (symetrický multiprocesing) má vždy na svědomí několik zkažených vajec v RT omeletě.

-Steven Rostedt

Začlenovací okno 3.20 2. část

V době psaní tohoto článku bylo do hlavního repozitáře v tomto vývojovém cyklu začleněno již 7849 neslučitelných sad změn; z toho 4200 od doby, kdy bylo napsáno shrnutí z minulého týdne. Některé ze zajímavějších a viditelnějších změn z oněch 4200 pachtů zahrnují:

  • Paralelní subsystém NFS (pNFS) získal podporu pro rozvržení vyvíjeného FlexFile. Toto rozvržení povoluje ukládání metadat souborů v jiném místě než obsah souboru.
  • Subsystém PSS (persisten storage subsystem) může případně poskytnout nový speciální soubor (/dev/pmsg0), který umožňuje programům ukládat data do paměti.
  • Bezpečnostní modul Smack může nyní (filtrovat pakety netfilteru skrze bezpečnostní štítky) komunikovat se systémem netfilter skrze bezpečnostní štítky k filtrování paketů.
  • Souborový systém ubifs má nyní multiqueue podporu blokových vrstev (zvyšujících jeho výkonnost) a podporu bezpečnosti.* rozšířených atributů (umožňující podporu bezpečenostních modulů).
  • Androidový binder byl vybaven bezpečnostními háčky, které umožňují jeho přenesení pod SELinux (nebo jiný modul zabezpečení).
  • Sběrnice subsystému I2O byla přesunuta do pracovního adresáře, s myšlenkou na její kompletní odstranění z jádra v blízké budoucnosti. Pokud je vývojářům známo, nikdo již tento kód nepoužívá. Pokud se jedná o mylný dojem, nyní je ta pravá chvíle se ozvat.
  • Pro změny v ovladači Intel v tomto vývojovém cyklu viz. tento zápis.
  • Patchenevolativní paměti byly sloučeny, takže je možné hostovat souborové systémy v trvalé paměti s dobrým výkonem.
  • Architektura PA-RISC již není schopna spustit 32 bitové HP-UX binárky. Očekává se, že počet lidí negativně ovlivněných touto změnou, bude malý.
  • Souborový systém lazytime (zpočátku s podporou v ext4) byl začleněn. Lazytime umožňuje přesné sledování časů přístupů k souborům, bez vzniku velkého počtu zápisů do souborového systému I/O.
  • Podpora nového hardwaru zahrnuje:
    • Systémy a procesory: Procesory z13 IBM s/390, jednodeskové počítače Artesyn MVME2500, Conexand Digicolor SoC, Nvidia Tegra 132 SoCs, Freescale LS2085A SoCs a MediaTek MT65xx ARMv8 SoCs.
    • Grafika: Ovladače ATMEL HLCDC a Samsung Exynos7 SoCs. DO stromu byla přidána také podpora subsystému "fbtfb"; poskytuje podporu široké škále malých TFT LCD displejů.
    • Průmyslové I/O: Senzory blízkosti a okolního osvětlení Solteam JSA1212, 6 osé akcelerometry/magnetometry Kionix KMX61, inteligentní senzory pohybu Freescale MMA9551L, inteligentní krokoměry Freescale MMA9553L, senzory blízkosti Semtech SX9500, senzory okolního osvětlení Capella Microsystems cm3232, Analogově digitální převodníky (ADP), A/D Cosmic Circuits 10001 a jednotky Samsung Sensorhub.
    • Různé: Ovladače pohotovostního režimu APM X-Gene GPIO, ovladače Fujitsu MB86S7x GPIO, poštovní jednotky Altera, TPMs verze 2.0, časovače Abracon AB-RTCMC-32.768kHz-B5ZE-S3, časovače Armada 38x Marvell SoC, sériové porty ETRAX FS, časovače Alphascale ASM9230, Rockchip rk3288, Conexant Digicolor a Dallas/Maxim DS1685.
    • Pin Control: Ovladače Allwinner A31s SoC, Amlogic Meson Soc, Xilinx Zynq, Qualcomm 8916.
    • USB: Ovladače Rockchip USB2 PHY a USB ISP1761.

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

  • Vrstva paměťové řídící jednotky ARM I/O (IOMMU) má nové, tabulkové rozhraní API. Pro přehled viz. drivers/iomu/io-pgtable.c nebo io-pgtable.h.
  • Subsystém LED má nyní novou třídu pro zařízení LED, pracující v režimu "blesku" (například u fotoaparátu).
  • Byl včleněn KASan (sanitizér adres jádra). KASan monitoruje paměťové reference jádra ve snaze zachytit kód, který snaží dostat do paměti a nemá tam co dělat. Zatím funguje pouze na architektuře x86_64 a paměť hotplug (zařízení, připojující se za chodu počítače) musí být zakázána.
  • Vývojáři pracující s GDB debuggerem se mohou podívat do nové sady pomocných skriptů, přidaných do scripts/gdb.
  • Rodina funkcí printk() má nový typ formátu (%pb) pro tisk bitmap. Počet bitů v bitmapě musí být specifikován jako šířka pole v řetězci.

Prozatím to vypadá na relativně pomalý cyklus, jak bylo předpovězeno před otevřením začleňovacího (merge) okna. Přesto by měl být důraz kladen na slovo "relativně"; téměř 8000 patchů není zrovna málo.

Tato verze kernelu ještě nemá své jméno. Linus na svém Google+ spustil hlasování, ve kterém zvítězilo označení 4.0, ale on sám se ještě nevyjádřil. Příští týden nás čekají poslední změny tohoto cyklu, a snad také odpověď na otázku, ohledně jeho pojmenování.

Epoll se vyvíjí

Epoll je sada specifických Linuxových volání určených k zajištění rychlého pollování (polling) velkého počtu souborových deskriptorů (popisovačů). API se používá od doby, co bylo včleněno ve vývojové verzi 2.5, ale jako u spousty jiných rozhraní, i tady je prostor pro zlepšení. V současné době kolují dvě sady patchů, které by této sadě systémových volání přidaly funkce.

Přehled

Epoll je navržen tak, aby fungoval podobně jako select() nebo poll(), ale s více možnostmi a vyšším výkonem v situaci, kdy je využito více souborových deskriptorů. Každé volání select() nebo poll() může obsahovat zcela novou sadu souborových deskriptorů, takže kernel musí každý z nich ověřit, kontrolovat připravenost I/O a přidávat pollovací proces (polling process) příslušným frontám. Seznam souborových deskriptorů se mezi voláními příliš nemění, takže dochází ke zbytečnému duplicitnímu úsilí. Volání epoll tento problém řeší tím, že oddělí nastavení (setup) od čekání souborového deskriptoru, než dojde k jeho připravení.

Proces, který využívá toto API musí začít vytvořením speciálního souborového deskriptoru pro použití v pollování, což se dělá voláním k jednomu z:

	#include 

	int epoll_create(int size);
	int epoll_create1(int flags);

Každé z těchto volání vrátí souborový deskriptor, který bude využit se zbývajícími funkcemi epoll. Velikost size parametru epoll_Create() se již nepoužije. Argument vlajky flags je přidán do epoll_create1() a lze jej použít k nastavení příznaku vlajky close-on-exec pro výsledný souborový deskriptor.

Dalším krokem je přidání všech souborových deskriptorů, které mají být monitorovány:

	int epoll_ctl(int efd, int op, int fd, struct epoll_event *event);

Jestliže je op EPOLL_CTL_ADD, bude výsledný fd přidán do sady. Parametr události se používá k popisu událostí, které budou pollovány; pro podrobnosti viz. manuál. op epoll_ctl() se používá také k odstranění souborových deskriptorů nebo úpravě pollování.

Čekání k připravení jednoho ze souborových deskriptorů k připravení se provádí:

	int epoll_wait(int epfd, struct epoll_event *events, int maxevents, int timeout);
    	int epoll_pwait(int epfd, struct epoll_event *events, int maxevents, int timeout,
                    	const sigset_t *sigmask);

Události, které vrátí epoll_wait() až k maxevents budou uloženy v poli akcí events array. Parametr timeout je v milisekundách. Verze epoll_pwait() také umožňuje v průběhu volání zablokovat (nebo odblokovat) specifikaci ze souboru signálů. Pro více informací viz. manuál.

epoll_ctl_batch() and epoll_pwait1(

Tento patch Fama Zhenga přináší dvě nová systémová volání rodině epoll. První řeší problém s výkonem, který nastává v situaci, kdy je nutné dělat změny v souborových deskriptorech v sadě epoll. Volání epoll_ctl() může pouze přidat, modifikovat nebo vymazat jeden souborový desktriptor. Je-li zapotřebí provést změny ve více deskriptorech, je třeba více volání epoll_ctl(). Nabízené systémové volání epollctl_batch() tento problém obchází zpracováním více souborových deskriptorů v jednom volání:

	int epoll_ctl_batch(int epfd, int flags, int ncmds, struct epoll_ctl_cmd *cmds);

Struktura cmds zde v podstatě duplikuje všechny argumenty, které by byly předány volání epoll_ctl(). Předáním sady těchto struktur může program provádět operace na několika souborových deskriptorech v jednom systémovém volání.

Fam také přidává nové systémové volání k provedení pollování:

	struct epoll_wait_params {
		int clockid;
		struct timespec timeout;
		sigset_t *sigmask;
		size_t sigsetsize;
    	};

    	int epoll_pwait1(int epfd, int flags,
                     	struct epoll_event *events, int maxevents,
                     	struct epoll_wait_params *params);

Tato verze epoll_wait() přidává nový parametr vlajek, ale nedefinuje jejich hodnoty, čili vlajky musí být nula. Úkolem parametrů zamíchaných do struktury je dát žádosti (aplication) více kontroly nad zpracováním časového limitu. Časový limit v hodnotách milisekund epoll_wait() se ukázal jako příliš hrubý pro řadu použití. Nové systémové volání definuje timeout v nanosekundách, což problém řeší.

       

Hodnocení: 60 %

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

Ruža Becelin avatar 17.6.2015 14:09 Ruža Becelin | skóre: 39 | blog: xMstSpider
Rozbalit Rozbalit vše Re: Jaderné noviny - 18. 2. 2015: Začleňovací okno 3.20 2. část.
Architektura PA-RISC již není schopna spustit bitové HP-UX binárky.

The PA-RISC architecture is no longer able to run 32-bit HP-UX binaries.

Vypadlo vam "32-"

rADOn avatar 17.6.2015 18:43 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Jaderné noviny - 18. 2. 2015: Začleňovací okno 3.20 2. část.
The nonvolatile memory support patches…
Nonvolativní patche podpory paměti…
no comment.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
17.6.2015 21:22 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Jaderné noviny - 18. 2. 2015: Začleňovací okno 3.20 2. část.
poštovní jednotky Altera
OMG :-D. Předpokládám, že to má být synchronizační hardware "mailbox" (něco jako buffer se semaforem).
Jendа avatar 18.6.2015 08:08 Jendа | skóre: 77 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jaderné noviny - 18. 2. 2015: Začleňovací okno 3.20 2. část.
Proč se ty I2C a SPI volovinky přidávají jako jaderné moduly? Tohle by se podle mě mělo obsluhovat z userspace.

Btw. překlad je dneska mimořádně špatný :-(
Bezpečnostní modul Smack může nyní (filtrovat pakety netfilteru skrze bezpečnostní štítky) komunikovat se systémem netfilter skrze bezpečnostní štítky k filtrování paketů.

Souborový systém ubifs má nyní multiqueue podporu blokových vrstev (zvyšujících jeho výkonnost) a podporu bezpečnosti.* rozšířených atributů (umožňující podporu bezpečenostních modulů).

Pro změny v ovladači Intel v tomto vývojovém cyklu viz. tento zápis.

6 osé akcelerometry
Řešení inflace: přidat do spotřebního koše Bitcoin

Založit nové vláknoNahoru

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