Neden Wayland daha iyi?


177

Gibi yeni duyurulan Mark Shuttleworth, Ubuntu, görünen yöneticisi olarak Wayland kullanarak doğru gideceğiz.

X11 ve Wayland arasındaki en büyük farklar nelerdir? Wayland neden Ubuntu'yu daha iyi hale getirecek?


5
Aralık 2013 itibariyle, Unity tabanlı Ubuntu, Ubuntu 14.10'dan başlayarak Wayland tabanlı bir besteci yerine Mir görüntüleme sunucusunu kullanacak gibi görünüyor: link linki Diğer Ubuntu çeşitleri, muhtemelen Wayland'a geçecek: link
Diego

4
İşte X'i ve neden insanların bunu değiştirmek istediklerini açıklayan harika bir video: youtube.com/watch?v=cQoQE_HDG8g
Jason

Ubuntu 18 (Bionic) şimdi varsayılan olarak xorg kullanacak, ancak wayland hala giriş ekranında bir seçenektir: blog.ubuntu.com/2018/01/26/…
Kris

X'in daha iyi olduğunu söyleyebilirim. Ben teknik meselelere girmem. Ama ben sadece pencereyi yeniden boyutlandırmak veya tam ekrandan çıkmak / çıkmak için Wayland ile youtube'a çerçeve bıraktığımı söyleyeceğim. X ile sorun yok. Hız aynı olsa bile. Ayrıca Wayland'da fare imleci X'ten daha gevşek hissediyor. X hala benim no1'im
Luka

Yanıtlar:


136

Görebilirsiniz Wayland mimari sayfasını o tasarımda nasıl farklılık gösterdiğini görmek için. Standart bir GEM / DRM yığını boyunca her şeyi doğrudan çekirdeğe zorlayarak ve bileşimin kendisini yöneterek tüm grafik yığınını basitleştirmesi gerekiyordu.

Bunu, her yerdeki bit ve bobların olduğu X yığınıyla karşılaştırın. X karmaşasının bir kısmı esnek bir tasarıma sahip, bazıları ise acı çekiyor. Tüm besteciler (Compiz / Metacity / Mutter / KWin / etc) sonradan eklendi. Özünde X'in muhtemelen yapması gereken şeyi yapmakta zorlanıyorlar. İşler olduğu gibi dışarıya doğru genişlemeye devam ederse, projenin sürdürülemez hale geldiği bir noktaya geleceğiz.

Sonuçta, donanım desteği varken standart yığında kullanmak tüm yığını daha verimli ve daha az acı verici hale getirmelidir.

Bununla birlikte, şu ana kadar çözüm bulmadığım birkaç sorun var:

  • X oldukça ağ farkında. Pencereleri başka bilgisayarlara gönderebilir, uzak oturum açma işlemleriyle birlikte birden fazla ekrana ve bunun gibi her tür korkak şeylere sahip olabilirsiniz. Bu oldukça uzman görünebilir ama yaygın olarak kullanılan bir teknolojidir. Wayland, kıyaslandığında oldukça yerel ve statik görünüyor.

  • Ayrıca sürücü desteği var. Kapalı kaynaklı sürücüler henüz Wayland'ın geliştirdiği KMS / paylaşılan-GEM / paylaşılan-DRM teknolojilerini desteklememektedir. Bir temizlikçi Nouveau ile iyi olabilir ama yüksek performanslı bir 3D grafik kartı için 100-400 £ ödeyen biri, şu anki açık sürücüyle elde ettikleri lapa lapa zayıf 3d performanstan memnun olmayacak.

    Güncelleme: Nvidia, Wayland ve Mir'i desteklemek için çalışıyor .


2018 güncelleme . 17.10 varsayılan ekran sunucusu olarak Wayland'ı kullandı (kapalı bir sürücünüz ya da desteklemeyen ya da gerekli bir sürücünüz olmadığı sürece). 18.04 ve 18.10'un ikisi de genel varsayılan olarak X'i kullanır (Wayland'ı yükleyebilmenize rağmen).

Hiçbir şeyden sorumlu değilim ama bu durumdan, hala gerçek bir çekiş elde etmekten uzak bir metrik Nvidia gibiyiz . Bu noktaya kadar, Wayland’ın gerisinde yeterince düşüncesiz zenginlik ve gelişme gücü göreceğimizi sanmıyorum. Oyun / performans pazarı X kullanıyor. MCE pazarı X (ve doğrudan çerçeveler) kullanıyor. Wayland'in gerçek bir şansı olacağından emin değilim.


