GNU/Linux >> Belajar Linux >  >> Linux

Linux – Bagaimana Tampilan Linux Bekerja?

Sistem tampilan Linux menggunakan banyak teknologi , protokol, ekstensi, aplikasi, server (daemon), driver dan konsep untuk mencapai sistem windowing misalnya:
Xorg, Wayland, X11, OpenGL, RandR, XrandR, Resolusi Layar, DPI, Server tampilan, dll.

Banyaknya itu bisa membuat kita kewalahan atau membingungkan ketika kita tidak memiliki gambaran lengkapnya. Ada beberapa dokumentasi untuk setiap sisi sistem tampilan Linux, tetapi secara global bagaimana tepatnya cara kerjanya?

Jawaban yang Diterima:

Tampilan Linux

Sistem tampilan Linux, menggunakan beberapa teknologi, protokol, ekstensi, aplikasi, server (daemon), driver dan konsep untuk mencapai sistem windowing misalnya:Xorg, Wayland, X11, OpenGL, RandR, XrandR, Resolusi Layar, DPI, Server tampilan , dll. Ini bisa sangat sulit untuk dipahami sepenuhnya, tetapi setiap sisinya dimaksudkan untuk tujuan tertentu dan mereka tidak digunakan secara bersamaan.

Protokol X

Sistem X Window, X11 (X versi 11) adalah sistem windowing untuk tampilan bitmap, umum pada sistem operasi mirip Unix, X menyediakan kerangka dasar untuk lingkungan GUI:menggambar dan memindahkan jendela pada perangkat tampilan dan berinteraksi dengan mouse dan keyboard. X tidak mengamanatkan antarmuka pengguna, ini ditangani oleh program individual. Dengan demikian, gaya visual lingkungan berbasis X sangat bervariasi; program yang berbeda dapat menghadirkan antarmuka yang sangat berbeda. X berasal dari Project Athena di Massachusetts Institute of Technology (MIT) pada tahun 1984. Protokol X telah berada di versi 11 (maka "X11") sejak September 1987. Yayasan X.Org memimpin proyek X, dengan implementasi referensi saat ini , X.Org Server, tersedia sebagai perangkat lunak sumber terbuka dan gratis di bawah Lisensi MIT dan lisensi permisif serupa.

implementasi X

Sebagian besar distribusi Linux menggunakan X.Org Server yang merupakan implementasi gratis dan sumber terbuka dari server tampilan untuk Sistem X Window (X11) yang dikelola oleh X.Org Foundation. Xorg/X saja tidak mendukung beberapa fitur yang disediakan seperti penskalaan atau rendering, untuk itu Xorg menggunakan ekstensi seperti XFixes, RandR (RandR dikelola oleh xrandr itu dapat misalnya mengatur panning, resolusi atau penskalaan), GLX (ekstensi OpenGL), Render atau Komposit yang menyebabkan seluruh sub-pohon hierarki jendela dirender ke buffer di luar layar, aplikasi kemudian dapat mengambil konten itu buffer dan melakukan apa pun yang mereka suka, buffer di luar layar dapat secara otomatis digabungkan ke dalam jendela induk atau digabungkan oleh program eksternal, yang disebut pengelola komposisi untuk melakukan pengomposisian sendiri seperti beberapa pengelola jendela melakukan; Misalnya. Compiz, Pencerahan, KWin, Marco, Metacity, Muffin, Mutter dan Xfwm. Untuk “non-pengomposisian . lainnya Manajer jendela, manajer komposit mandiri dapat digunakan, contoh:Picom, Xcompmgr atau Unagi. Ekstensi yang didukung Xorg dapat dicantumkan dengan:xdpyinfo -display :0 -queryExtensions | awk '/^number of extensions:/,/^default screen number/' .

Sebaliknya Wayland dimaksudkan sebagai pengganti yang lebih sederhana untuk Xorg/X11, lebih mudah untuk dikembangkan dan dipelihara tetapi pada tahun 2020 dukungan desktop untuk Wayland belum sepenuhnya siap selain Gnome (misalnya dukungan KDE Kwin dan Wayland); di sisi distribusi, Fedora menggunakan Wayland secara default. Perhatikan bahwa Wayland dan Xorg dapat bekerja secara bersamaan, hal ini dapat terjadi tergantung pada konfigurasi yang digunakan. XWayland adalah serangkaian tambalan di atas basis kode server X.Org yang mengimplementasikan server X yang berjalan di atas protokol Wayland. Tambalan dikembangkan dan dipelihara oleh pengembang Wayland untuk kompatibilitas dengan aplikasi X11 selama transisi ke Wayland, dan digarisbawahi dalam versi 1.16 dari Server X.Org pada tahun 2014. Ketika pengguna menjalankan aplikasi X dari dalam Weston, itu akan memanggil XWayland untuk melayani permintaan.

Terkait:Setelah memperbarui ke MacOS Catalina MAMP tidak berfungsi lagi dengan root pada pemasangan jaringan?

Seluruh cakupan

Server tampilan atau server jendela adalah program (seperti Xorg atau Wayland) yang tugas utamanya adalah mengoordinasikan input dan output kliennya ke dan dari sistem operasi lainnya, perangkat keras, dan satu sama lain. Server tampilan berkomunikasi dengan kliennya melalui protokol server tampilan, sebuah protokol komunikasi, yang dapat transparan jaringan atau hanya berkemampuan jaringan. Misalnya X11 dan Wayland adalah protokol komunikasi server tampilan.

