Dunia pengembangan kernel Linux kembali dihebohkan oleh komentar tajam dari sang pencipta, Linus Torvalds, yang dikenal tidak segan-segan memberikan kritik keras terhadap kualitas kode yang dianggapnya tidak memenuhi standar. Kali ini, sorotan tertuju pada pengembangan Linux 7.2, di mana serangkaian perubahan besar untuk kerangka kerja sched_ext baru saja digabungkan ke dalam repositori utama. Meskipun Linus tidak keberatan dengan fungsionalitas teknis yang ditawarkan, ia merasa sangat terganggu dengan cara para pengembang menyusun struktur file sumber di dalam direktori proyek tersebut. Kejadian ini menjadi pengingat bagi komunitas global bahwa di balik kecanggihan fitur sebuah sistem operasi, estetika dan organisasi kode tetap menjadi prioritas utama bagi pemelihara tertinggi kernel ini.
Kritik ini bermula ketika rangkaian perubahan (pull request) untuk sched_ext diajukan untuk siklus pengembangan Linux 7.2, yang mencakup pengerjaan berkelanjutan untuk dukungan sub-scheduler. Kerangka kerja sched_ext sendiri merupakan inovasi yang sangat dinantikan karena memungkinkan penjadwalan proses dilakukan melalui program BPF (Berkeley Packet Filter) di ruang pengguna (user-space). Teknologi ini memberikan fleksibilitas luar biasa bagi pengembang untuk bereksperimen dengan algoritma penjadwalan tanpa harus melakukan kompilasi ulang seluruh kernel. Namun, kemajuan teknis yang mengesankan ini sempat tertutup oleh ketidaksenangan Linus terhadap tata letak file C yang baru ditambahkan, yang menurutnya sangat berantakan dan tidak terorganisir dengan baik.
Akar Masalah: Kritik Pedas Mengenai Struktur File
Linus Torvalds secara eksplisit menggunakan kata “menjijikkan” (disgusting) untuk mendeskripsikan penempatan file sumber yang dianggapnya mengabaikan prinsip dasar organisasi data dalam sistem komputer modern. Ia merasa frustrasi melihat para pengembang menumpuk file-file baru dalam satu level direktori tanpa memanfaatkan struktur hierarki yang seharusnya mempermudah navigasi dan pemeliharaan kode dalam jangka panjang. Bagi Linus, kebersihan struktur direktori bukan sekadar masalah selera, melainkan fondasi dari skalabilitas sebuah proyek perangkat lunak sebesar Linux yang melibatkan ribuan kontributor dari seluruh dunia.
Dalam sebuah pesan yang dikirimkan melalui milis kernel, Linus memberikan teguran keras yang cukup ikonik dengan merujuk pada sejarah komputasi untuk mempertegas poinnya. Belum ada konfirmasi resmi mengenai siapa individu spesifik yang paling bertanggung jawab atas layout tersebut, namun teguran ini ditujukan kepada seluruh tim pengembang sched_ext. Linus menuliskan sindiran yang cukup menohok mengenai penggunaan sistem file yang sudah seharusnya dipahami oleh setiap programmer tingkat lanjut di ekosistem Linux.
“Tolong jangan lakukan hal menjijikkan ini… sistem file hierarkis yang layak sudah tersedia sejak tahun 1965.”
Pentingnya Hierarki dalam Pengembangan Kernel
Pernyataan Linus mengenai tahun 1965 merujuk pada awal mula pengembangan sistem operasi seperti Multics yang memperkenalkan konsep direktori bercabang, yang kemudian disempurnakan oleh Unix. Linus Torvalds menekankan bahwa menolak menggunakan sub-direktori untuk mengelompokkan kode yang saling terkait adalah langkah mundur dalam praktik rekayasa perangkat lunak. Dengan ribuan file yang ada di dalam kernel Linux, membiarkan satu direktori menjadi terlalu padat dengan file-file yang tidak terorganisir akan menciptakan beban kognitif yang besar bagi siapa pun yang mencoba memahami alur kerja sistem tersebut.
Mengenal Lebih Dalam Teknologi sched_ext
Meskipun terjadi drama mengenai struktur kode, fitur sched_ext tetap menjadi salah satu tambahan paling signifikan dalam sejarah penjadwalan Linux modern. Secara teknis, sched_ext adalah kerangka kerja penjadwal yang dapat diperluas (extensible scheduler framework) yang memungkinkan kebijakan penjadwalan diimplementasikan sebagai program BPF. Hal ini memungkinkan administrator sistem atau pengembang aplikasi untuk menyesuaikan bagaimana CPU mengalokasikan waktu untuk berbagai proses berdasarkan kebutuhan spesifik beban kerja mereka, seperti gaming atau komputasi awan, secara real-time.
Pada versi Linux 7.2, fokus utama pengembangan adalah pada dukungan sub-scheduler, yang memungkinkan pembagian tugas penjadwalan menjadi unit-unit yang lebih kecil dan lebih spesifik. Dengan fitur ini, kernel dapat memiliki beberapa logika penjadwalan yang berjalan secara bersamaan untuk kelompok CPU yang berbeda atau jenis tugas yang berbeda. Fleksibilitas ini diharapkan dapat meningkatkan performa sistem secara signifikan, terutama pada perangkat keras modern dengan jumlah core yang sangat banyak dan arsitektur hibrida yang kompleks.
Implementasi BPF dalam Penjadwalan
Penggunaan BPF dalam sched_ext memberikan lapisan keamanan dan stabilitas tambahan yang belum pernah ada sebelumnya dalam modifikasi penjadwal. Jika sebuah program penjadwal yang ditulis oleh pengguna mengalami kesalahan atau crash, kernel Linux tidak akan ikut tumbang (kernel panic), melainkan akan secara otomatis kembali ke penjadwal default (seperti EEVDF). Keunggulan teknis inilah yang membuat Linus sebenarnya mendukung fitur ini, meskipun ia sangat vokal dalam mengkritik bagaimana kode tersebut dikemas di dalam struktur folder kernel.
Respon Cepat Tim Pengembang terhadap Kritik Linus
Menanggapi teguran keras dari sang pemimpin proyek, tim pengembang sched_ext segera melakukan langkah-langkah restrukturisasi secara menyeluruh terhadap kode sumber mereka. Mereka tidak mencoba membela diri, melainkan langsung menyusun ulang file-file C yang tadinya menumpuk menjadi struktur yang lebih hierarkis dan logis sesuai dengan permintaan Linus. Proses ini melibatkan pemindahan file ke sub-direktori yang lebih spesifik dan pembaruan pada Makefile serta skrip kompilasi terkait untuk memastikan transisi berjalan lancar tanpa merusak fungsionalitas yang sudah ada.
Restrukturisasi ini membuktikan bahwa meskipun Linus Torvalds sering menggunakan gaya bahasa yang konfrontatif, arahannya tetap diikuti dengan penuh rasa hormat oleh komunitas pengembang. Perubahan struktur ini kini telah mencerminkan standar profesionalisme yang diharapkan dalam proyek kernel Linux, di mana keterbacaan kode (code readability) dianggap setara pentingnya dengan efisiensi eksekusi kode itu sendiri. Hasil dari perombakan ini membuat struktur direktori sched_ext kini jauh lebih bersih dan lebih mudah dipelajari oleh pengembang baru yang ingin berkontribusi.
- Restrukturisasi File: Pemindahan file sumber dari direktori flat ke folder hierarkis.
- Pembersihan Header: Organisasi ulang file header agar lebih modular.
- Sinkronisasi BPF: Penyesuaian skrip user-space BPF dengan lokasi file baru.
- Dokumentasi: Pembaruan panduan kontribusi untuk mencerminkan struktur baru.
Dampak bagi Industri dan Pengguna Akhir
Bagi pengguna Linux awam, drama mengenai struktur folder ini mungkin terdengar sepele, namun dampaknya terhadap stabilitas ekosistem sangatlah besar. Dengan kode yang lebih terorganisir, proses audit keamanan dan perbaikan bug (bug fixing) di masa depan akan menjadi jauh lebih cepat dan akurat. Linux 7.2 diharapkan akan menjadi rilis yang sangat stabil berkat standar ketat yang diterapkan oleh Linus Torvalds sejak tahap awal penggabungan kode, memastikan bahwa fitur canggih seperti sub-scheduler tidak membawa beban teknis (technical debt) di kemudian hari.
Industri teknologi, terutama penyedia layanan cloud dan produsen perangkat keras, akan sangat diuntungkan oleh kehadiran sched_ext yang terstruktur dengan baik. Mereka kini dapat lebih mudah mengintegrasikan penjadwal khusus yang dioptimalkan untuk beban kerja mereka sendiri tanpa khawatir akan kesulitan melakukan pemeliharaan saat versi kernel diperbarui. Hal ini memperkuat posisi Linux sebagai sistem operasi yang paling fleksibel dan tangguh untuk menangani berbagai skenario penggunaan, mulai dari perangkat IoT kecil hingga superkomputer raksasa.
Perbandingan dengan Standar Pengembangan Sebelumnya
Jika dibandingkan dengan subsistem lain dalam kernel Linux, pengembangan sched_ext memang tergolong sangat cepat dan dinamis karena basisnya yang menggunakan BPF. Namun, kecepatan ini terkadang membuat aspek-aspek organisasi kode terabaikan demi mengejar target fungsionalitas. Kritik Linus Torvalds berfungsi sebagai rem darurat untuk memastikan bahwa inovasi tidak mengorbankan kualitas arsitektur. Standar yang ditetapkan dalam kasus ini kemungkinan besar akan menjadi acuan bagi fitur-fitur baru lainnya yang akan masuk ke kernel di masa mendatang.
Sistem operasi kompetitor atau proyek open-source lainnya sering kali tidak memiliki figur sentral sekuat Linus yang berani menegur praktik buruk secara terbuka. Keberadaan kontrol kualitas yang sangat ketat di level tertinggi inilah yang membuat Linux mampu bertahan dan terus memimpin pasar selama lebih dari tiga dekade. Meskipun metode komunikasinya sering diperdebatkan, hasil akhirnya selalu berupa perangkat lunak yang lebih solid, lebih bersih, dan lebih mudah dikelola oleh komunitas global.
Kesimpulan dan Pandangan ke Depan
Insiden “disgusting code” pada pengembangan Linux 7.2 ini memberikan pelajaran berharga bagi seluruh pengembang perangkat lunak mengenai pentingnya disiplin dalam berorganisasi. Linus Torvalds sekali lagi membuktikan bahwa dirinya tetap menjadi penjaga gawang utama yang memastikan integritas kernel Linux tidak hanya dari sisi performa, tetapi juga dari sisi estetika rekayasa. Dengan selesainya restrukturisasi sched_ext, jalan menuju rilis final Linux 7.2 kini menjadi lebih mulus dengan fondasi kode yang lebih sehat.
Ke depannya, kita dapat mengharapkan adopsi sched_ext yang lebih luas di berbagai distribusi Linux populer. Fitur sub-scheduler akan membuka pintu bagi optimasi performa yang belum pernah terbayangkan sebelumnya, terutama untuk aplikasi sensitif latensi dan pemrosesan data skala besar. Para pengembang kini telah belajar bahwa untuk mendapatkan restu dari Linus, mereka tidak hanya harus menciptakan teknologi yang hebat, tetapi juga harus menyajikannya dalam struktur yang elegan dan menghormati prinsip-prinsip dasar ilmu komputer yang telah ada sejak tahun 1965.



