Byla vydána nová verze 1.26 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.
CrossOver, komerční produkt založený na Wine, byl vydán ve verzi 26. Přehled novinek v ChangeLogu. CrossOver 26 vychází z Wine 11.0, D3DMetal 3.0, DXMT 0.72, Wine Mono 10.4.1 a vkd3d 1.18. Do 17. února lze koupit CrossOver+ se slevou 26 %.
KiCad je nově k dispozici také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit [Mastodon, 𝕏].
Šenčenská firma Seeed Studio představila projekt levného robotického ramena reBot Arm B601, primárně coby pomůcky pro studenty a výzkumníky. Paže má 6 stupňů volnosti, dosah 650 mm a nosnost 1,5 kilogramu, podporované platformy mají být ROS1, ROS2, LeRobot, Pinocchio a Isaac Sim, krom toho bude k dispozici vlastní SDK napsané v Pythonu. Kompletní seznam součástek, videonávody a nejspíš i cena budou zveřejněny až koncem tohoto měsíce.
… více »Byla vydána nová verze 36.0, tj. první stabilní verze nové řady 36, svobodného multimediálního centra MythTV (Wikipedie). Přehled novinek a vylepšení v poznámkách k vydání.
Byl vydán LineageOS 23.2 (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.
Od března budou mít uživatelé Discordu bez ověření věku pouze minimální práva vhodná pro teenagery.
Evropská komise (EK) předběžně shledala čínskou sociální síť pro sdílení krátkých videí TikTok návykovým designem v rozporu s unijním nařízením o digitálních službách (DSA). Komise, která je exekutivním orgánem Evropské unie a má rozsáhlé pravomoci, o tom informovala v tiskovém sdělení. TikTok v reakci uvedl, že EK o platformě vykreslila podle něj zcela nepravdivý obraz, a proto se bude bránit.… více »
Offpunk byl vydán ve verzi 3.0. Jedná se o webový prohlížeč běžící v terminálu a podporující také protokoly Gemini, Gopher a RSS. Přibyl nástroj xkcdpunk pro zobrazení XKCD v terminálu.
Promethee je projekt, který implementuje UEFI (Unified Extensible Firmware Interface) bindingy pro JavaScript. Z bootovacího média načítá a spouští soubor 'script.js', který může používat UEFI služby. Cílem je vytvořit zavaděč, který lze přizpůsobit pomocí HTML/CSS/JS. Repozitář se zdrojovými kódy je na Codebergu.
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.
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.
SMP (symetrický multiprocesing) má vždy na svědomí několik zkažených vajec v RT omeletě.
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í:
Mezi změny viditelné pro vývojáře jádra patří:
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 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:
#includeint 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ší.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
The nonvolatile memory support patches…
Nonvolativní patche podpory paměti…no comment.
poštovní jednotky AlteraOMG
. Předpokládám, že to má být synchronizační hardware "mailbox" (něco jako buffer se semaforem).
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