์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.

1. ๊ฐœ์š”[ํŽธ์ง‘]

X11, X Window System, Xorg, ํ˜น์€ ๊ทธ๋ƒฅ X์œผ๋กœ ๋ถˆ๋ฆฐ๋‹ค.
1984๋…„์— MIT์—์„œ ์ฒ˜์Œ ๊ฐœ๋ฐœ๋˜์—ˆ์œผ๋ฉฐ MIT ํ—ˆ๊ฐ€์„œ๋กœ ๋ฐฐํฌ๋œ๋‹ค. ํ˜„์žฌ๋Š” X.org ์žฌ๋‹จ์—์„œ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ๋‹ค.
๋ฆฌ๋ˆ…์Šค(+์œ ๋‹‰์Šค)์˜ GUI๋Š” ๋Œ€๊ฐœ๊ฐ€ X ์œˆ๋„์šฐ ์‹œ์Šคํ…œ์ด๋‹ค.

๊ทธ๋ž˜ํ”ฝ ์ถœ๋ ฅ์„ ์œ„ํ•ด ํด๋ผ์ด์–ธํŠธ ์„œ๋ฒ„ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋ฉฐ, TCP/IP ๋„คํŠธ์›Œํฌ ๊ธฐ๋ฐ˜์˜ X ํ”„๋กœํ† ์ฝœ๋กœ ํ†ต์‹ ์„ ํ•œ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ฌด์–ธ๊ฐ€ ๊ทธ๋ž˜ํ”ฝ์ ์ธ ์š”๊ตฌ๋ฅผ X ์„œ๋ฒ„๋กœ ์ „๋‹ฌํ•˜๋ฉด, X ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ๋กœ ๋ฐ˜ํ™˜ํ•ด ์ค€๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ก ์ƒ์œผ๋กœ๋Š” ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์— ์„ค์น˜๋˜์–ด ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋‚ด ์ปดํ“จํ„ฐ์— ๊น”์ง€ ์•Š๊ณ ๋„ X ์œˆ๋„์šฐ๋ฅผ ํ†ตํ•ด ์›๊ฒฉ์œผ๋กœ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.


X ์„œ๋ฒ„์™€ X ํด๋ผ์ด์–ธํŠธ๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด, ๋ฉ”๋ชจ์žฅ์„ ์˜ˆ๋กœ ๋“ค์–ด๋ณด์ž. ๋ฉ”๋ชจ์žฅ์€ X ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋œ๋‹ค. ์›น๋ธŒ๋ผ์šฐ์ €, ๋™์˜์ƒ ์žฌ์ƒ๊ธฐ, ๊ฒŒ์ž„ ๊ฐ™์€ ๋ชจ๋“  ์‹คํ–‰ ํ”„๋กœ๊ทธ๋žจ์„ X ํด๋ผ์ด์–ธํŠธ๋ผ๊ณ  ์ƒ๊ฐํ•ด๋„ ๋ฌด๋ฆฌ๋Š” ์—†๋‹ค. ์œ„ํ‚ค ์ž‘์„ฑ์„ ์œ„ํ•ด ๋ป˜๊ธ€์„ ์ ๊ธฐ ์œ„ํ•ด Openbox ๋ฉ”๋‰ด์—์„œ ๋ฉ”๋ชจ์žฅ์„ ํด๋ฆญํ•˜๋ฉด
  1. X ํด๋ผ์ด์–ธํŠธ ๋ฉ”๋ชจ์žฅ์— ์‹คํ–‰ ๋ช…๋ น์ด ์ „๋‹ฌ๋˜๊ณ 
  2. ํ˜ธ์ถœ์„ ๋ฐ›์€ ๋ฉ”๋ชจ์žฅ์€ X ์„œ๋ฒ„์— "๊ฐ€๋กœ์„ธ๋กœ ํฌ๊ธฐ๋Š” ์ด๋งŒํผ, ๋ฐฐ๊ฒฝ์ƒ‰๊ณผ ๊ธ€์ž์ƒ‰์€ ์ด๋ ‡๊ฒŒ, ์ปค์„œ๋Š” ๊นœ๋นก์ผ ๊ฒƒ."ํ•˜๊ณ  X ์„œ๋ฒ„๋กœ X ํ”„๋กœํ† ์ฝœ์„ ๋‚ ๋ฆฐ๋‹ค.
  3. ์ด์ œ X ์„œ๋ฒ„๋Š” ๊ทธ๋ž˜ํ”ฝ ์นด๋“œ์™€ ๋ชจ๋‹ˆํ„ฐ๋กœ ํ•˜์—ฌ๊ธˆ ๋ฉ”๋ชจ์žฅ์ด ํ‘œ์‹œ๋˜๊ฒŒ ํ•˜๊ณ 
  4. ์‚ฌ์šฉ์ž๊ฐ€ ํ‚ค๋ฅผ ๋‘๋“ค๊ธฐ๋ฉด ๊ฐ™์€ ์‹์œผ๋กœ ํ•ด๋‹น ๊ธ€์ž๋“ค๋„ ํ™”๋ฉด์— ๋‚˜ํƒ€๋‚˜๊ฒŒ ๋œ๋‹ค.

