BusyBox adalah rangkaian perangkat lunak yang menyediakan beberapa utilitas Unix dalam satu file yang dapat dieksekusi. Ini berjalan di berbagai lingkungan POSIX seperti Linux, Android,[1] dan FreeBSD,[2] meskipun banyak alat yang disediakannya dirancang untuk bekerja dengan antarmuka yang disediakan oleh kernel Linux. Itu khusus dibuat untuk sistem operasi tertanam dengan sumber daya yang sangat terbatas. Penulis menjulukinya "Pisau Swiss Army dari Linux Tertanam", karena executable tunggal menggantikan fungsi dasar lebih dari 300 perintah umum. Ini dirilis sebagai perangkat lunak bebas di bawah ketentuan GNU General Public License v2, setelah secara kontroversial memutuskan untuk tidak pindah ke versi 3.

Sejarah

sunting
Logo

Awalnya ditulis oleh Bruce Perens pada tahun 1995 dan dinyatakan selesai untuk penggunaan yang dimaksudkan pada tahun 1996, BusyBox awalnya bertujuan untuk menempatkan sistem bootable lengkap pada satu floppy disk yang akan berfungsi sebagai disk penyelamat dan sebagai penginstal untuk distribusi Debian. Sejak saat itu, ini telah diperluas menjadi perangkat ruang pengguna inti standar de facto untuk perangkat Linux tertanam dan penginstal distribusi Linux. Karena setiap executable Linux memerlukan beberapa kilobyte overhead, menggabungkan program BusyBox lebih dari dua ratus program sering kali menghemat banyak ruang disk dan memori sistem.

BusyBox dikelola oleh Enrique Zanardi dan fokus pada kebutuhan sistem penginstal boot-floppy Debian hingga awal tahun 1998, ketika Dave Cinege mengambil alih untuk Linux Router Project (LRP). Cinege membuat beberapa tambahan, menciptakan lingkungan pembangunan termodulasi, dan mengalihkan fokus BusyBox ke sistem tertanam tingkat tinggi secara umum. Ketika pengembangan LRP melambat pada tahun 1999, Erik Andersen, yang saat itu menjabat di Lineo, Inc., mengambil alih proyek tersebut dan menjadi pengelola resmi antara Desember 1999 dan Maret 2006. Pada masa ini, pertumbuhan pasar tertanam Linux meledak, dan BusyBox menjadi sangat matang. memperluas basis pengguna dan fungsionalitasnya. Rob Landley menjadi pengelola pada tahun 2005 hingga akhir tahun 2006, kemudian Denys Vlasenko mengambil alih sebagai pengelola saat ini.

Fitur

sunting

BusyBox dapat dikustomisasi untuk menyediakan subset dari lebih dari dua ratus utilitas. Ini dapat menyediakan sebagian besar utilitas yang ditentukan dalam Spesifikasi Unix Tunggal (SUS) ditambah banyak utilitas lain yang diharapkan dapat dilihat oleh pengguna di sistem Linux. BusyBox menggunakan shell Almquist, juga dikenal sebagai A Shell, ash dan sh. Alternatif untuk penyesuaian adalah cangkang 'hush' yang lebih kecil. "Msh" dan "lash" dulunya tersedia.

Karena ini adalah sistem bootstrap yang lengkap, ia selanjutnya akan menggantikan daemon init dan udev (atau systemd masa kini) yang menggunakan dirinya sendiri untuk dipanggil sebagai init saat startup dan mdev pada waktu hotplug.

Situs web BusyBox menyediakan daftar lengkap utilitas yang diterapkan.

Binary Tunggal

sunting

Program komputer pada umumnya memiliki file biner (yang dapat dieksekusi) terpisah untuk setiap aplikasi. BusyBox merupakan biner tunggal yang merupakan konglomerasi dari banyak aplikasi yang masing-masing dapat diakses dengan memanggil biner tunggal BusyBox tersebut dengan berbagai nama (didukung dengan memiliki symbolic link atau hard link untuk setiap nama berbeda) dengan cara tertentu dan sesuai. argumen.

BusyBox mendapat manfaat dari pendekatan biner tunggal, karena mengurangi overhead yang ditimbulkan oleh format file yang dapat dieksekusi (biasanya ELF), dan memungkinkan kode untuk dibagikan antara beberapa aplikasi tanpa memerlukan perpustakaan. Teknik ini mirip dengan apa yang disediakan oleh perintah crunchgen di FreeBSD, perbedaannya adalah BusyBox menyediakan versi utilitas yang disederhanakan (misalnya, perintah ls tanpa kemampuan menyortir file), sedangkan jumlah semua utilitas yang dihasilkan crunchgen akan menawarkan versi yang berfungsi penuh.

Berbagi kode umum, bersama dengan rutinitas yang ditulis dengan mempertimbangkan pengoptimalan ukuran, dapat membuat sistem BusyBox menggunakan ruang penyimpanan jauh lebih sedikit dibandingkan sistem yang dibangun dengan versi lengkap utilitas terkait yang digantikan oleh BusyBox. Penelitian yang membandingkan implementasi GNU, BusyBox, asmutils dan Perl dari perintah standar Unix menunjukkan bahwa dalam beberapa situasi BusyBox mungkin bekerja lebih cepat dibandingkan implementasi lainnya, tetapi tidak selalu.

Referensi

sunting
  1. ^ "BitCubate X". 27 Oktober 2022.
  2. ^ "FreeBSD Port Overview".

๐Ÿ“š Artikel Terkait di Wikipedia

Tiny Core Linux

Core Linux (TCL) adalah sistem operasi Linux berbasis fokus menggunakan BusyBox dan FLTK, dikembangkan oleh Robert Shingledecker. Distribusi ini terkenal

OpenWrt

lintas jaringan. Komponen utamanya adalah Linux, util-linux, musl, dan BusyBox. Semua komponen telah dioptimalkan agar cukup kecil agar sesuai dengan

Alpine Linux

Alpine Linux adalah distribusi Linux berdasarkan musl dan BusyBox, dirancang untuk keamanan, kesederhanaan, dan efisiensi sumber daya. Distribusi Linux

Wget

Ditulis dalam C Sistem operasi Antar-platform (Linux dengan paket wget atau busybox, sedangkan untuk Windows dapat didownload langsung di website Wget) Jenis

Linux

perintah Unix. Terdapat juga implementasinya untuk sistem benam, seperti BusyBox. Pustaka widget, adalah pustaka untuk membangun antarmuka pengguna grafis

SliTaz

drive, dalam suatu desktop Openbox yang berjalan pada Xvesa, dan memakai BusyBox untuk semua fungsi utamanya. Distro ini memiliki fungsi yang bagus sebagai

Root (Android)

Kemampuan untuk mengunduh perangkat lunak (seperti Xposed, Magisk, SuperSU, BusyBox, dll.) yang memungkinkan tingkat tambahan untuk mengontrol pada perangkat

Zeroconf

avahi-autoipd. zcip (Zero-Conf IP) BusyBox, memasukkan sebuah implementasi IPv4LL. Stablebox, sebuah implementasi turunan Busybox, menawarkan implementasi IPv4LL