最小限のシステム ユーティリティ セット BusyBox 1.31 のリリース

から提出された パッケージリリース ビジーボックス 1.31 標準 UNIX ユーティリティのセットを実装し、単一の実行可能ファイルとして設計され、設定サイズが 1 MB 未満でシステム リソースの消費を最小限に抑えるように最適化されています。 新しいブランチ 1.31 の最初のリリースは不安定版として位置付けられており、完全な安定化はバージョン 1.31.1 で提供され、約 2 か月以内に提供される予定です。 プロジェクト コードは GPLvXNUMX ライセンスに基づいて配布されます。

BusyBox のモジュール的な性質により、パッケージに実装された任意のユーティリティ セットを含む 1.30 つの統合された実行可能ファイルを作成できます (各ユーティリティは、このファイルへのシンボリック リンクの形式で利用できます)。 ユーティリティのコレクションのサイズ、構成、および機能は、アセンブリが実行される組み込みプラットフォームのニーズと機能に応じて変更できます。 このパッケージは自己完結型です。uclibc を使用して静的にビルドする場合、Linux カーネル上に動作するシステムを作成するには、/dev ディレクトリにいくつかのデバイス ファイルを作成し、構成ファイルを準備するだけで済みます。 以前のリリース 1.31 と比較して、一般的な BusyBox 86 アセンブリの RAM 消費量は 1008478 バイト減少しました (1008392 バイトから XNUMX バイトに)。

BusyBox は、ファームウェアにおける GPL 違反との戦いにおける主要なツールです。 BusyBox 開発者を代表する Software Freedom Conservancy (SFC) と Software Freedom Law Center (SFLC) は、両方ともを通じて 裁判所、そしてこのように 結論 法廷外合意は、GPL プログラムのソース コードへのアクセスを提供しない企業に繰り返し影響を与えることに成功してきました。 同時に、BusyBox の作者は次のことに最善を尽くしています。 そのような保護に反対し、それが彼のビジネスを台無しにすると信じています。

BusyBox 1.31 では次の変更点が強調表示されます。

  • 新しいコマンドを追加しました: ts (TSP (タイムスタンプ プロトコル) プロトコルのクライアントとサーバーの実装) および i2ctransfer (I2C メッセージの作成と送信)。
  • DHCP オプションのサポートを udhcp に追加しました 100 IPv101 の場合は (タイム ゾーン情報) と 6 (TZ データベース内のタイム ゾーン名)。
  • udhcpd のクライアントへの静的ホスト名バインディングのサポートが追加されました。
  • アッシュ シェルとハッシュ シェルは、数値リテラル「BASE#nnnn」を実装します。 ulimit コマンドの実装は、オプション「-i RLIMIT_SIGPENDING」および「-q RLIMIT_MSGQUEUE」を含め、bash 互換になっています。 「wait -n」のサポートが追加されました。 bash 互換の EPOCH 変数を追加しました。
  • ハッシュ シェルは、デフォルトで有効になっているシェル オプションをリストする「$-」変数を実装します。
  • 参照によって値を渡すためのコードがアップストリームから bc に転送され、void 関数のサポートが追加され、最大 36 の ibase 値を処理できるようになりました。
  • brctl では、すべてのコマンドが擬似 FS /sys を使用して動作するように変換されています。
  • fsync ユーティリティと sync ユーティリティのコードがマージされました。
  • httpd の実装が改善されました。 HTTP ヘッダーの処理が改善され、プロキシ モードで動作します。 MIME タイプのリストには、SVG と JavaScript が含まれています。
  • 「-c」オプションがlosetup(ループデバイスに関連付けられたファイルサイズの強制ダブルチェック)に追加され、またパーティションをスキャンするためのオプションも追加されました。 mount と losetup は、/dev/loop-control を使用した作業のサポートを提供します。
  • ntpd では、SLEW_THRESHOLD 値が 0.125 から 0.5 に増加されました。
  • sysctl に null 値を割り当てるためのサポートが追加されました。
  • 監視する「-n SEC」オプションに小数値のサポートが追加されました。
  • mdev をバックグラウンド プロセスとして実行する機能が追加されました。
  • wget ユーティリティは、ログを書き込むファイルを指定する「-o」フラグを実装します。 ダウンロードの開始と完了に関する通知を追加しました。
  • AYT IAC コマンドのサポートが telnetd に追加されました。
  • 「dG」コマンドを vi に追加しました (現在の行からファイルの末尾までの内容を削除します)。
  • オプション「oflag=append」を dd コマンドに追加しました。
  • 個々のスレッドのスキャンを有効にするために、「-H」フラグが最上位のユーティリティに追加されました。

また、XNUMX週間前に 起こった 解放する おもちゃ箱 0.8.1、BusyBox の類似物で、元 BusyBox メンテナーと 配布された BSD ライセンスに基づいて。 Toybox の主な目的は、変更されたコンポーネントのソース コードを開かずに、最小限の標準ユーティリティのセットを使用できる機能をメーカーに提供することです。 これまでのToyboxの能力によると 遅れている BusyBox からの移行ですが、予定されている 188 個の基本コマンドのうち 220 個はすでに実装されています。

Toybox 0.8.1 の革新的な点には次のようなものがあります。

  • Toybox ユーティリティに基づいた環境で Android を構築するのに十分な機能レベルが達成されました。
  • 新しい mcookie および devmem コマンドが含まれており、書き換えられた tar、gunzip、および zcat コマンドは test ブランチから移動されています。
  • vi の新しい実装がテスト用に提案されました。
  • find コマンドは、「-wholename/-iwholename」オプションをサポートするようになりました。
    「-printf」と「-context」;

  • grep に「--exclude-dir」オプションを追加しました。
  • Echo は「-E」オプションをサポートするようになりました。
  • マウントに「UUID」のサポートを追加しました。
  • date コマンドは、TZ 環境変数で指定されたタイム ゾーンを考慮するようになりました。
  • 相対範囲 (+N) のサポートを sed に追加しました。
  • ps、top、iotop の出力の読みやすさが向上しました。

出所: オープンネット.ru

コメントを追加します