Syd (sydbox-3), Rust programlama diliyle yazılmış bir uygulama çekirdeğidir (application kernel). Bu sunum, Syd'in çalışma zamanı mimarisini ve taşınabilirliğini sağlayan Rust özelliklerini detaylandırıyor. Çekirdek, farklı roller üstlenen çeşitli iş parçacıklarından (thread) oluşur: syd_main başlangıç süreçlerini, isim alanlarını ve politika yüklemeyi yönetirken, syd_mon yaşam döngüsü ve seccomp-notify mekanizmalarını ele alır. CPU boyutunda bir syd_emu işçi havuzu ise sistem çağrısı (syscall) aracılığını gerçekleştirir. syd_ipc UNIX soket kontrolünü sağlarken, syd_int zamanlayıcıları ve alarmları yönetir. Son olarak, syd_aes Crypt sandboxing için AF_ALG kripto işlemlerini ve syd-pty ile syd-tor gibi yardımcıları destekler.
Uygulama, sistem çağrısı kenarında minimal unsafe kod kullanımı, unshare(CLONE_FS|CLONE_FILES) ile iş parçacığı başına izolasyon ve seccomp(2) kullanımı gibi önemli özelliklere sahiptir. Ayrıca, sistem çağrısı argüman çerezleri, zorunlu O_CLOEXEC ve rastgele dosya tanımlayıcıları (FD), deterministik "son eşleşen kazanır" politikası ve mseal(2) ile kilitleme gibi güvenlik ve sağlamlık odaklı uygulamalar içerir. Syd'in taşınabilirliği birinci sınıf olup, Linux 5.19 ve üzeri sürümler için tek bir kod tabanıyla x86-64, arm64, riscv64 gibi çoklu mimari desteği sunar. ILP32/LP64 farkındalığı ve MSRV 1.83+ uyumluluğu da projenin geniş uyumluluğunu gösterir.
Bu sunum, katılımcılara Rust kullanarak iş parçacığı izoleli, çoklu mimari destekli bir sistem çağrısı aracısı oluşturmak için somut kalıplar sunmayı amaçlamaktadır. Syd, modern işletim sistemi geliştirme prensiplerini Rust'ın güvenlik ve performans avantajlarıyla birleştiren yenilikçi bir yaklaşımdır.
Syd, Rust'ın güvenlik ve performans avantajlarını kullanarak modern, taşınabilir ve güvenli bir uygulama çekirdeği geliştirme konusunda önemli bir örnek teşkil ediyor.