Seperti yang ditunjukkan pada diagram, pengelola jendela adalah elemen penting lainnya dari lingkungan desktop yang merupakan perangkat lunak sistem yang mengontrol penempatan dan tampilan jendela dalam sistem jendela dalam antarmuka pengguna grafis. Sebagian besar pengelola jendela dirancang untuk membantu menyediakan lingkungan desktop. Mereka bekerja bersama dengan sistem grafis yang mendasari yang menyediakan dukungan fungsionalitas yang diperlukan untuk perangkat keras grafis, perangkat penunjuk, dan keyboard, dan sering ditulis dan dibuat menggunakan toolkit widget. KDE menggunakan KWin sebagai pengelola jendela (memiliki dukungan terbatas untuk Wayland pada 2020), demikian pula Gnome 2 menggunakan Metacity dan Gnome 3 menggunakan Mutter sebagai pengelola jendela.

Aspek penting lainnya dari pengelola jendela adalah compositor atau pengelola jendela pengomposisian , yang merupakan pengelola jendela yang menyediakan aplikasi dengan buffer di luar layar untuk setiap jendela. Manajer jendela menggabungkan buffer jendela menjadi gambar yang mewakili layar dan menulis hasilnya ke dalam memori tampilan. Penggabungan window manager dapat melakukan pemrosesan tambahan pada jendela buffer, menerapkan efek animasi 2D dan 3D seperti blending, fading, scaling, rotasi, duplikasi, bending dan liuk, shuffling, blurring, redirecting aplikasi, dan menerjemahkan jendela ke dalam salah satu dari sejumlah tampilan dan desktop virtual. Teknologi grafis komputer memungkinkan efek visual ditampilkan secara real time seperti bayangan jatuh, pratinjau langsung, dan animasi kompleks. Karena layar memiliki buffer ganda, layar tidak berkedip selama pembaruan. Pengatur jendela pengomposisian yang paling umum digunakan meliputi:Linux, BSD, Hurd dan OpenSolaris-Compiz, KWin, Xfwm, Enlightenment dan Mutter. masing-masing memiliki implementasinya sendiri, misalnya kompositor KWin KDE memiliki banyak fitur/pengaturan seperti kecepatan animasi, pencegahan robek (vsync), thumbnail jendela, metode penskalaan dan dapat menggunakan OpenGLv2/OpenGLv3 atau XRender sebagai perenderan backend bersama dengan Xorg. (XRender/Render jangan bingung dengan XRandR/RandR).

OpenGL (Buka Pustaka Grafik) adalah antarmuka pemrograman aplikasi (API) lintas bahasa, lintas platform untuk merender grafik vektor 2D dan 3D. API biasanya digunakan untuk berinteraksi dengan unit pemrosesan grafis (GPU), untuk mencapai rendering yang dipercepat perangkat keras. OpenGL adalah perpustakaan rendering yang dapat digunakan dengan Xorg, Wayland, atau aplikasi apa pun yang mengimplementasikannya. Instalasi OpenGL dapat diperiksa dengan glxinfo | grep OpenGL .

Tampilan resolusi atau mode tampilan monitor komputer atau perangkat tampilan adalah jumlah piksel berbeda di setiap dimensi yang dapat ditampilkan. Biasanya dikutip sebagai lebar × tinggi, dengan satuan dalam piksel:misalnya, 1024 × 768 berarti lebarnya adalah 1024 piksel dan tingginya adalah 768 piksel. xrandr dapat digunakan untuk menambah atau merender/mensimulasikan resolusi tampilan baru.

DPI singkatan dari titik per inci dan merupakan ukuran pencetakan/tampilan spasial , khususnya jumlah titik individu yang dapat ditempatkan dalam garis dalam rentang 1 inci (2,54 cm). Layar komputer tidak memiliki titik, tetapi memiliki piksel, konsep yang terkait erat adalah piksel per inci atau PPI dan dengan demikian DPI diimplementasikan dengan konsep PPI. Default 96 Ukuran DPI berarti 96x96 secara vertikal dan horizontal. Selain itu Apakah pengaturan X DPI (dot per inci) hanya dimaksudkan untuk penskalaan teks? QA sangat informatif.

Terkait:Mengapa lakban tidak berfungsi dengan baik pada kabel?

Catatan

Beberapa alat gui KDE: systemsettings5> tampilan, kcmshell5 xserver dan kinfocenter .

Referensi

Tautan dan sumber: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 dan 12.


Linux
  1. Cara bekerja dengan klien SFTP di Linux – 10 perintah sftp

  2. Linux – Bagaimana Load Average Bekerja Dengan CPU Modern?

  3. Ssh – Bagaimana Tcp-keepalive Bekerja Di Ssh?

  1. Beginilah Cara Server Linux Beroperasi

  2. Cara Menginstal Virtualisasi Server Linux

  3. Bagaimana cara kerja perintah 'ls' di Linux/Unix?

  1. Bagaimana cara kerja ngrok di belakang firewall?

  2. ZFS di Linux, apakah itu berfungsi?

  3. Bagaimana cara kerja debugger di Linux?