Jumat, 06 November 2026
12:40 WIB
TERKINI
Tuba Barat Mewujudkan Haji: Pemkab Tubaba dan BSI Ajak Masyarakat Menabung Sejak Dini Lampung Timur Bupati Ela Dekatkan Diri dengan Siswa, Pastikan Kualitas Pendidikan dan Gizi di Lampung Timur Tuba Barat Kemitraan Strategis Pemkab Tubaba dan Kejari: Wujudkan Tata Kelola Pemerintahan Akuntabel Bandar Lampung Mantan Ketua DPRD Lampung Bersaksi dalam Sidang Arinal Djunaidi Bandar Lampung Senator Bustami Zainudin dan Staf DPD Lampung Ikuti Program Cek Kesehatan Gratis Bandar Lampung Padatnya Agenda Pemprov Lampung 2 November 2026: Dari Apel Hingga Forum Ekonomi Bandar Lampung Imigrasi Lampung Ungkap Modus Kawin Pesanan, Empat WNA China Diamankan di Pesawaran Lampung Barat Pesan Bupati Lambar: Patriotik, Gigih, dan Berempati Kunci Masa Depan Bangsa Bandar Lampung 343 Polisi Disiagakan Kawal Aksi Sumpah Pemuda 2026 di Bandar Lampung Lampung Selatan Jaringan Penyelundup Solar Subsidi Terbongkar di Lampung Selatan, Tiga Tersangka Diamankan Tuba Barat Mewujudkan Haji: Pemkab Tubaba dan BSI Ajak Masyarakat Menabung Sejak Dini Lampung Timur Bupati Ela Dekatkan Diri dengan Siswa, Pastikan Kualitas Pendidikan dan Gizi di Lampung Timur Tuba Barat Kemitraan Strategis Pemkab Tubaba dan Kejari: Wujudkan Tata Kelola Pemerintahan Akuntabel Bandar Lampung Mantan Ketua DPRD Lampung Bersaksi dalam Sidang Arinal Djunaidi Bandar Lampung Senator Bustami Zainudin dan Staf DPD Lampung Ikuti Program Cek Kesehatan Gratis Bandar Lampung Padatnya Agenda Pemprov Lampung 2 November 2026: Dari Apel Hingga Forum Ekonomi Bandar Lampung Imigrasi Lampung Ungkap Modus Kawin Pesanan, Empat WNA China Diamankan di Pesawaran Lampung Barat Pesan Bupati Lambar: Patriotik, Gigih, dan Berempati Kunci Masa Depan Bangsa Bandar Lampung 343 Polisi Disiagakan Kawal Aksi Sumpah Pemuda 2026 di Bandar Lampung Lampung Selatan Jaringan Penyelundup Solar Subsidi Terbongkar di Lampung Selatan, Tiga Tersangka Diamankan

Musl

perpustakaan perangkat lunak

Bagikan:

musl adalah penyedia pustaka C untuk sistem operasi standar kernel Linux yang dirilis di bawah lisensi MIT.[1] Digunakan untuk perangkat sistem operasi Linux x86 (32/64), ARM (32/64), MIPS (32/64), PowerPC (32/64), S390X, SuperH, Microblaze, OpenRISC. Seperti Alpine Linux yang dibangun dengan menggunakan musl libc dan busybox.[2] Dragora 3.0 Alpha 2 yang dibangun untuk mentransisi ke pustaka C musl.[3]

Tentang

Dikembangkan oleh Rich Felker untuk menulis implementasi pustaka C yang bersih, efisien dan sesuai dengan standar yang dijelaskan dalam standar ISO C dan POSIX yang digunakan pada sistem operasi kernel Linux. Sementara itu, kernel Linux mengatur akses ke perangkat keras, memori, sistem berkas dan hak istimewa untuk mengaksesnya adalah pustaka C.[1]

musl dirancang untuk penautan statis yang dinamis dan efisien yang mampu menghindari penarikan kode atau data dalam jumlah besar. Penautan tersebut menyatukan implementasi utas, matematika dan bahkan penautan dinamis itu sendiri ke dalam satu objek bersama.[1]

