- Maestro, Rust diliyle sıfırdan yazılmış Unix benzeri bir çekirdek ve işletim sistemidir.
- İlk başta C diliyle uygulanmıştı, ancak kod tabanını temiz tutmak zorlaştıkça Rust'a geçildi.
- Rust, projeyi en baştan yeniden başlatmayı ve C ile Linux benzeri bir çekirdek yazmaktan daha yenilikçi bir yaklaşım sunuyor; ayrıca Rust'ın güvenliğinden yararlanarak çekirdek programlamanın zorluklarını azaltmaya yardımcı oluyor.
Projenin mevcut durumu
- Maestro şu anda yalnızca x86 (32 bit) mimarisini destekleyen monolitik bir çekirdektir.
- Yazının kaleme alındığı sırada, Linux sistem çağrılarının yaklaşık %31'ine karşılık gelen 135 tanesi kabaca uygulanmış durumdadır.
- İşletim sisteminde çekirdeğin yanı sıra önyükleme sistemi ve daemon yöneticisi Solfège, sistem yardımcı komutları olan maestro-utils ve paket yöneticisi blimp gibi bileşenler bulunur.
- musl (C standart kütüphanesi), bash, bazı GNU coreutils komutları ve neofetch'in (yamalı sürüm) işletim sisteminde çalıştığı test edilmiştir.
Kendiniz deneyin!
- İşletim sistemi hâlâ geliştirmenin erken aşamasındadır ve oldukça kararsızdır; bu nedenle önemli verilerin bulunduğu bir makineye kurulması önerilmez.
- Ağırlıklı olarak QEMU, VMWare ve VirtualBox üzerinde test edilmiştir.
- İşletim sistemini kurmanın iki yolu vardır: önceden derlenmiş .iso dosyasını indirmek veya ISO'yu doğrudan derlemek.
- Kurulu paketler disk yerine RAM'de (
initramsfs) saklandığından yeterli RAM'e (1 GB veya daha fazlası) ihtiyaç vardır.
Bu blog hakkında
- Bu blogun amacı bir işletim sisteminin nasıl oluşturulacağına dair bir eğitim yazmak değil; daha ileri konuları incelemek, sorun çözme yöntemlerini paylaşmak ve bilgisayarların, işletim sistemlerinin ve internetin nasıl çalıştığını keşfetmektir.
- Özellikle osdev.org ve Philipp Oppermann'ın blogu tavsiye edilir.
Sırada ne var
- Kod tabanının düzenlenmesi ve performans optimizasyonu gerekiyor.
- Bellek sızıntılarının düzeltilmesi ve performans optimizasyonu blog yazılarının konusu olabilir.
- Bir sonraki hedef, paket yöneticisinin işletim sisteminde tamamen çalışır hâle gelmesini sağlamaktır.
- Ağ desteği ve paylaşımlı kütüphane desteği gereklidir.
Nasıl yardımcı olabilirsiniz
- Github deposuna yıldız vererek, bültene abone olarak, RSS akışını takip ederek ve Discord'a katılarak iletişimde kalabilirsiniz.
GN⁺ görüşü
- Maestro projesi, Rust diliyle yazılmış Unix benzeri bir işletim sistemi olarak, çekirdek geliştirmede güvenlik ve yenilikçilik arayışı açısından önem taşıyor.
- Bu proje, açık kaynak topluluğuna katkıda bulunmak isteyen geliştiricilere ilgi çekici bir fırsat sunuyor ve gerçek donanım ile yazılımın etkileşimini anlamaya yardımcı olabilir.
- Rust ile sistem programlamanın avantajlarını ve sınırlarını bizzat deneyimlemek isteyen başlangıç seviyesindeki yazılım mühendisleri için yararlı bir öğrenme kaynağı olabilir.
1 yorum
Hacker News görüşleri
Projeye verilen destek için teşekkürler
Etkileyici küçük ölçekli proje hakkında görüş
Güvenlik/sızma testi hakkında görüş
Kerla projesine atıf
C dili kullanımının dezavantajları ve OS geliştirmenin zorluğu hakkında görüş
Kerla projesinin durmasına dair atıf
Bilgisayarların karmaşıklığı hakkında görüş
Teknik borcun kapatılması yönünde tavsiye
Gource'a ilgi
Çekirdek geliştirmeye ilgi