Rust ile yazılmış Redox OS 0.8 işletim sisteminin piyasaya sürülmesi

Rust dili ve mikro çekirdek konsepti kullanılarak geliştirilen Redox 0.8 işletim sisteminin sürümü yayınlandı. Projenin geliştirmeleri ücretsiz MIT lisansı altında dağıtılmaktadır. Redox OS'yi test etmek için, 768 MB boyutunda demo derlemelerinin yanı sıra, temel grafik ortamına (256 MB) ve sunucu sistemleri için konsol araçlarına (256 MB) sahip görüntüler sunulmaktadır. Derlemeler x86_64 mimarisi için oluşturulmuştur ve UEFI ve BIOS'lu sistemler için mevcuttur. Demo görüntüsü, Orbital grafik ortamına ek olarak DOSBox emülatörünü, çeşitli oyunları (DOOM, Neverball, Neverputt, sopwith, syobonaction), eğitimleri, rodioplay müzik çaları ve Sodium metin düzenleyicisini içerir.

İşletim sistemi Unix felsefesine uygun olarak geliştirilmiş ve SeL4, Minix ve Plan 9'dan bazı fikirler almıştır. Redox, çekirdek düzeyinde yalnızca süreçler ve kaynak yönetimi arasındaki etkileşimin sağlandığı ve diğer tüm süreçlerin sağlandığı mikro çekirdek kavramını kullanır. işlevsellik, hem çekirdek hem de kullanıcı uygulamalarında kullanılabilen kitaplıklara yerleştirilir. Tüm sürücüler, yalıtılmış sanal alan ortamlarındaki kullanıcı alanında çalışır. Mevcut uygulamalarla uyumluluk için, birçok programı taşımadan çalıştırmanıza olanak tanıyan özel bir POSIX katmanı sağlanmıştır.

Sistem “her şey bir URL'dir” ilkesini kullanır. Örneğin, "log://" URL'si günlük kaydı için, "bus://" işlemler arasındaki etkileşim için, "tcp://" ağ etkileşimi vb. için kullanılabilir. Sürücüler, çekirdek uzantıları ve kullanıcı uygulamaları biçiminde uygulanabilen modüller, kendi URL işleyicilerini kaydedebilir; örneğin, bir G/Ç bağlantı noktası erişim modülü yazabilir ve onu "port_io://" URL'sine bağlayabilirsiniz. ", ardından “port_io://60” URL'sini açarak 60 numaralı bağlantı noktasına erişmek için kullanabilirsiniz.

Redox'taki kullanıcı ortamı, Orbital'in kendi grafik kabuğu (Qt ve Wayland kullanan başka bir Orbital kabuğuyla karıştırılmamalıdır) ve Flutter, React ve Redux'a benzer bir API sağlayan OrbTk araç seti temel alınarak oluşturulmuştur. Netsurf bir web tarayıcısı olarak kullanılır. Proje ayrıca kendi paket yöneticisini, bir dizi standart yardımcı programı (binutils, coreutils, netutils, extrautils), ion komut kabuğunu, standart C kütüphanesi relibc'yi, vim benzeri metin düzenleyicisi sodyumu, bir ağ yığınını ve bir dosya geliştiriyor. sistem. Yapılandırma Toml dilinde ayarlanır.

Yeni sürüm, gerçek donanım üzerinde çalışmasını sağlamak için çalışmaya devam ediyor. x86_64 mimarisine ek olarak 32 bit x86 sistemlerde (i686, Pentium II ve daha yenisi) çalışabilme özelliği eklendi. ARM64 CPU'ya (aarch64) taşıma işlemi devam ediyor. Gerçek ARM donanımı üzerinde çalıştırmak henüz desteklenmiyor ancak QEMU'da ARM64 emülasyonuyla yükleme yapmak mümkün. Varsayılan olarak ses alt sistemi etkinleştirilir ve çoklu monitör yapılandırmaları için ilk destek sağlanır (UEFI çerçeve arabelleğine sahip sistemlerde). Redox OS'de desteklenen ekipmanlar arasında AC'97 ve Intel HD Audio ses yongaları, VESA BIOS API veya UEFI GOP aracılığıyla grafik çıkışı, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), giriş aygıtları (klavyeler, fareler, dokunmatik yüzeyler), SATA bulunur (AHCI, IDE) ve NVMe. Wi-Fi ve USB desteği henüz hazır değil (USB yalnızca QEMU'da çalışıyor).

Diğer yenilikler:

  • BIOS ve EFI içeren sistemler için önyükleme görüntüleri birleştirildi.
  • Klonlama ve yürütme sistem çağrılarının uygulanması kullanıcı alanına taşındı.
  • Yükleme işlemi basitleştirildi. Çekirdek tarafından başlatılan ve başlatma işlemi gibi ELF dosyalarının daha fazla yüklenmesini sağlayan bir önyükleme programı uygulandı.
  • Sudo gibi setuid programlarını desteklemek için yükseltilmiş program eklendi.
  • Arka plan işlemlerinin oluşturulmasını ve kurulumunu basitleştirmek için redox-daemon sandık paketi önerildi.
  • Montaj sistemi yeniden tasarlandı ve farklı mimarilerin tek bir kaynak ağaçta oluşturulmasını mümkün kıldı. Farklı konfigürasyonların montajını basitleştirmek için build.sh betiği önerilmektedir. Podman araç setini kullanarak inşa etme desteği eklendi. Çekirdek, önyükleyici ve initfs'in montajı diğer paketlerle birleştirilmiştir.
  • Temel önyükleme görüntüsünde yer almayan örnek programları grafiksel bir ortamla oluşturmak için bir demo yapılandırması eklendi.
  • Sesli ses alt sistemine yazılım ses seviyesi kontrolü desteği eklendi.
  • AC'97'ye dayalı ses yongaları için sürücü eklendi. Intel HD Ses yongaları için geliştirilmiş sürücü.
  • IDE denetleyicileri için sürücü eklendi.
  • NVMe sürücüleri için geliştirilmiş destek.
  • Geliştirilmiş PCI, PS/2, RTL8168, USB HID, VESA sürücüleri.
  • Kurulum işlemi yeniden tasarlandı: önyükleyici, önyükleme, çekirdek ve initfs artık /boot dizininde bulunuyor.
  • Çekirdek, bellek yönetimini basitleştirdi ve adres alanlarını kullanıcı seviyesinden yönetme yeteneğini ekledi.
  • Orbital grafik kabuğuna çoklu monitör sistemleri desteği eklendi, fare imleci işlemesi iyileştirildi ve ses seviyesini değiştirmek için bir gösterge eklendi. Menü, uygulamaları kategorilere ayırma özelliğine sahiptir.

Kaynak: opennet.ru

Yorum ekle