A BusyBox 1.31 rendszer segédprogramok minimalista készletének kiadása

Által benyújtott csomag kiadás BusyBox 1.31 szabványos UNIX segédprogramok készletének megvalósításával, egyetlen végrehajtható fájlként kialakítva, és a rendszererőforrások minimális fogyasztására optimalizálva 1 MB-nál kisebb beállított méret esetén. Az új 1.31-es ág első kiadása instabilnak tekinthető, a teljes stabilizálást az 1.31.1-es verzió fogja biztosítani, ami körülbelül egy hónap múlva várható. A projekt kódja a GPLv2 licenc alatt kerül terjesztésre.

A BusyBox moduláris jellege lehetővé teszi egyetlen, a csomagban implementált segédprogramok tetszőleges halmazát tartalmazó egységes végrehajtható fájl létrehozását (minden segédprogram elérhető egy szimbolikus hivatkozás formájában ehhez a fájlhoz). A segédprogramok gyűjteményének mérete, összetétele és funkcionalitása a beágyazott platform igényeitől és képességeitől függően változhat, amelyhez az összeszerelést végzik. A csomag önálló, ha statikusan uclibc-vel van felépítve, ahhoz, hogy működő rendszert hozzon létre a Linux kernelen, csak több eszközfájlt kell létrehoznia a /dev könyvtárban, és előkészíteni a konfigurációs fájlokat. Az előző 1.30-as kiadáshoz képest a tipikus BusyBox 1.31-es szerelvény RAM-fogyasztása 86 bájttal csökkent (1008478-ról 1008392 bájtra).

A BusyBox a fő eszköz a firmware GPL-sértései elleni küzdelemben. A Software Freedom Conservancy (SFC) és a Software Freedom Law Center (SFLC) a BusyBox fejlesztői nevében, mindkettőn keresztül bíróság, és így következtetéseket peren kívüli megállapodások többször is sikeresen befolyásolták azokat a cégeket, amelyek nem biztosítanak hozzáférést a GPL programok forráskódjához. Ugyanakkor a BusyBox szerzője mindent megtesz azért tárgyakat az ilyen védelem ellen - hisz ez tönkreteszi az üzletét.

A következő változások vannak kiemelve a BusyBox 1.31-ben:

  • Új parancsok hozzáadva: ts (kliens és szerver megvalósítása a TSP (Time-Stamp Protocol) protokollhoz) és i2ctransfer (I2C üzenetek létrehozása és küldése);
  • A DHCP-beállítások támogatása hozzáadva az udhcp-hez 100 (időzóna információ) és 101 (időzóna neve a TZ adatbázisban) IPv6 esetén;
  • Támogatás hozzáadva a statikus gazdagépnév-összerendelésekhez az ügyfelekhez az udhcpd-ben;
  • Az ash és hush shell a "BASE#nnnn" numerikus literálokat valósítja meg. Az ulimit parancs megvalósítása bash-kompatibilis lett, beleértve a „-i RLIMIT_SIGPENDING” és „-q RLIMIT_MSGQUEUE” opciókat. Hozzáadott támogatás a "wait -n"-hez. Bash-kompatibilis EPOCH változók hozzáadva;
  • A hush shell egy "$-" változót valósít meg, amely felsorolja az alapértelmezés szerint engedélyezett shell opciókat;
  • Az értékek hivatkozással történő átadásának kódja átkerült a bc-be az upstream-ről, hozzáadtuk a void függvények támogatását, és lehetővé vált az ibase értékekkel való munka 36-ig;
  • A brctl-ben az összes parancsot működőképessé alakították át a pszeudo-FS /sys használatával;
  • Az fsync és a sync segédprogramok kódja összevonva;
  • A httpd megvalósítása javult. A HTTP-fejlécek jobb feldolgozása és a proxy módban végzett munka. A MIME típusok listája tartalmazza az SVG-t és a JavaScriptet;
  • A „-c” opció hozzáadásra került a losstuphoz (a hurokeszközhöz társított fájlméret kényszerített kétszeri ellenőrzése), valamint a partíciók vizsgálatára szolgáló opció. a mount és a losstup támogatja a /dev/loop-control használatával történő munkavégzést;
  • Az ntpd-ben a SLEW_THRESHOLD értéke 0.125-ről 0.5-re nőtt;
  • Hozzáadott támogatás a null értékek hozzárendeléséhez a sysctl-hez;
  • A töredékértékek támogatása az „-n SEC” opcióban a nézéshez;
  • Az mdev háttérfolyamatként való futtatásának képessége hozzáadva;
  • A wget segédprogram az „-o” jelzőt alkalmazza, hogy meghatározza azt a fájlt, amelybe a naplót írni kell. Hozzáadott értesítések a letöltések kezdetéről és befejezéséről;
  • Támogatás hozzáadva az AYT IAC parancshoz a telnetd-hez;
  • 'dG' parancs hozzáadva a vi-hez (tartalom törlése az aktuális sorból a fájl végére);
  • Az 'oflag=append' opció hozzáadva a dd parancshoz;
  • A „-H” jelző a legfelső segédprogramhoz került, hogy lehetővé tegye az egyes szálak vizsgálatát.

Ráadásul két hete került sor kiadás Játékdoboz 0.8.1, a BusyBox analógja, amelyet a BusyBox korábbi karbantartója fejlesztett ki és megosztott BSD licenc alatt. A Toybox fő célja, hogy a gyártók számára lehetővé tegye a szabványos segédprogramok minimalista készletének használatát anélkül, hogy megnyitnák a módosított összetevők forráskódját. A Toybox eddigi képességei szerint lemaradva BusyBoxból, de a tervezett 188 alapparancsból 220 már megvalósult.

A Toybox 0.8.1 újításai között megjegyezhetjük:

  • Olyan szintű funkcionalitást sikerült elérni, amely elegendő ahhoz, hogy az Androidot Toybox segédprogramokon alapuló környezetben építsék.
  • Az új mcookie és devmem parancsok szerepelnek benne, az átírt tar, gunzip és zcat parancsok pedig átkerülnek a tesztágból.
  • A vi egy új megvalósítását javasolták tesztelésre.
  • A find parancs mostantól támogatja a "-wholename/-iwholename" opciókat.
    "-printf" és "-context";

  • "--exclude-dir" opció hozzáadva a grephez;
  • Az Echo mostantól támogatja a "-E" opciót.
  • "UUID" támogatás hozzáadva a csatlakoztatáshoz.
  • A dátum parancs most figyelembe veszi a TZ környezeti változóban megadott időzónát.
  • Hozzáadott relatív tartományok (+N) támogatása a sed-hez.
  • A ps, top és iotop kimenet jobb olvashatósága.

Forrás: opennet.ru

Hozzászólás