Tso tawm cov txheej txheem minimalistic ntawm cov khoom siv hluav taws xob BusyBox 1.34

Kev tso tawm ntawm pob BusyBox 1.34 tau nthuav tawm nrog kev siv ntawm cov txheej txheem UNIX cov khoom siv hluav taws xob, tsim los ua ib cov ntaub ntawv ua tau zoo thiab ua kom zoo rau kev siv tsawg kawg ntawm cov peev txheej nrog cov txheej txheem tsawg dua 1 MB. Thawj qhov kev tso tawm tshiab 1.34 ceg yog qhov chaw tsis ruaj khov; tag nrho kev ruaj ntseg yuav muab rau hauv version 1.34.1, uas xav tau nyob rau hauv ib hlis. Txoj haujlwm code raug faib raws li daim ntawv tso cai GPLv2.

Lub modular xwm ntawm BusyBox ua rau nws muaj peev xwm los tsim ib tug unified executable cov ntaub ntawv uas muaj ib tug arbitrary set ntawm cov nqi hluav taws xob siv nyob rau hauv lub pob (txhua qhov hluav taws xob muaj nyob rau hauv daim ntawv ntawm ib tug cim txuas rau cov ntaub ntawv no). Qhov loj, muaj pes tsawg leeg thiab kev ua haujlwm ntawm kev sau cov khoom siv hluav taws xob tuaj yeem sib txawv nyob ntawm qhov xav tau thiab muaj peev xwm ntawm lub platform embedded uas lub rooj sib txoos tau ua. Lub pob yog nyob ntawm tus kheej; thaum tsim statically nrog uclibc, los tsim ib qho kev ua haujlwm nyob rau sab saum toj ntawm Linux kernel, koj tsuas yog yuav tsum tsim ntau cov ntaub ntawv ntaus ntawv hauv / dev phau ntawv thiab npaj cov ntaub ntawv teeb tsa. Piv nrog rau qhov kev tso tawm dhau los 1.33, qhov kev siv RAM ntawm qhov raug BusyBox 1.34 sib dhos tau nce los ntawm 9620 bytes (los ntawm 1032724 txog 1042344 bytes).

BusyBox yog cov cuab yeej tseem ceeb hauv kev tawm tsam GPL kev ua txhaum cai hauv firmware. Lub Software Freedom Conservancy (SFC) thiab Software Freedom Law Center (SFLC), sawv cev ntawm BusyBox cov neeg tsim khoom, tau rov ua tiav kev cuam tshuam rau cov tuam txhab uas tsis muab kev nkag mus rau qhov chaws ntawm GPL cov kev pab cuam, ob qho tib si los ntawm cov tsev hais plaub thiab los ntawm kev tawm mus. - tsev hais plaub cog lus. Nyob rau tib lub sijhawm, tus sau ntawm BusyBox tau pom zoo rau qhov kev tiv thaiv zoo li no - ntseeg tias nws rhuav tshem nws txoj kev lag luam.