21
Ağın şeffaflığı, birçok nedenden ötürü aşırı şişmiştir. 1. Saf X iletme, yalnızca bir LAN üzerinden yeterince hızlıdır. İnternet üzerinden işlenmemiş X gecikme nedeniyle kullanılamaz. İyi performans elde etmek için NX veya VNC gibi üçüncü taraf protokollerini kullanmanız gerekir. 2. Hem NX hem de VNC, X'in mimarisinden dolayı oluşacak çok büyük bir acıdır. Wayland ile daha kolay olmalı. 3. Çok az sayıda modern araç kiti X'in çizim kodunu kullanır. Sadece kendilerini bir bitmap'e çekerler ve bunu X'e gönderirler. Bu, Wayland ile tamamen aynıdır ve aynı ağ özelliklerine sahip olacaktır.
Timmmm

4
Nokta 1 ile aynı fikirdeyim ama iyi bir LAN üzerinden, kalite ve performans için dokunulmaz X-iletme. Deneyimlerimdeki alternatiflerden çok daha iyi.
Oli

1
2013 itibariyle ağ şeffaflığı konusunda durum daha net: askubuntu.com/a/359870/203271
Diego

2
@poolie: Görünüşe göre fikirlerini değiştirdiler. ;-)
Pe

2
Gönderen BionicBeaver / SürümNotlar : "X varsayılan görüntü sunucusudur Wayland Teknik Önizleme olarak verilmiştir ve kapanır. 20.04 LTS varsayılan ekran sunucusu olması bekleniyor sadece günlüğüne üzerinde cog dan Wayland ile Ubuntu seçin Denemek için. X.org günlükleri artık ~ / .local / share / xorg "[vurgu mayınım]
Dennis Williamson'da

56

Orada bir sürü X ve Wayland arasındaki farkların. Muhtemelen grafiklerin en büyüğü Wayland'ın çizim yapmamasıdır .

X'in iki çizim API'si vardır. Bunlardan biri, eski, işe yaramaz ve hiç kimsenin kullanmadığı çekirdek X11 protokolünün bir parçasıdır. Diğeri, degradeler gibi diğer şeylerin yanı sıra, modern bileşik işlemler sağlayan XRender uzantısıdır. Mesela Kahire'nin kullandığı şey budur. X ayrıca yazı tipi çizim API'lerine de sahiptir.

Wayland'ın çizim API'leri yok. Bir Wayland istemcisi, temel olarak bazı grafik belleğinin bir göstergesi olan bir DRM arabellek tutamacını alır; Wayland, müşterinin bu tampon belleğe nasıl çizdiğini bilmiyor veya umursamıyor. Bu, X terimlerinde tüm uygulamaların doğrudan işleme alınabileceği anlamına gelir - çizim isteklerinin sunucudan geçmesi gerekmez.

Wayland'ın yaptığı tek işlem, müşterinin tamponlarını ekrana kopyalamaktır.

Avantajlar açısından, Wayland X'ten çok daha az karmaşıktır ve bu da bakımını kolaylaştırmayı gerektirir - bu basitliğin bir kısmı karmaşıklığı (örneğin: aslında bu tamponu nasıl kullanacağını , ağ şeffaflığını) diğer katmanlara çekmekten geliyor yığını. Müşterileri tüm işlemlerinden sorumlu hale getirerek, müşteriler çift tamponlama gibi şeylerden daha akıllı olabilirler.

Grafik dışında başka yararları da var. Örneğin, uygulamaları zımparalamak çok daha kolaydır.


2
Microsoft'un DirectX gibi şeyler gibi geliyor?
Anwar,

3
Çekirdek X11 protokolü çizim API'sini kullanıyorum, çünkü XRender'dan daha hızlı.
étale-cohomology

3
Ayrıca Wayland ve systemd'den Microsoft yazılımları alıyorum. Ve hayır, bu iyi bir şey değil. Temel yazılım geliştirme kurallarını çiğniyorlar. Sistemd'de sadece systemd geliştiricileri için daha kolaydır. Yol arazilerinde daha hızlı oyunlar (?) Ve render istedikleri için ve bununla birlikte pek çok güzel şey atarlar.
Anders

18

Gözlerimdeki en büyük fark Wayland'ın çekirdeğe X-Server'dan daha yakın olduğudur. Grafik sürücülerinin X'ten çekirdeğe taşınmasıyla (çekirdek modu ayarı, KMS olarak da bilinir), Wayland, X yerine bu yeni işlevi kullanmayı planlıyor. Aşağıdakileri görmeyi bekleyebilirsiniz ...

