Rilis seperangkat utilitas sistem minimalis BusyBox 1.31

Disampaikan oleh rilis paket BusyBox 1.31 dengan penerapan serangkaian utilitas UNIX standar, dirancang sebagai satu file yang dapat dieksekusi dan dioptimalkan untuk konsumsi minimal sumber daya sistem dengan ukuran yang ditetapkan kurang dari 1 MB. Rilis pertama cabang baru 1.31 diposisikan sebagai tidak stabil, stabilisasi penuh akan disediakan di versi 1.31.1, yang diharapkan dalam waktu sekitar satu bulan. Kode proyek didistribusikan di bawah lisensi GPLv2.

Sifat modular dari BusyBox memungkinkan untuk membuat satu file eksekusi terpadu yang berisi serangkaian utilitas arbitrer yang diimplementasikan dalam paket (setiap utilitas tersedia dalam bentuk tautan simbolik ke file ini). Ukuran, komposisi, dan fungsionalitas kumpulan utilitas dapat bervariasi tergantung pada kebutuhan dan kemampuan platform tertanam tempat perakitan dilakukan. Paket ini mandiri; ketika dibangun secara statis dengan uclibc, untuk membuat sistem kerja di atas kernel Linux, Anda hanya perlu membuat beberapa file perangkat di direktori /dev dan menyiapkan file konfigurasi. Dibandingkan dengan rilis 1.30 sebelumnya, konsumsi RAM pada rakitan BusyBox 1.31 pada umumnya mengalami penurunan sebesar 86 byte (dari 1008478 menjadi 1008392 byte).

BusyBox adalah alat utama dalam memerangi pelanggaran GPL di firmware. Software Freedom Conservancy (SFC) dan Software Freedom Law Center (SFLC) atas nama pengembang BusyBox, keduanya melalui pengadilan, dan ke sini kesimpulan perjanjian di luar pengadilan telah berulang kali berhasil mempengaruhi perusahaan yang tidak memberikan akses ke kode sumber program GPL. Pada saat yang sama, penulis BusyBox melakukan yang terbaik benda menentang perlindungan tersebut - percaya bahwa hal itu merusak bisnisnya.

Perubahan berikut disorot di BusyBox 1.31:

  • Menambahkan perintah baru: ts (implementasi klien dan server untuk protokol TSP (Time-Stamp Protocol)) dan i2ctransfer (pembuatan dan pengiriman pesan I2C);
  • Menambahkan dukungan untuk opsi DHCP ke udhcp 100 (informasi zona waktu) dan 101 (nama zona waktu di database TZ) untuk IPv6;
  • Menambahkan dukungan untuk pengikatan nama host statis ke klien di udhcpd;
  • Cangkang abu dan diam menerapkan literal numerik "BASE#nnnn". Implementasi perintah ulimit telah dibuat kompatibel dengan bash, termasuk opsi β€œ-i RLIMIT_SIGPENDING” dan β€œ-q RLIMIT_MSGQUEUE”. Menambahkan dukungan untuk "tunggu -n". Menambahkan variabel EPOCH yang kompatibel dengan bash;
  • Shell hush mengimplementasikan variabel "$-" yang mencantumkan opsi shell yang diaktifkan secara default;
  • Kode untuk meneruskan nilai dengan referensi ditransfer ke bc dari upstream, dukungan untuk fungsi void ditambahkan dan kemampuan untuk bekerja dengan nilai ibase hingga 36;
  • Di brctl, semua perintah telah diubah agar berfungsi menggunakan pseudo-FS /sys;
  • Kode utilitas fsync dan sync telah digabungkan;
  • Implementasi httpd telah ditingkatkan. Peningkatan pemrosesan header HTTP dan bekerja dalam mode proxy. Daftar tipe MIME mencakup SVG dan JavaScript;
  • Opsi β€œ-c” telah ditambahkan ke losttup (pemeriksaan ulang paksa ukuran file yang terkait dengan perangkat loop), serta opsi untuk memindai partisi. mount dan losttup memberikan dukungan untuk bekerja menggunakan /dev/loop-control;
  • Di ntpd, nilai SLEW_THRESHOLD telah ditingkatkan dari 0.125 menjadi 0.5;
  • Menambahkan dukungan untuk menetapkan nilai null ke sysctl;
  • Menambahkan dukungan untuk nilai pecahan dalam opsi β€œ-n SEC” untuk diperhatikan;
  • Menambahkan kemampuan untuk menjalankan mdev sebagai proses latar belakang;
  • Utilitas wget mengimplementasikan tanda β€œ-o” untuk menentukan file tujuan penulisan log. Menambahkan pemberitahuan tentang awal dan penyelesaian unduhan;
  • Menambahkan dukungan untuk perintah AYT IAC ke telnetd;
  • Menambahkan perintah 'dG' ke vi (menghapus konten dari baris saat ini hingga akhir file);
  • Menambahkan opsi 'oflag=append' ke perintah dd;
  • Bendera '-H' telah ditambahkan ke utilitas teratas untuk mengaktifkan pemindaian masing-masing thread.

Juga, dua minggu lalu terjadi melepaskan Kotak mainan 0.8.1, analog dari BusyBox, yang dikembangkan oleh mantan pengelola BusyBox dan didistribusikan di bawah lisensi BSD. Tujuan utama Toybox adalah memberi produsen kemampuan untuk menggunakan serangkaian utilitas standar minimalis tanpa membuka kode sumber komponen yang dimodifikasi. Sesuai dengan kemampuan Toybox selama ini tertinggal dari BusyBox, namun 188 perintah dasar dari 220 perintah yang direncanakan telah diimplementasikan.

Di antara inovasi Toybox 0.8.1 yang dapat kami perhatikan:

  • Tingkat fungsionalitas telah dicapai yang cukup untuk membangun Android dalam lingkungan berdasarkan utilitas Toybox.
  • Perintah mcookie dan devmem baru disertakan, dan perintah tar, gunzip, dan zcat yang ditulis ulang dipindahkan dari cabang pengujian.
  • Implementasi baru dari vi telah diusulkan untuk pengujian.
  • Perintah find sekarang mendukung opsi "-wholename/-iwholename".
    "-printf" dan "-konteks";

  • Menambahkan opsi "--exclude-dir" ke grep;
  • Echo sekarang mendukung opsi "-E".
  • Menambahkan dukungan "UUID" untuk dipasang.
  • Perintah tanggal sekarang memperhitungkan zona waktu yang ditentukan dalam variabel lingkungan TZ.
  • Menambahkan dukungan untuk rentang relatif (+N) ke sed.
  • Peningkatan keterbacaan keluaran ps, top dan iotop.

Sumber: opennet.ru

Tambah komentar