Ana Sayfa

NetBSD Çekirdeğinde Rust: Neden Zor Bir Karar?

1 dk okuma

Bir kullanıcı, NetBSD'nin FreeBSD gibi çekirdeğine Rust kodunu dahil edip etmeyeceğini sorguladı. Yazar, FreeBSD'nin bu kararı genç geliştirici kitlesine hitap etmekten ziyade bellek güvenliği gibi teknik avantajlar nedeniyle almış olabileceğini belirtiyor. NetBSD'nin geçmişte çekirdeğe Lua'yı ekleyerek daha "garip" bir karar aldığını, bunun hızlı sürücü geliştirme ve prototipleme için kullanışlı olduğunu ancak o dönemde de çok tartışıldığını hatırlatıyor.

Ancak, NetBSD'nin genel olarak FreeBSD veya Linux'tan daha muhafazakar teknik kararlar aldığı vurgulanıyor. Rust'ın NetBSD çekirdeğinde kullanılmasına karşı birçok önemli argüman bulunuyor. En başta, NetBSD'nin desteklediği birçok mimaride Rust'ın mevcut olmaması büyük bir engel teşkil ediyor. Ayrıca, Rust compiler'ı çalıştırmak ve pkgsrc içinde sürdürmek, az sayıda geliştiricinin omuzlarında büyük bir yük. NetBSD'nin kaynak tabanlı, kendi kendine yeten dağıtım yapısı göz önüne alındığında, Rust'ın ikili paketlere dayalı bootstrap süreci kabul edilemez.

Rust'ın temel sistemin veya çekirdeğin bir parçası olması durumunda, compiler'ın da temel sisteme eklenmesi gerekecek; bu da ciddi bir kod ve bakım yükü anlamına geliyor. Mevcut LLVM bağımlılığına rağmen, ikili bootstrap kitleri önemli bir sorun yaratıyor. Son olarak, Rust'ın hızlı sürüm döngüleri NetBSD'nin uzun destekli sürüm politikalarıyla uyumlu değil. NetBSD 9 gibi eski bir sürümle gelen bir Rust compiler'ı, modern kodları derlemek için kullanışsız hale gelecektir. Bu nedenlerle, Rust'ın NetBSD çekirdeğine entegrasyonu pek olası görünmüyor.

İçgörü

NetBSD'nin çekirdeğine Rust entegrasyonuna karşı duruşu, projenin teknik önceliklerini ve konservatif yaklaşımını gözler önüne seriyor.

Kaynak