Přemýšlíte, jak začít prázdniny? Už v úterý 1. července se bude konat Virtuální Bastlírna, tedy online setkání bastlířů, techniků, vědců i akademiků, kde se ve volné diskuzi probírají novinky ze světa techniky, ale i jiných zajímavých témat.
Za poslední měsíc jsme byli svědky plamenů několika raket. Zatímco malá raketa od Hondy se úspěšně vznesla a opět přistála, raketa od SpaceX se rozhodla letět všemi směry najednou. Díkybohu méně … více »Linus Torvalds zmínil, že souborový systém Bcachefs zřejmě odstraní z mainline Linuxu v začleňovacím okně pro vydání 6.17. Kent Overstreet mu totiž posílá kód s novou funkcionalitou i pro začlenění do kandidátů na vydání, kdy očekává pouze opravy chyb. Ken Overstreet byl již dříve z vývoje vyloučen kvůli konfliktní komunikaci.
Ministerstvo průmyslu a obchodu propaguje Microsoft. Ten ve spolupráci s Ministerstvem průmyslu a obchodu spouští AI National Skilling Plan v ČR. "Iniciativa Microsoftu přináší konkrétní a praktickou podporu právě tam, kde ji nejvíc potřebujeme – do škol, firem i veřejné správy.", říká ministr průmyslu a obchodu Lukáš Vlček.
Jste český ISP? Vyplněním krátkého dotazníku můžete pomoci nasměrovat vývoj nové generace routerů Turris Omnia [𝕏].
Celkové tržby společnosti Canonical za rok 2024 byly 292 milionů dolarů (pdf). Za rok 2023 to bylo 251 milionů dolarů.
Byla vydána verze 1.88.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Distribuce Tails specializující se ochranu online soukromí uživatele byla vydána ve verzi 6.17. Mimo jiné aktualizuje Tor Browser (14.5.4) a opravuje několik chyb.
Ubuntu nově pro testování nových verzí vydává měsíční snapshoty. Dnes vyšel 2. snapshot Ubuntu 25.10 (Questing Quokka).
Město Lyon posiluje svou digitální suverenitu a postupně nahrazuje software od společnosti Microsoft bezplatnými alternativami, zejména OnlyOffice pro kancelářské aplikace a Linux a PostgreSQL pro systémy a databáze.
Evropská občanská iniciativa Stop Destroying Videogames se snaží o to, aby vydavatelé, kteří spotřebitelům v Evropské unii prodávají videohry nebo na ně udělují licence, měli povinnost tyto hry ponechat ve funkčním (hratelném) stavu i po ukončení podpory ze své strany. Podpořit podpisem tuto iniciativu můžete v Systému pro online sběr podpisů.
Embedded Bits ukazuje video, které předvádí boot linuxového jádra za méně než 1 sekundu. Jde o projekt swiftBoot firmy MPC Data. Použitý hardware: ARM cortex-a8 na 500MHz vývojové desce Texas Instruments OMAP3530 EVM. Jádro 2.6.29 a souborový systém pro flash NAND. Zařízení po bootu spustí aplikaci na zachytávání videa z kamery a toto video zobrazí na LCD. To vše za méně než sekundu.
Tiskni
Sdílej:
Asi tak. Mně taky Linux bootuje (od zavaděče do spuštění initu) do několika (asi tak 3) sekund. Nejdéle trvá připojení souborového systému. Prostě staré PC, kde je téměř vše napevno připojeno a zakompilováno do jádra.
Zbytek (init) je pouze otázka obecnosti startovacích skriptů. Když jsem si psal vlastní skripty (síť, ssh, iptables, alsa, hwclock, připojení další souborových systémů), tak jsem měl login za dalších 7 sekund.
Teď používám openrc a čas se natáhl asi o dalších 10 sekund. Jenže to mi je stejně jedno, protože uprostřed se systém zastaví, protože chce heslo na rozšifrování LVM.
Pak je ale problém v architektuře (případně jejích ovladačích v jádře). Já s vestavěnými systémy mám malé zkušenosti, ale co jsem si všiml, tak problém byl spíš v inicializaci daného hardwaru (pomalé prohledávání mtd, samé čekání na timeouty a především zpomalený výstup přes sériovou konzolu).
Nezpochybňuji, že na vestavěných systémech to je úspěch. Pouze ukazuji, že obecně to žádný rekord není, protože existují stroje, kde takové časy lze vykouzlit.
(Nasadil jste mi brouka do hlavy, a asi si to budu muset změřit.)
Dovoluji si vám oznámit, že hardware onoho testovaného stroje má zásadně více, než 500MHz a že kernel sám o sobě má kolem 200-300KB (gzip) místo obvyklých 1.5+MB. Není tam prakticky nic, co by muselo, není tam podpora pro MD, žádné extra video drivery, network drivery, není tam prakticky skoro vůbec nic.
S dobou bootu jsem se asi trochu sekl, počítám to od doby, kdy kernel začne vypisovat první printk(), do té doby těžko odlišit, co je ještě kód bootloaderu a co už kernel. Boot je skutečně "jen" probliknutím, než se spustí shell. Upozorňuji, že je vše v paměti (initramfs) a kernel při startu inicializuje leda tak paměť, video drivery a PS/2 keyboard. Podpora pro PCI, USB, jakýkoli storage (IDE, SATA, ..), filesystémů (včetně tmpfs, root jede z ramfs) a spoustu dalších věcí chybí.
K tomu, abych dokázal Ctiradovi, že Linux umí bootovat za méně, než 5 sekund
Upřímně jsem takový systém doopravdy měl, postupně ta podpora samozřejmě přibyla, stejně tak komprimované /lib/modules se všemi drivery pro disky a síťové karty, oháčkovaný busybox, portmap, NFS (včetně utility na export) a mke2fs - vše s uClibc (u pár věcí jsem musel přepisovat GNUismy a obsolete věci v kódu.
V současné době je to ~6MB userspace a ~600KB kernel a slouží jako odlehčený PXE server s podporou NFS a pár celkem unikátními vlastnostmi ("kooperace" s jiným autoritativním DHCP serverem na síti - užitečné při hromadném bootu něčeho, co si má natáhnout kernel+initrd z PXE serveru, ale co se má po nabootování připojit do klasické sítě s krabičkovým routerem). Userspace po dekompresi má okolo 7MB (díky squashfs /lib/modules a /usr/bin), nicméně do 8MB RAM u (hodně) starých mašin se to asi nevleze díky dekomprimovanému kernelu. Ještě bych mohl memtest86+ ("proof-of-concept" a default v pxelinux.cfg) zkomprimovat, ale 160KB -> 90KB zas toliko není
Tvořil jsem to víceméně ve volném čase, v současné chvíli je to asi půl roku v zapomnění, mám v plánu se k tomu někdy vrátit, dodělat TeX dokumentaci, sjednotit nějak "SDK" a build procedury (v současnosti 2 qemu systémy a busybox+buildroot s configy na dalším linux serveru), NFS write locking, apod.
Jen tak pro zajímavost - našel jsem někde v koši fragment toho, co jsem používal jako "poznámkový blok" pro kompilaci 3rd-party věcí:
export PATH="/usr/src/buildroot/build_i486/staging_dir/usr/bin/:$PATH" nfs-tools: ./configure \ --target=i486-linux \ --host=i486-linux \ --build=i486-pc-linux-gnu \ --disable-nfsv4 \ --disable-gss \ --disable-tirpc \ --disable-uuid \ --disable-mountconfig \ --without-tcp-wrappers \ CFLAGS="-march=i486 -Os -pipe -fomit-frame-pointer" make portmap: CFLAGS="-march=i486 -Os -pipe -fomit-frame-pointer" \ make CC="i486-linux-gcc" NO_TCP_WRAPPER=yes DAEMON_UID=0 DAEMON_GID=0 e2fsprogs: ./configure \ --target=i486-linux \ --host=i486-linux \ --build=i486-pc-linux-gnu \ --enable-verbose-makecmds \ --disable-compression \ --disable-htree \ --disable-elf-shlibs \ --disable-bsd-shlibs \ --disable-profile \ --disable-checker \ --disable-jbd-debug \ --disable-blkid-debug \ --disable-testio-debug \ --disable-debugfs \ --disable-imager \ --disable-resizer \ --disable-fsck \ --disable-e2initrd-helper \ --disable-tls \ --disable-uuidd \ --disable-nls \ --disable-rpath \ CFLAGS="-march=i486 -Os -pipe -fomit-frame-pointer" make
Ten mke2fs tam je vesměs jen kvůli NFS, ramfs/tmpfs mi nešel exportovat ani přes vygooglené triky (přes fsid).
Ale dost OT