Cov kev hloov pauv hauv qab no tau qhia hauv BusyBox 1.34:

  • Ntxiv cov khoom siv tshiab ascii nrog cov lus sib tham ntawm ASCII cov npe cim.
  • Ntxiv cov nqi hluav taws xob tshiab crc32 rau kev suav cov tshev nyiaj.
  • Lub built-in http server txhawb kev DELETE, PUT thiab OPTIONS txoj kev.
  • Udhcpc muab lub peev xwm los hloov lub neej ntawd network interface lub npe.
  • Kev siv TLS raws tu qauv tam sim no txhawb nqa elliptic nkhaus secp256r1 (P256)
  • Txoj kev loj hlob ntawm cov tshauv thiab hush command shells tau txuas ntxiv mus. Hauv kev nrawm, kev tuav ntawm ^D cov lus txib tau raug coj mus rau hauv txoj kab nrog tus cwj pwm ntawm cov tshauv thiab bash, bash-specific $'str' tsim tau raug siv, thiab ${var/pattern/repl} hloov ua haujlwm tau ua. optimized.
  • Ib feem loj ntawm kev kho thiab kev txhim kho tau ua rau kev siv ntawm awk utility.
  • Ntxiv "-i" kev xaiv rau base32 thiab base64 cov khoom siv kom tsis quav ntsej cov cim tsis raug.
  • Hauv cov khoom siv bc thiab dc, kev tuav ntawm BC_LINE_LENGTH thiab DC_LINE_LENGTH ib puag ncig hloov pauv yog ze rau GNU cov khoom siv.
  • Ntxiv --getra thiab --setra cov kev xaiv rau cov khoom siv blockdev.
  • Qhov kev xaiv "-p" tau ntxiv rau cov khoom siv chattr thiab lsattr. lsattr tau nthuav cov naj npawb ntawm kev txhawb nqa ext2 FS chij.
  • Cov kev xaiv "-n" (lov tes taw overwriting) thiab "-t DIR" (xws li lub hom phiaj directory) tau ntxiv rau cp utility.
  • Hauv cpio, kev tsim kho "cpio -d -p A / B / C" tau raug kho.
  • Qhov kev xaiv "-t HOM" tau ntxiv rau df qhov hluav taws xob (tso txwv cov zis rau ib hom ntaub ntawv tshwj xeeb).
  • Ntxiv -b kev xaiv rau du utility (sib npaug rau '-pom-loj β€”block-size = 1').
  • Ntxiv kev xaiv "-0" rau env nqi hluav taws xob (txiav txhua kab nrog tus cim nrog lej xoom).
  • Qhov "-h" kev xaiv (nyeem tau cov zis) tau ntxiv rau cov khoom siv dawb.
  • Ntxiv kev xaiv "-t" (tsis quav ntsej kev ua tsis tiav) rau ionice utility.
  • Tus ID nkag mus siv tam sim no txhawb LOGIN_TIMEOUT ib puag ncig hloov pauv.
  • Ntxiv cov kev xaiv "-t" (tshwj xeeb rau lub hom phiaj phau ntawv txav mus) thiab "-T" (kho qhov kev sib cav thib ob raws li cov ntaub ntawv) rau mv utility.
  • Qhov kev xaiv "-s SIZE" (tus naj npawb ntawm bytes yuav tsum tau tshem tawm) tau ntxiv rau cov khoom siv hluav taws xob.
  • Qhov kev xaiv "-a" tau ntxiv rau cov khoom siv hluav taws xob (siv CPU affinity rau tag nrho cov txheej txheem xov).
  • Lub sij hawm tawm, sab saum toj, saib thiab ping utilities tam sim no txhawb cov nqi tsis yog tus lej (NN.N).
  • Qhov kev xaiv "-z" tau ntxiv rau uniq utility (siv tus lej xoom-coded ua tus delimiter).
  • Qhov kev xaiv "-t" (cov ntaub ntawv tshawb xyuas) tau ntxiv rau qhov siv hluav taws xob unzip.
  • Tus vi editor tso cai rau siv cov kab lus tsis tu ncua hauv ':s' hais kom ua. Ntxiv qhov kev xaiv expandtab. Kev txhim kho kev siv rau kev txav ntawm cov kab lus, xaiv qhov ntau, thiab tsis hloov pauv.
  • xxd kev siv hluav taws xob siv cov -i (C-style tso zis) thiab -o DISPLAYOFFSET cov kev xaiv.
  • Lub wget utility tso cai ua HTTP 307/308 cov lis dej num rau redirects. Ntxiv FEATURE_WGET_FTP kev xaiv los pab / lov tes taw FTP kev txhawb nqa.
  • Ntxiv "iflag = count_bytes" kev xaiv rau dd utility.
  • Kev txiav hluav taws xob siv cov khoom ua si-tshaj cov kev xaiv "-O OUTSEP", "-D" thiab "-F LIST".

Tau qhov twg los: opennet.ru

Ntxiv ib saib