rio
Daha fazla bilgi
- Geliştirici
- Rob Pike, Bell Labs
- Yıl
- 2000
- Tür
- Pencere sistemi
- Öncül
- 8½
2000’deki üçüncü sürümden beri Plan 9’un pencere sistemi: her pencerenin bir konsol, bir fare ve bir ekran içeren dizin olduğu bir dosya sunucusu — ve rio’nun, ikisi de birbirini fark etmeden rio’nun içinde sorunsuz çalıştığı bir sistem.
Rob Pike, Plan 9 yeni grafik arayüzü /dev/draw’u edinip Alef dili emekliye ayrılınca rio’yu 8½’in yerine yazdı. Fikir bozulmadan taşındı: pencere sistemi, 9P konuşan bir dosya sunucusudur. Her pencere kendi dosya setini alır — metin için /dev/cons, işaretçi için /dev/mouse, grafik için /dev/draw — ve bunlar bir programa tüm ekranda verilecek dosyaların tıpkısı gibidir. Dolayısıyla hiçbir program bir pencerede çalıştığını bilmek zorunda değildir; rio da bir rio penceresinin içinde başlatılıp yönetmesi için kendine ayrı bir ekran alabilir.
Kod, libthread kitaplığını kullanan C’dir; Alef’in dahili kanallarının yerini bu kitaplığın kanalları aldı. Pencereler, fare ve klavye kanallar üzerinden konuşan ayrı iş parçacıklarıdır; Pike’ın 2000 tarihli “Rio: Design of a Concurrent Window System” makalesinin konusu buydu. Arayüz sade: başlık çubuğu yok, sağ düğme menüsünde beş öğe — New, Resize, Move, Delete, Hide — ve yeni pencere bir dikdörtgen sürüklenince açılır. Rio, 9front’un pencere sistemi olarak Pike’ın bıraktığı haliyle sürüyor.