์ •๋ฆฌ๋ฅผ ํ•˜๋ฉด X ์„œ๋ฒ„๋Š” X ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋””์Šคํ”Œ๋ ˆ์ด ์žฅ์น˜์— ์ถœ๋ ฅํ•˜๊ฑฐ๋‚˜ ํ‚ค๋ณด๋“œ, ๋งˆ์šฐ์Šค, ํ„ฐ์น˜ ์Šคํฌ๋ฆฐ๊ณผ ๊ฐ™์€ ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ X ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ์›๊ฒฉ ์‹œ์Šคํ…œ์˜ X ํด๋ผ์ด์–ธํŠธ๋„ ๋กœ์ปฌ ์‹œ์Šคํ…œ์˜ X ์„œ๋ฒ„์—์„œ ๋‹ด๋‹นํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ X ์œˆ๋„๊ฐ€ ๋„คํŠธ์›Œํฌ ๊ธฐ๋ฐ˜์˜ ์„œ๋ฒ„/ํด๋ผ์ด์–ธํŠธ ๋ฐฉ์‹์ด๊ธฐ์— ๊ฐ€๋Šฅํ•œ ๊ฒƒ์ด๋‹ค.

2. ๋ฌธ์ œ์ [ํŽธ์ง‘]

X11์€ XFree86[1]์˜ ๋ผ์ด์„ผ์Šค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด XFree86์˜ ๊ตฌ๋ฒ„์ „์„ ํ† ๋Œ€๋กœ ๊ฐœ๋ฐœํ•œ ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ํ•˜๋„ ์˜ค๋ž˜ ์“ฐ๋‹ค๋ณด๋‹ˆ ์ฝ”๋“œ ์ตœ์ ํ™”๊ฐ€ ์ด๋ฃจ์–ด์งˆ๋ž˜์•ผ ์ด๋ฃจ์–ด์งˆ ์ˆ˜๊ฐ€ ์—†๊ณ , ์—ฌ๋Ÿฌ ํŽธ์˜์‚ฌํ•ญ์€ ์ถ”๊ฐ€๋ฅผ ํ•˜๋‹ˆ ๋ฉ์น˜๊ฐ€ ๋งŽ์ด ์ปค์กŒ๋‹ค.

3. Wayland[ํŽธ์ง‘]

์œ„ ๋ฌธ์ œ์ ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋Œ€์ฒดํŒ์œผ๋กœ, ์ฐจ์„ธ๋Œ€ X Window System์œผ๋กœ์„œ X11์— ๋น„ํ•ด ๋ฉ์น˜๊ฐ€ ๋งŽ์ด ์ž‘์œผ๋‚˜, ์•„์ง๊นŒ์ง€๋Š” X11์ด ๋Œ€์„ธ์ด๊ธฐ ๋•Œ๋ฌธ์— X11 ๊ธฐ๋ฐ˜์œผ๋กœ ๋Œ์•„๊ฐ€๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๋งŽ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ ์ฐจ Wayland๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๋ฐฐํฌํŒ์ด ๋Š˜์–ด๋‚˜๊ณ  ์žˆ๋Š” ์ถ”์„ธ์ธ์ง€๋ผ, ๋Œ€์„ธ๊ฐ€ ๋˜๋Š” ๊ฒƒ์€ ์‹œ๊ฐ„ ๋ฌธ์ œ์ผ์ง€๋„ ๋ชจ๋ฅธ๋‹ค.

๋ฆฌ๋ˆ…์Šค ์ปค๋„์—์„œ ์ตœ์‹  ๊ทธ๋ž˜ํ”ฝ์Šค ์นฉ์…‹์„ ์ง€์›ํ•˜๋Š” ๊ธฐ์ˆ ๋“ค์ด ํ•„์š”ํ•˜์—ฌ X11๊ณผ ์ค‘๋ณต๋˜๋Š” ๋ถ€๋ถ„์ด ๋งŽ์•„์กŒ๊ธฐ์— ์ด ๋ถ€๋ถ„์„ ๋ชจ๋˜ํ™” ํ•˜๊ธฐ ์œ„ํ•ด ์‹œ์ž‘ํ–ˆ๋‹ค. 2008๋…„๋ถ€ํ„ฐ ์‹œ์ž‘๋˜์—ˆ์œผ๋ฉฐ, 2012๋…„์— ๋ฒ„์ „ 1.0์ด ๋‚˜์™”๋‹ค. ์ดˆ๊ธฐ์—๋Š” ํ•˜๋“œ์›จ์–ด ํ˜ธํ™˜์„ฑ๊ณผ ์•ˆ์ •ํ™” ๋ฌธ์ œ๋„ ์žˆ๊ณ  ํ•ด์„œ ์‚ฌ์šฉ์ด ๋งŽ์ง€ ์•Š์•˜์œผ๋‚˜, GNOME์˜ ๋””ํดํŠธ๊ฐ€ Wayland๊ฐ€ ๋˜๋ฉด์„œ GNOME์„ ์ฑ„ํƒํ•˜๊ณ  ์žˆ๋Š” ํŽ˜๋„๋ผ, ๋ฐ๋น„์•ˆ ๋“ฑ ๋ฐฐํฌํŒ๋„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค. X11๊ฐ€ ์›๊ฒฉ ์ ‘์†์— ํŠนํ™”๋˜์–ด ์žˆ๋‹ค๋ฉด, Wayland๋Š” ํ•˜๋“œ์›จ์–ด ๊ฐ€์†๊ฐ™์ด ์ผ๋ฐ˜ ์œ ์ €์—๊ฒŒ ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์— ํŠนํ™”๋˜์–ด ์žˆ๋‹ค.[2]

