Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za červen (YouTube).
Libreboot (Wikipedie) – svobodný firmware nahrazující proprietární BIOSy, distribuce Corebootu s pravidly pro proprietární bloby – byl vydán ve verzi 25.06 "Luminous Lemon". Přidána byla podpora desek Acer Q45T-AM a Dell Precision T1700 SFF a MT. Současně byl ve verzi 25.06 "Onerous Olive" vydán také Canoeboot, tj. fork Librebootu s ještě přísnějšími pravidly.
Licence GNU GPLv3 o víkendu oslavila 18 let. Oficiálně vyšla 29. června 2007. Při té příležitosti Richard E. Fontana a Bradley M. Kuhn restartovali, oživili a znovu spustili projekt Copyleft-Next s cílem prodiskutovat a navrhnout novou licenci.
Svobodný nemocniční informační systém GNU Health Hospital Information System (HIS) (Wikipedie) byl vydán ve verzi 5.0 (Mastodon).
Open source mapová a navigační aplikace OsmAnd (OpenStreetMap Automated Navigation Directions, Wikipedie, GitHub) oslavila 15 let.
Vývojář Spytihněv, autor počítačové hry Hrot (Wikipedie, ProtonDB), pracuje na nové hře Brno Transit. Jedná se o příběhový psychologický horor o strojvedoucím v zácviku, uvězněném v nejzatuchlejším metru východně od všeho, na čem záleží. Vydání je plánováno na čtvrté čtvrtletí letošního roku.
V uplynulých dnech byla v depu Českých drah v Brně-Maloměřicích úspěšně dokončena zástavba speciální antény satelitního internetu Starlink od společnosti SpaceX do jednotky InterPanter 660 004 Českých drah. Zástavbu provedla Škoda Group. Cestující se s InterPanterem, vybaveným vysokorychlostním satelitním internetem, setkají například na linkách Svitava Brno – Česká Třebová – Praha nebo Moravan Brno – Břeclav – Přerov – Olomouc.
Byla vydána nová verze 8.7.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.
Před 30 lety, k 1. 7. 1995, byl v ČR liberalizován Internet - tehdejší Eurotel přišel o svou exkluzivitu a mohli začít vznikat první komerční poskytovatelé přístupu k Internetu [𝕏].
Byla vydána (𝕏) nová verze 7.4 open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.
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