Vydanie minimalistickej sady systémových utilít BusyBox 1.31

Predloženej vydanie balíka BusyBox 1.31 s implementáciou sady štandardných UNIXových utilít, navrhnutých ako jeden spustiteľný súbor a optimalizovaných pre minimálnu spotrebu systémových prostriedkov s nastavenou veľkosťou menšou ako 1 MB. Prvé vydanie novej vetvy 1.31 je umiestnené ako nestabilné, plná stabilizácia bude poskytnutá vo verzii 1.31.1, ktorá sa očakáva približne o mesiac. Kód projektu je distribuovaný pod licenciou GPLv2.

Modulárny charakter BusyBoxu umožňuje vytvoriť jeden jednotný spustiteľný súbor obsahujúci ľubovoľnú sadu utilít implementovaných v balíku (každá utilita je dostupná vo forme symbolického odkazu na tento súbor). Veľkosť, zloženie a funkčnosť kolekcie utilít sa môže meniť v závislosti od potrieb a možností embedded platformy, pre ktorú sa montáž realizuje. Balík je samostatný; keď je zostavený staticky pomocou uclibc, na vytvorenie fungujúceho systému nad jadrom Linuxu stačí vytvoriť niekoľko súborov zariadenia v adresári /dev a pripraviť konfiguračné súbory. V porovnaní s predchádzajúcim vydaním 1.30 sa spotreba RAM typickej zostavy BusyBox 1.31 znížila o 86 bajtov (z 1008478 na 1008392 bajtov).

BusyBox je hlavným nástrojom v boji proti porušovaniu GPL vo firmvéri. Software Freedom Conservancy (SFC) a Software Freedom Law Center (SFLC) v mene vývojárov BusyBox prostredníctvom súd, a týmto spôsobom Záverečná mimosúdne dohody opakovane úspešne ovplyvnili spoločnosti, ktoré neposkytujú prístup k zdrojovým kódom programov GPL. Autor BusyBoxu zároveň robí maximum predmety proti takejto ochrane – v domnení, že mu to kazí biznis.

Nasledujúce zmeny sú zvýraznené v BusyBox 1.31:

  • Pridané nové príkazy: ts (implementácia klienta a servera pre protokol TSP (Time-Stamp Protocol)) a i2ctransfer (tvorba a odosielanie I2C správ);
  • Pridaná podpora pre možnosti DHCP do udhcp 100 (informácie o časovom pásme) a 101 (názov časového pásma v databáze TZ) pre IPv6;
  • Pridaná podpora pre statické väzby názvu hostiteľa na klientov v udhcpd;
  • Popolové a tiché škrupiny implementujú číselné literály "BASE#nnnn". Implementácia príkazu ulimit bola kompatibilná s bash, vrátane možností „-i RLIMIT_SIGPENDING“ a „-q RLIMIT_MSGQUEUE“. Pridaná podpora pre "wait -n". Pridané premenné EPOCH kompatibilné s bash;
  • Hush shell implementuje premennú "$-", ktorá uvádza štandardne povolené možnosti shellu;
  • Kód na odovzdávanie hodnôt odkazom bol prenesený do bc z upstreamu, bola pridaná podpora pre funkcie void a schopnosť pracovať s hodnotami ibase až 36;
  • V brctl boli všetky príkazy skonvertované na prácu pomocou pseudo-FS /sys;
  • Kód nástrojov fsync a sync bol zlúčený;
  • Implementácia httpd bola vylepšená. Vylepšené spracovanie hlavičiek HTTP a práca v režime proxy. Zoznam typov MIME zahŕňa SVG a JavaScript;
  • Do Lostup bola pridaná možnosť „-c“ (vynútená dvojitá kontrola veľkosti súboru súvisiaceho so zariadením slučky), ako aj možnosť skenovania oddielov. mount a losetup poskytujú podporu pre prácu pomocou /dev/loop-control;
  • V ntpd bola hodnota SLEW_THRESHOLD zvýšená z 0.125 na 0.5;
  • Pridaná podpora pre priraďovanie hodnôt null k sysctl;
  • Pridaná podpora pre zlomkové hodnoty v možnosti „-n SEC“ na sledovanie;
  • Pridaná možnosť spustiť mdev ako proces na pozadí;
  • Pomocný program wget implementuje príznak „-o“ na určenie súboru, do ktorého sa má zapísať protokol. Pridané upozornenia o začatí a dokončení sťahovania;
  • Pridaná podpora pre príkaz AYT IAC do telnetd;
  • Pridaný príkaz 'dG' do vi (vymazanie obsahu od aktuálneho riadku po koniec súboru);
  • Pridaná voľba 'oflag=append' do príkazu dd;
  • Do hlavného nástroja bol pridaný príznak '-H', ktorý umožňuje režim skenovania pre jednotlivé vlákna.

Tiež pred dvoma týždňami uskutočnilo sa uvoľnenie Toybox 0.8.1, analóg BusyBoxu, vyvinutý bývalým správcom BusyBoxu a distribuované pod licenciou BSD. Hlavným účelom Toyboxu je poskytnúť výrobcom možnosť používať minimalistickú sadu štandardných nástrojov bez otvárania zdrojového kódu upravených komponentov. Podľa doterajších možností Toyboxu zaostáva z BusyBoxu, ale už bolo implementovaných 188 základných príkazov z 220 plánovaných.

Medzi inovácie Toybox 0.8.1 môžeme poznamenať:

  • Dosiahla sa úroveň funkčnosti, ktorá je dostatočná na zostavenie Androidu v prostredí založenom na obslužných programoch Toybox.
  • Zahrnuté sú nové príkazy mcookie a devmem a prepísané príkazy tar, gunzip a zcat sú presunuté z testovacej vetvy.
  • Na testovanie bola navrhnutá nová implementácia vi.
  • Príkaz find teraz podporuje voľby "-celý názov/-icelý názov".
    "-printf" a "-kontext";

  • Do grep bola pridaná možnosť „--exclude-dir“;
  • Echo teraz podporuje možnosť „-E“.
  • Pridaná podpora "UUID" pre pripojenie.
  • Príkaz dátum teraz zohľadňuje časové pásmo špecifikované v premennej prostredia TZ.
  • Pridaná podpora pre relatívne rozsahy (+N) do sed.
  • Vylepšená čitateľnosť výstupu ps, top a iotop.

Zdroj: opennet.ru

Pridať komentár