BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.
Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.
Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.
Kultovní britský seriál The IT Crowd (Ajťáci) oslavil dvacáté výročí svého prvního vysílání. Sitcom o dvou sociálně nemotorných pracovnících a jejich nadřízené zaujal diváky svým humorem a ikonickými hláškami. Seriál, který debutoval v roce 2006, si i po dvou dekádách udržuje silnou fanouškovskou základnu a pravidelně se objevuje v seznamech nejlepších komedií své doby. Nedávné zatčení autora seriálu Grahama Linehana za hatecrime však vyvolává otázku, jestli by tento sitcom v současné Velké Británii vůbec vznikl.
Společnost JetBrains oznámila, že počínaje verzí 2026.1 budou IDE založená na IntelliJ ve výchozím nastavení používat Wayland.
Společnost SpaceX amerického miliardáře Elona Muska podala žádost o vypuštění jednoho milionu satelitů na oběžnou dráhu kolem Země, odkud by pomohly zajistit provoz umělé inteligence (AI) a zároveň šetřily pozemské zdroje. Zatím se ale neví, kdy by se tak mělo stát. V žádosti Federální komisi pro spoje (FCC) se píše, že orbitální datová centra jsou nejúspornějším a energeticky nejúčinnějším způsobem, jak uspokojit rostoucí poptávku po
… více »Byla vydána nová verze 2.53.0 distribuovaného systému správy verzí Git. Přispělo 70 vývojářů, z toho 21 nových. Přehled novinek v poznámkách k vydání.
Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 216. sraz, který proběhne v pátek 20. února od 18:00 v Red Hat Labu (místnost Q304) na Fakultě informačních technologií VUT v Brně na ulici Božetěchova 1/2. Tématem srazu bude komunitní komunikační síť MeshCore. Jindřich Skácel představí, co je to MeshCore, předvede nejrůznější klientské zařízení a ukáže, jak v praxi vypadá nasazení vlastního repeateru.
Byla vydána nová major verze 9.0 multiplatformní digitální pracovní stanice pro práci s audiem (DAW) Ardour. Přehled novinek, vylepšení a oprav v poznámkách k vydání.
Hodnota Bitcoinu, decentralizované kryptoměny klesla pod 70 000 dolarů (1,44 milionu korun).
Aktuální vývojová verze jádra je 3.11-rc7 vydaná 25. srpna s neobvyklým oznámením: Dělám na (svobodném) operačním systému (jen jako koníček, i když je velký a profesionální) pro klony 486+ AT a snad i všechno ostatní, co na světě existuje. Dělám na tom už od dubna 1991 a ještě to není hotové. Budu vděčný za jakoukoliv zpětnou vazbu ohledně toho, co se lidem na Linuxu 3.11-rc7 nelíbí. Samozřejmě jde o oslavu 22. výročí od původního mailu, kde Linus představoval Linux.
Stabilní aktualizace: za uplynulý týden žádné nevyšly. V době psaní tohoto textu se aktualizace 3.10.10, 3.4.60 a 3.0.94 revidují; jejich vydání lze očekávat 29. srpna nebo později.
Někdy je těžké si uvědomit, že „tento kus kódu je naprostá *pííp*“ ve skutečnosti znamená "řekl bych, že obecný návrh ujde, ale musíš se zamyslet nad tímto kouskem kódu, a pak to snad bude dobré."
Na druhou stranu by na tohle měl člověk po vysoké škole být zvyklý.
Historie ukázala, že ignorování managementu výrobců hardwaru vždy vedlo k lepším ovladačům. Neříkám, že někteří výrobci nemají kompetentní inženýry (mnoho ano, mnoho ne), ale jakmile je do rozhodování okolo ovladačů zapojen management, všechna naděje je ztracena.
Před několika týdny jsme psali o začlenění patche přidávajícího systémové volání flink(), které by programu umožnilo přidat odkaz na soubor na základě otevřeného popisovače. Přidání této funkce bylo dlouho blokováno kvůli obavám z bezpečnostních problémů; tentokrát to prošlo díky argumentu, že jádro už tuto funkčnost nabízí přes volání linkat(). Zdálo se, že tuto funkci v Linuxu 3.11 uvidíme.
Ne všichni ale byli spokojení; Brad Spengler upozornil na problém, kdy procesy mohou vytvářet odkazy na popisovače předané z více privilegované domény. Proto Andy Lutomirski, autor původního patche, zaslal úpravu omezující funkčnost na soubory vytvořené s vobou O_TMPFILE. Jediný problém byl v tom, že se patch nikomu moc nelíbil; Linus to dal jednoznačně najevo.
Následovala dlouhá diskuze (plná patchů) o tom, jak problém lépe vyřešit. Jediná věc byla jasná, a to, že není jasné, jaké řešení je to nejlepší. Proto 28. srpna Linus patch revertoval se slovy Je jasné, že diskuze ještě neskončila a patche, co se tu objevují, nejsou pro 3.11 vhodné. Proto bude funkčnost flink() muset počkat minimálně do 3.12.
Lehkotonážní virtualizace za použití kontejnerů je nástroj, který se konečně dostal na Linux, i když jsou tu ještě určité drobnosti, které scházejí. Kontejnery jsou vytvářeny pomocí dvou oddělených jaderných funkcí: řídících skupin (cgroups) a jmenných prostorů. Cgroups se aktuálně předělávají a možná ještě bude nutné přidat další jmenné prostory k těm, co jsou nyní k dispozici. Například není žádný způsob, jak oddělit většinu zařízení do vlastního jmenného prostoru. To je mezera, kterou by Oren Laadan rád zaplnil, takže nedávno rozeslal RFC ke jmenným prostorům zařízení.
Jmenné prostory rozdělují globální systémové prostředky tak, že různé skupiny procesů mají různý náhled na tyto prostředky. Například jmenné prostory mountů rozdělují připojené systémy souborů na různé pohledy s tím důsledkem, že procesy v jednom jmenném prostoru nemohou vidět nebo zacházet se systémy souborů připojenými v jiném. Obdobně jmenné prostory PID dávají každému jmennému prostoru vlastní rozsah čísel procesů (PID). Některá zařízení mají vlastní jmenný prostor nebo podobnou funkčnost: jmenné prostory pro síťová zařízení a pseudo systém soubprů devpts pro pseudoterminály (neboli pty). Ale není žádný způsob, jak rozčlenit všechna zařízení v systému, což mají za úkol právě jmenné prostory zařízení.
Cílem této funkčnosti je mít vícero virtuálních telefonů na jednom fyzickém telefonu. Člověk by například mohl mít dva kompletní androidí systémy na telefonu, jeden pro práci a druhý pro soukromé použití. Každý ze systémů by běžel ve vlastním kontejneru a vzájemně by byly izolované. Izolace by umožnila řídit aplikace a bezpečnost ve „firemní polovině“ telefonu, zatímco uživatel by si mohl udržovat osobní data bokem. Přehled, jak by to vypadalo, můžete vidět na videu. Většinu tohoto rozdělení je možné udělat už dnes, ale něco ještě chybí: virtualizace zařízení (např. framebufferu, dotykové obrazovky nebo tlačítek).
Návrh přidává koncept „aktivního“ jmenného prostoru zařízení, kterým by byl ten, se kterým uživatel právě pracuje. Výhodou je, že uživatel by mohl mezi identitami na telefonu přepínat stejně jednoduše jako mezi aplikacemi. Každá identita by měla přístup ke všem schopnostem telefonu v době, kdy jde o aktivní jmenný prostor, jakmile je ale neaktivní (nebo na pozadí), tak by přístup neměla.
Jmenný prostor se dělá obvyklým způsobem, a to pomocí clone(), setns() nebo unshare(). Jedním překvapením je to, že pro jmenné prostory zařízení nepřibyl nový příznak CLONE_* a příznak CLONE_NEWPID je přetěžován. Tento komentář v kódu vysvětluje důvod:
/* * Couple device namespace semantics with pid-namespace. * It's convenient, and we ran out of clone flags anyway. */
Ačkoliv spojení jmenných prostorů pro PID a zařízení může fungovat, vypadá to, že by se nějaké řešení pro příznaky clone hodilo. Jakmile je proces umístěn do jmenného prostoru zařízení, jakýkoliv open() zařízení, které podporuje jmenné prostory, povede k omezení tohoto zařízení na daný jmenný prostor.
Na určité úrovni je přidávání jmenných prostorů zařízení jen otázkou virtualizování major/minor čísel zařízení, aby každý jmenný prostor měl vlastní čísla. Čísla major/minor v jmenném prostoru odpovídají ovladači načtenému pro daný jmenný prostor. Ovladače, které mohou být dostupné vícero jmenným prostorům, budou muset být upraveny tak, aby jmenné prostory přímo podporovaly. U některých ovladačů, například těch, co nemají žádný skutečný stav (např. u Androidu subsystém LED nebo subsystém podsvětlení/LCD), by změny byly minimální – vlastně jen takový test. Pokud je jmenný prostor obsahující zařízení aktivní, tak pokračuj, jinak požadované změny ignoruj.
Zařízení jsou ale někdy stavová. Není jen tak možné přepnout v půlce posílání dat framebufferu (nebo proudy smíchat) a očekávat, že obsah obrazovky bude v pořádku. Proto ovladače a subsystémy budou muset podporovat přepínání. Například framebuffer by měl na obrazovce ukazovat jen změny od aktivního jmenného prostoru, ale ukládat si změny od jmenného prostoru na pozadí, aby po přepnutí tyto změny byly zobrazeny.
Laadan a jeho kolegové z Cellroxu vytvořili sadu patchů pro jádro na emulátoru Androidu (goldfish). Je tam také dosti podrobný popis patchů a změn udělaných u stavových i bezstavových zařízení. Vytvořili také demo pro Android, kde se přepíná mezi běžícím telefonem a aplikací, která ukazuje měnící se barvy.
Moc komentářů se na toto téma zatím nevyrojilo. Na jednu stranu dává smysl moci virtualizovat všechna zařízení v systému, na druhou stranu to znamená, že se hodně ovladačů bude muset upravit. Mohou se vyskytnout i určité „směrovací“ problémy – když zazvoní telefon, který jmenný prostor se o to postará? Existující API pro přepínání jmenných prostorů v podobě proof-of-concept bude také ještě potřebovat trochu pozornosti.
I když může jít o užitečnou funkčnost, může to také způsobit velkou vlnu změn v ovladačích. Jak snadno se jmenné prostory zařízení dostanou do hlavní řady jádra, bude dost možná záviset na tom, jaká další využití se pro toto najdou. Hlavní změny pro podporu funkčnosti ale nejsou veliké, takže přepínání identit na telefonu bude možná nakonec přece jen stačit.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: