PatchworkOS - x86_64 mimarisi için modüler, POSIX dışı işletim sistemi
(github.com/KaiNorberg)- Plan9'ın “everything is a file” felsefesini katı biçimde izleyen deneysel bir işletim sistemi
- Eğitsel ve deneysel amaçlı OS geliştirme için C ve assembly ile tamamen sıfırdan yazıldı
- EEVDF zamanlayıcısı tabanlı, tamamen preemptive ve tickless çekirdek yapısı. SMP ve multithreading ile ayrıntılı kilit denetimi desteği
- Dosya tabanlı IPC sistemi sunar: pipe, paylaşımlı bellek, soketler ve Plan9
signalstarzı notes sistemi dahil - Dosya tabanlı aygıt soyutlama katmanı ile framebuffer, giriş aygıtları vb. birleşik yönetim
- Senkronizasyon primitifleri olarak mutex, rwlock, futex vb. desteği
- Modüler çekirdek tasarımı, modüller çalışma zamanında yüklenip kaldırılabilir
- Dosya sistemi, Unix tarzı VFS yapısına sahip. Bağlama noktaları, hard link ve süreç başına namespace desteği
- Kullanıcı alanı, kendi C standart kütüphanesi ve sistem kütüphanesinden oluşur
- Paylaşımlı bellek tabanlı modüler masaüstü ortamı sunar
- POSIX ile başlıca farklar
fork(), exec()yerinespawn()kullanır- Kullanıcı kavramı kaldırılmıştır, POSIX dışı standart kütüphane benimsenmiştir
- Erişim denetimi dosya modları yerine dosya bayrakları ile yapılır
- Mevcut kısıtlar
- Yalnızca RAM disk desteklenir, sadece x86_64 için
- Gelecek planları
- LUA portu ve dinamik sistem yapılandırması
- Asenkron I/O ve sistem çağrıları (
io_uringdeğerlendiriliyor) - USB desteği eklenecek
- Shell yardımcı programları, dosya bayrağı sistemine uyacak şekilde yeniden tasarlandı
touch,cat,echo,ls,rmvb. POSIX yardımcı programlarına benzer arayüzler sunar
- Derleme ortamı: Linux, GCC, NASM, mtools, QEMU gerekli
- Doxygen tabanlı belgeler sunulur; kod yorumları ve kaynakça içerir
- xv6 ile Linux arasında eğitsel bir ara seviye OS olarak tasarlandı
Henüz yorum yok.