X'ten daha az yer kaplar - çünkü ekran çekirdeğin Wayland tarafından işlendiği durumlarda, kullanılabilir hale gelmek için çok fazla uygulama yapmak zorunda kalmazsınız. Bu, X iletiminin (başka bir bilgisayardaki bir ekrana bakın) X ile kaybolacağından şüphelendiğim için her iki yoldan da geçer.

KMS özellikleri: X sunucusunu yeniden başlatmadan ekran çözünürlüğünü değiştirebilme (bunun en azından nvidia için bir süre önce X'te sabitlendiğine inandığım halde), akıllı yonga setleri için çekirdek panikte hata ayıklama konsolu (nouveau'ya taşıma) bu tür bir şey.

Herhangi biri yanılsam beni düzeltebilir mi?


4
KMS & GEM, grafik sürücülerini çekirdeğe taşımaz, yalnızca bazı küçük parçalar çekirdeğe taşınır (doğrudan donanıma konuşan bitler ve farklı sürücülerin bir arada olabileceği şekilde çekirdekte olması gerekir. G / Ç bağlantı noktalarına yazma ve belleği yönetme). KMS & GEM, bugün X tarafından en azından modern açık kaynaklı sürücüler (intel, radeon, nouveau) için kullanılıyor. BTW: Bütün grafik sürücüsünü çekirdeğe taşımanın ciddiyetle Linus tarafından kabul edileceğinden ciddi olarak şüpheliyim ...;)
JanC

4
Oh, ve KMS'nin ekran çözünürlüğünü değiştirmek için hiçbir zaman gerekli olmadı (X'i 10 yıldan daha önce kullandığımdan beri mümkün), ancak farklı sürücülere izin veriyor (örneğin, konsol çerçeveli sürücü, X sürücüler ve şimdi Wayland sürücüleri) daha kolay işbirliği yapmak. Geçmişte, grafik donanımının belirli bir noktada “durum” içinde olduğu her biri için her zaman açık değildi ve birçok tahmin ya da sürücüye bağlı özel geçici çözümler kullanıldı.
Ocak

1
X hala Wayland'da bir istemci olarak kullanılabildiğinden, X iletiminin ortadan kalkacağı tamamen doğru değil. wayland.freedesktop.org buna bir örnektir. Fakat X zaten böyle bir şeyi yapmanın korkunç bir yoludur. Değişim zamanı geldi. Pek çok durumda, Broadway ile GTK gibi şeyler daha iyi bir yaklaşım olabilir gibi görünüyor.
Jo-Erlend Schinstad

3
RandR uzantısı, X sunucusunu yeniden başlatmadan ekran çözünürlüğünü değiştirmenizi sağlar.
Anonim

14

Diğer tüm yazılar Wayland'ın yararlarını vurgulamaktadır, ancak hepsi iyi değildir. X'in Wayland üzerinden en büyük avantajı, X'in ağ üzerinden çalışmasıdır. X ağa saydamdır, asıl program genellikle daha güçlü bir makinede çalışırken, bir terminalde pencereyi veya XDMCP ile tam bir oturumu görüntüleyebilirsiniz. Wayland gibi bir şeyle ağ şeffaflığı fikri ortadan kalktı. Belki de bugünlerde hızlı ağlar ve VNC ve RDP gibi diğer protokoller için çok fazla bir şey gerekli değildir.


Bu tam olarak X'in önerilen Wayland'a göre en büyük avantajını düşündüğüm şey.
Kris Jace,

7

Basitçe söylemek gerekirse, umut daha iyi grafikler (daha az buggy, daha hızlı, kullanımı daha kolay) içindir. Daha önce olmayan bir gün bile mümkün olabilir. Kişisel olarak bunun rekabetin her zaman olduğu gibi en azından bazı şeyleri canlandırdığını düşünüyorum.


3

Günlük işlerde herkesin çok çabuk farkedeceği iki şey:

  • Wayland, X11’de düzeltilemeyecek kadar fazla kağıt kâğıtlarını kullanıyor. Ünlü bir örnek: Bir menü açıkken veya kilit ekranı açıkken, işlev tuşlarını (hoparlör ses seviyesi, ekran parlaklığı vb.) Kullanma.
  • Giriş cihazlarında Wayland daha iyidir. Birincisi, kalıcı bir tıkla tıklatma ayarı dahil olmak üzere dokunmatik yüzeyleri yapılandırmak için daha birçok seçenek var.

1
Bir program bir nedenden dolayı kilitlenirse Wayland daha kötüdür. Farklı wm'lere sahip olmak iyi bir şey. X11 ağını düzenli olarak kullanıyorum (her gün). Bazı programlar Wayland'da çalışmayı bıraktı (Ubuntu 18.04 kullanıyorum)
Anders
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.