Pengembangan Distribusi Linux dengan Mengurangi Ketergantungan Terhadap Komponen GNU Project
Abstract
Linux adalah sebuah sistem operasi yang sering disebut dengan GNU/Linux karena sistem operasinya terdiri dari banyak komponen, dan beberapa komponen terpenting dalam sistem operasi tersebut adalah GNU C Library dan GNU Compiler Collection, yang keduanya berasal dari GNU Project. Pada perancangan ini, dilakukan pengembangan sistem operasi distribusi Linux tanpa menggunakan komponen-komponen yang dikembangkan oleh GNU Project. Tujuan dari perancangan ini adalah untuk mengetahui apakah ekosistem Linux terlalu bergantung kepada komponen-komponen GNU. Tahap-tahap yang dilakukan dalam perancangan ini berdasarkan pada metode Linux From Scratch, yaitu menyiapkan sistem host, membangun sistem sementara,
membangun sistem operasi final dengan mengganti komponen-komponen GNU yang ada pada sistem operasi Linux dengan komponen-komponen kompetitor seperti Clang, LLVM libc++ dan musl, dan terakhir dilakukan benchmarking untuk mengetahui performa sistem. Hasil dari perancangan sistem operasi menunjukkan bahwa hampir seluruh komponen-komponen GNU
sudah dapat digantikan dalam mengembangkan sebuah sistem operasi distribusi Linux, tetapi masih ada satu komponen GNU yang dibutuhkan untuk melakukan kompilasi beberapa perangkat lunak penting, komponen GNU tersebut dapat dihapus tanpa efek negatif setelah komponen sistem operasi tersebut berhasil diinstal. Dari segi performa, sistem operasi yang telah dikembangkan cukup kompetitif dibandingkan dengan sistem host yang menggunakan komponen-komponen GNU, dalam beberapa kasus kode yang dikompilasi menggunakan Clang lebih cepat dibandingkan GCC dan sebaliknya. Sehingga, Clang, LLVM libc++ dan musl libc dapat dijadikan alternatif untuk mengembangkan distribusi Linux.