๋ฉ”์ด์ € ๋ฐฐํฌํŒ์ธ ์šฐ๋ถ„ํˆฌ๊ฐ€ Mir๋ฅผ ๋งŒ๋“ค์–ด ๊ฒฝ์Ÿ์„ ํ•˜๊ธฐ๋„ ํ–ˆ์œผ๋‚˜ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ขŒ์ดˆํ•˜๊ณ , ์šฐ๋ถ„ํˆฌ 17.10์— Wayland๊ฐ€ ์ •์‹ ์ฑ„ํƒ๋˜์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ ๋‹ค์Œ LTS ๋ฒ„์ „์ธ 18.04์—์„œ๋Š” X11๋กœ ๋ณต๊ท€ ํ–ˆ์œผ๋ฉฐ, 20.04์—์„œ๋Š” X11๊ณผ Wayland๋ฅผ ์„ค์ • ํŒŒ์ผ์„ ํ†ตํ•ด ์„ ํƒ๊ฐ€๋Šฅํ•˜๋‹ค.

์—”๋น„๋””์•„๋Š” AMD๋‚˜ ์ธํ…”๊ณผ๋Š” ๋‹ฌ๋ฆฌ Wayland๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” GBM#์„ ๊ฑฐ๋ถ€ํ•˜๊ณ  ๋…์ž ๊ธฐ์ˆ ์ธ EGLStream์„ ํ†ตํ•ด Wayland API๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
[1] X11์ด ๋งŒ๋“ค์–ด์ง€๊ธฐ ์ „์— ์žˆ๋˜ X ์œˆ๋„์šฐ ์‹œ์Šคํ…œ์ด๋‹ค.
[2] ํ•˜๋“œ์›จ์–ด ๊ฐ€์†์€ X11๋„ ์ง€์›ํ•˜์ง€๋งŒ ๋กœ๋ ˆ๋ฒจ ์ฝ”๋”ฉ์ด ์–ด๋ ต๊ณ  ๋‚œ์ด๋„์— ๋น„ํ•ด ์–ป๋Š” ์„ฑ๋Šฅ ํšจ์œจ์ด ๋‚˜์˜๋‹ค. ํŒŒ์ด์–ดํญ์Šค์˜ ๊ฒฝ์šฐ X11์€ ๋™์˜์ƒ ํ•˜๋“œ์›จ์–ด ๊ฐ€์†์ด ์žˆ์œผ๋‚˜ ๋งˆ๋‚˜ ์„ฑ๋Šฅ์ด ๋น„์Šทํ•˜๋‹ค๊ณ  ํŒ๋‹จํ•ด Wayland์—์„œ๋งŒ ํ•˜๋“œ์›จ์–ด ๊ฐ€์†์„ ์ง€์›ํ•˜๋„๋ก ์ฝ”๋“œ๊ฐ€ ์ˆ˜์ •๋˜๊ณ  ์žˆ๋‹ค. ๋ฐ˜๋ฉด VNC ๊ฐ™์€ ์›๊ฒฉ GUI ์ ‘์†์€ Wayland๊ฐ€ ๋ฐ€๋ฆฌ๋Š”๋ฐ, X11์€ TigerVNC, X11vnc, X2go ๋“ฑ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•˜๋‚˜ Wayland๋Š” ogon, gnome-remote-desktop, krfb, waypipe ๋“ฑ ๋‹ค์–‘ํ•œ ์‹œ๋„๊ฐ€ ์žˆ์ง€๋งŒ ํŠน์ • ๋ฐ์Šคํฌํ†ฑ ํ™˜๊ฒฝ์— ์ข…์†๋˜์–ด ์žˆ๊ฑฐ๋‚˜ X11 ์„ธ์…˜์—๋งŒ ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” ์ œํ•œ์ด ์žˆ๋‹ค.