Liberigo de minimumisma aro de sistemaj iloj BusyBox 1.31

Enkondukita pakaĵeldono BusyBox 1.31 kun la efektivigo de aro de normaj UNIX-servaĵoj, dizajnitaj kiel ununura rulebla dosiero kaj optimumigita por minimuma konsumo de sistemresursoj kun fiksita grandeco de malpli ol 1 MB. La unua eldono de la nova branĉo 1.31 estas poziciigita kiel malstabila, plena stabiligo estos disponigita en versio 1.31.1, kiu estas atendita post proksimume monato. La projektkodo estas distribuita sub la permesilo GPLv2.

La modula naturo de BusyBox ebligas krei unu unuigitan ruleblan dosieron enhavantan arbitran aron de iloj efektivigitaj en la pakaĵo (ĉiu ilo disponeblas en la formo de simbola ligo al ĉi tiu dosiero). La grandeco, konsisto kaj funkcieco de la kolekto de utilecoj povas esti variitaj depende de la bezonoj kaj kapabloj de la enigita platformo por kiu la asembleo estas efektivigita. La pakaĵo estas memstara; kiam konstruita statike kun uclibc, por krei funkciantan sistemon super la Linukso-kerno, vi nur bezonas krei plurajn aparatdosierojn en la dosierujo /dev kaj prepari agordajn dosierojn. Kompare kun la antaŭa eldono 1.30, la RAM-konsumo de la tipa BusyBox 1.31-asembleo malpliiĝis je 86 bajtoj (de 1008478 ĝis 1008392 bajtoj).

BusyBox estas la ĉefa ilo en la batalo kontraŭ GPL-malobservoj en firmvaro. La Software Freedom Conservancy (SFC) kaj Software Freedom Law Center (SFLC) nome de la BusyBox-programistoj, ambaŭ tra kortumo, kaj tiamaniere konkludoj eksterjuĝejaj interkonsentoj plurfoje sukcese influis kompaniojn, kiuj ne donas aliron al la fontkodo de GPL-programoj. Samtempe, la aŭtoro de BusyBox faras sian eblon objektoj kontraŭ tia protekto — kredante, ke ĝi ruinigas lian komercon.

La sekvaj ŝanĝoj estas emfazitaj en BusyBox 1.31:

  • Aldonitaj novaj komandoj: ts (efektivigo de kliento kaj servilo por la protokolo TSP (Time-Stamp Protocol)) kaj i2ctransfer (kreado kaj sendo de mesaĝoj I2C);
  • Aldonita subteno por DHCP-opcioj al udhcp 100 (horzoninformoj) kaj 101 (horzonnomo en la TZ-datumbazo) por IPv6;
  • Aldonita subteno por statikaj gastnomaj ligoj al klientoj en udhcpd;
  • La cindro kaj hush-ŝeloj efektivigas la numerajn literalojn "BASE#nnnn". La efektivigo de la komando ulimit fariĝis bash kongrua, inkluzive de la opcioj "-i RLIMIT_SIGPENDING" kaj "-q RLIMIT_MSGQUEUE". Aldonita subteno por "wait -n". Aldonitaj bash-kongruaj EPOCH-variabloj;
  • La hush-ŝelo efektivigas "$-" variablon kiu listigas la ŝelajn opciojn ebligitajn defaŭlte;
  • La kodo por pasi valorojn laŭ referenco estis transdonita al bc de kontraŭflue, subteno por malplenaj funkcioj estis aldonita kaj la kapablo labori kun ibase-valoroj ĝis 36;
  • En brctl, ĉiuj komandoj estis konvertitaj por labori uzante la pseŭdo-FS /sys;
  • La kodo de la fsync kaj sync iloj estis kunfandita;
  • Efektivigo de httpd estis plibonigita. Plibonigita prilaborado de HTTP-kapoj kaj laboro en prokura reĝimo. La listo de MIME-tipoj inkluzivas SVG kaj JavaScript;
  • La opcio "-c" estis aldonita al perdigo (devigita duobla kontrolo de la dosiergrandeco asociita kun la bukla aparato), same kiel opcio por skanado de sekcioj. mount kaj losetup provizas subtenon por labori uzante /dev/loop-control;
  • En ntpd, la valoro SLEW_THRESHOLD estis pliigita de 0.125 al 0.5;
  • Aldonita subteno por asignado de nulaj valoroj al sysctl;
  • Aldonita subteno por frakciaj valoroj en la opcio "-n SEC" por rigardi;
  • Aldonis la kapablon ruli mdev kiel fona procezo;
  • La wget ilo efektivigas la "-o" flagon por specifi la dosieron al kiu skribi la protokolon. Aldonitaj sciigoj pri la komenco kaj finiĝo de elŝutoj;
  • Aldonita subteno por la komando AYT IAC al telnetd;
  • Aldonita 'dG' komando al vi (forigi enhavon de aktuala linio ĝis fino de dosiero);
  • Aldonita opcio 'oflag=append' al la dd komando;
  • La flago '-H' estis aldonita al la supra ilo por ebligi skanadon de individuaj fadenoj.

Ankaŭ antaŭ du semajnoj okazis liberigi Ludilokesto 0.8.1, analogo de BusyBox, evoluigita fare de iama BusyBox prizorganto kaj distribuita sub BSD-licenco. La ĉefa celo de Toybox estas provizi fabrikistojn per la kapablo uzi minimumisman aron de normaj utilecoj sen malfermi la fontkodon de modifitaj komponantoj. Laŭ Toybox-kapabloj ĝis nun postrestinte de BusyBox, sed 188 bazaj komandoj el 220 planitaj jam estis efektivigitaj.

Inter la novigoj de Toybox 0.8.1 ni povas noti:

  • Nivelo de funkcieco estis atingita, kiu sufiĉas por konstrui Android en medio bazita sur Toybox-utiloj.
  • La novaj komandoj mcookie kaj devmem estas inkluzivitaj, kaj la reskribitaj komandoj tar, gunzip kaj zcat estas movitaj de la testa branĉo.
  • Nova efektivigo de vi estis proponita por testado.
  • La find-komando nun subtenas la opciojn "-wholename/-iwholename".
    "-printf" kaj "-kunteksto";

  • Aldonita "--exclude-dir" opcio al grep;
  • Eĥo nun subtenas la opcion "-E".
  • Aldonita "UUID" subteno por munti.
  • La dato-komando nun konsideras la horzonon specifitan en la mediovariablo TZ.
  • Aldonita subteno por relativaj intervaloj (+N) al sed.
  • Plibonigita legebleco de ps, supro kaj iotop eligo.

fonto: opennet.ru

Aldoni komenton