BusyBox 的模組化特性使得建立一個統一的執行檔成為可能,該檔案包含在套件中實現的任意一組實用程式(每個實用程式都以該檔案的符號連結的形式提供)。實用程式集合的大小、組成和功能可以根據正在執行組裝的嵌入式平台的需求和功能而變化。該軟體包是獨立的;當使用 uclibc 靜態建置時,要在 Linux 核心之上建立一個工作系統,您只需在 /dev 目錄中建立幾個裝置檔案並準備設定檔。與先前的版本 1.30 相比,典型 BusyBox 1.31 組件的 RAM 消耗減少了 86 位元組(從 1008478 位元組減少到 1008392 位元組)。
BusyBox 是對抗韌體中 GPL 違規行為的主要工具。 軟體自由保護協會 (SFC) 和軟體自由法律中心 (SFLC) 代表 BusyBox 開發者,均透過
BusyBox 1.31 中反白顯示了以下變更:
- 新增了新命令:ts(TSP(時間戳協定)的客戶端和伺服器的實作)和 i2ctransfer(建立和傳送 I2C 訊息);
- 為 udhcp 新增了對 DHCP 選項的支持
100 IPv101 的(時區資訊)與 6(TZ 資料庫中的時區名稱); - 在 udhcpd 中新增了對客戶端靜態主機名稱綁定的支援;
- ash 和 hush shell 實作數字文字「BASE#nnnn」。 ulimit 指令的實作已與 bash 相容,包括選項「-i RLIMIT_SIGPENDING」和「-q RLIMIT_MSGQUEUE」。新增了對「wait -n」的支援。新增了 bash 相容的 EPOCH 變數;
- hush shell 實作了一個「$-」變量,該變量列出了預設啟用的 shell 選項;
- 透過引用傳遞值的程式碼從上游轉移到 bc,增加了對 void 函數的支持,並且能夠使用最多 36 個 ibase 值;
- 在 brctl 中,所有命令都已轉換為使用偽 FS /sys 進行工作;
- fsync 和sync 實用程式的程式碼已合併;
- httpd 的實作已改進。改進了 HTTP 標頭的處理並在代理模式下工作。 MIME 類型清單包括 SVG 和 JavaScript;
- losetup 中新增了「-c」選項(強制雙重檢查與循環裝置關聯的檔案大小),以及掃描分割區的選項。 mount 和 losetup 為使用 /dev/loop-control 的工作提供支援;
- 在ntpd中,SLEW_THRESHOLD值已從0.125增加到0.5;
- 新增了對向sysctl分配空值的支援;
- 在“-n SEC”選項中添加了對小數值的支援以進行觀看;
- 新增了將 mdev 作為後台進程運行的功能;
- wget 實用程式實作「-o」標誌來指定要將日誌寫入的檔案。新增了有關下載開始和完成的通知;
- 為 telnetd 新增了對 AYT IAC 命令的支援;
- vi 新增 dG 指令(刪除目前行到文件末端的內容);
- 在 dd 命令中新增了 'oflag=append' 選項;
- '-H' 標誌已新增至 top 公用程式中,以啟用單一執行緒的掃描模式。
另外,兩週前
在 Toybox 0.8.1 的創新中,我們可以注意到:
- 已經實現的功能等級足以在基於 Toybox 實用程式的環境中建立 Android。
- 包含新的 mcookie 和 devmem 命令,並且重寫的 tar、gunzip 和 zcat 命令已從測試分支中移出。
- 已提出 vi 的新實作用於測試。
- find 指令現在支援「-wholename/-iwholename」選項。
“-printf”和“-context”; - 為 grep 新增了“--exclude-dir”選項;
- Echo 現在支援“-E”選項。
- 新增了對掛載的“UUID”支援。
- date 指令現在考慮 TZ 環境變數中指定的時區。
- 為 sed 增加了對相對範圍 (+N) 的支援。
- 提高了 ps、top 和 iotop 輸出的可讀性。
來源: opennet.ru