musl memperlihatkan implementasi utas POSIX pasca-NPTL untuk Linux yang didesain ulang untuk menghindari kondisi balapan pada desain NPTL asli. Demi efisiensi, musl memiliki berat 10-20k tergantung target dan pengaturan kompiler. Dirancang untuk memiliki ketahanan kode secara langsung, sehingga kondisi kehabisan memori tidak pernah berakibat fatal. musl juga tidak memiliki alokasi dinamis yang tidak perlu bahkan tidak ada kegagalan yang tidak dapat dipulihkan.[1]

Lisensi MIT yang dimiliki musl bersifat permisif kompatibel dengan semua lisensi FOSS. musl juga ramah terhadap penautan statis sehingga penggunaannya mampu memaksimalkan penerapan aplikasi. [1]

Biner yang ditautkan pada musl bisa digunakan sebagai file biner tunggal yang tidak memiliki ketergantungan pada perangkat luar. Bisa dijalankan pada mesin apa pun dengan mengikuti instruksi yang sesuai. Mempelajari cara kerja musl bisa dilakukan dengan mudah karena musl memiliki tata letak sumber kode yang sederhana. Hal ini juga memudahkan untuk melacak penyebab munculnya bug.[1]

Sejarah

Pada 1990-an, Linux menggunakan fork dari pustaka GNU C (glibc) versi 1 yang tersedia beberapa versi (libc4, libc5). Distribusi dilanjutkan dengan mengadopsi glibc versi 2 yang dinamakan libc6. Selanjutnya, mulai bermunculan pustaka C khusus lainnya seperti uClibc dan dietlibc.[1]

musl versi 1.1.10 menyediakan lokalitas UTF-8 C yang diizinkan oleh standar ISO. Namun, banyak pengkodean yang memproses data tidak valid. Pada 2013, Austin Group (penanggung jawab POSIX) memberi syarat untuk versi terbaru musl agar pustaka C bisa memperlakukan setiap byte sebagai karakter abstrak.[4]

musl menggunakan Unicode dan ISO 10646 yang baru dari UTF-8. Penggunaan ini mendefinisikan pemetaan satu ke satu antara Unicode Scalar Values dan urutan 1-4 byte yang valid. Pengurutan sampai 4 byte ini memungkinkan hasil output UTF-8 dalam buffer.[4]

Kemudian, pada versi 1.1.11, terdapat pustaka C yang khusus sehingga tiap byte diperlakukan sebagai unit karakter tanpa identitas yang sebenarnya. Tempat khusus ini dimaksudkan agar setiap rangkaian karakter bisa diproses byte per byte tanpa validasi.[4]

Pada musl versi 1.1.17 terdapat perbedaan pemanggilan pada aplikasi terhadap beberapa pustaka tanpa menggunakan informasi pemanggilan yang tepat sehingga setelah semua pustaka dimuat hasilnya tidak praktis. Versi pertama memiliki pustaka dengan simbol-simbol yang tidak terselesaikan.[4]

Merujuk tujuan awal dibuatnya musl untuk untuk keperluan umum yang baru, yang ringan, cepat, sederhana, gratis serta sesuai dengan standar keamanan. Maka, versi musl yang lebih baru mengimplementasikan pengikatan yang lebih tangguh hingga mampu melakukan pemanggilan terhadap simbol-simbol baru.[4]

Penggunaan

musl bisa digunakan pada Linux 2.6 atau yang lebih baru. Penggunaan musl bisa digunakan pada CPU yang didukung i386, x86_64, arm, mips, microblaze, atau powerpc. superh dan x32 (x86_64 32-bit ABI). musl bisa digunakan pada hampir semua kompilator C yang sesuai dengan standar (bahkan sebelum C99) dapat digunakan.[1]

Referensi

  1. 1 2 3 4 5 6 7 8 "musl - Introduction". www.musl-libc.org. Diakses tanggal 2024-06-05.
  2. ↑ "about | Alpine Linux". alpinelinux.org. Diakses tanggal 2024-06-05.
  3. ↑ "Dragora 3.0 Alpha 2 Released As One Of The Libre GNU/Linux Platforms". www.phoronix.com (dalam bahasa Inggris). Diakses tanggal 2024-06-05.
  4. 1 2 3 4 5 "musl libc - Functional differences from glibc". wiki.musl-libc.org. Diakses tanggal 2024-06-10.
Konten disalin dari Wikipedia Bahasa Indonesia (lisensi CC BY-SA) Lihat versi asli di Wikipedia

Rekomendasi Pilihan