Arcan ๋ฐ์Šคํฌํ†ฑ ์—”์ง„ ๋ฆด๋ฆฌ์Šค 0.6.1

0.6.1๋…„๊ฐ„์˜ ๊ฐœ๋ฐœ ๋์— ๋””์Šคํ”Œ๋ ˆ์ด ์„œ๋ฒ„, ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ํ”„๋ ˆ์ž„์›Œํฌ, 3D ๊ทธ๋ž˜ํ”ฝ ์ฒ˜๋ฆฌ์šฉ ๊ฒŒ์ž„ ์—”์ง„์„ ๊ฒฐํ•ฉํ•œ ๋ฐ์Šคํฌํ†ฑ ์—”์ง„ Arcan 2์ด ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Arcan์€ ์ž„๋ฒ ๋””๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ถ€ํ„ฐ ๋…๋ฆฝํ˜• ๋ฐ์Šคํฌํ†ฑ ํ™˜๊ฒฝ๊นŒ์ง€ ๋‹ค์–‘ํ•œ ๊ทธ๋ž˜ํ”ฝ ์‹œ์Šคํ…œ์„ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ๊ฐ€์ƒํ˜„์‹ค ์‹œ์Šคํ…œ์„ ์œ„ํ•œ ์„ธ์ดํ”„์ŠคํŽ˜์ด์Šค(Safespaces) XNUMX์ฐจ์› ๋ฐ์Šคํฌํƒ‘๊ณผ ๋”๋“ (Durden) ๋ฐ์Šคํฌํƒ‘ ํ™˜๊ฒฝ์€ ์•„๋ฅด์นธ(Arcan)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋Š” C๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ BSD ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค(์ผ๋ถ€ ๊ตฌ์„ฑ ์š”์†Œ๋Š” GPLvXNUMX+ ๋ฐ LGPL์— ๋”ฐ๋ฆ…๋‹ˆ๋‹ค).

์ƒˆ ๋ฆด๋ฆฌ์Šค์—๋Š” ์ฃผ๋กœ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ๋ฐ์Šคํฌํ†ฑ์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•œ ํ•˜์œ„ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์— ์ค‘์ ์„ ๋‘๊ณ  ์ง€๋‚œ ํ•œ ํ•ด ๋™์•ˆ ์ถ•์ ๋œ ๊ฐœ๋ฐœ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์ฒซ ๋ฒˆ์งธ ์ค‘์š”ํ•œ ๋ฆด๋ฆฌ์Šค 1.0์„ ์ค€๋น„ํ•˜๊ธฐ ์œ„ํ•œ ๊ณ„ํš์ด ์ œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ๋ถ„๊ธฐ 0.7์—์„œ๋Š” ์‚ฌ์šด๋“œ ํ•˜์œ„ ์‹œ์Šคํ…œ์„ ํ™•์žฅํ•˜๊ณ  ํ˜ธํ™˜์„ฑ์„ ๊ฐœ์„ ํ•˜๋ฉฐ 3D ๊ทธ๋ž˜ํ”ฝ์šฉ ๋„๊ตฌ๋ฅผ ๊ฐœ๋ฐœํ•  ์ž‘์—…์ด ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค. Branch 0.8์€ ์ตœ์ ํ™”์™€ ์„ฑ๋Šฅ์— ์ค‘์ ์„ ๋‘๊ณ , 0.9๋Š” ๋ณด์•ˆ์— ์ค‘์ ์„ ๋‘˜ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Arcan 0.6.1 ๋ฒ„์ „์—์„œ ๊ฐ€์žฅ ๋ˆˆ์— ๋„๋Š” ๋ณ€ํ™” ์ค‘ ํ•˜๋‚˜๋Š” EGL ์‚ฌ์šฉ์„ ์œ„ํ•œ ๊ณ„์ธต์„ ๊ตฌํ˜„ํ•˜๊ณ  ๊ธฐ๋ณธ์ ์œผ๋กœ dma-buf ์ง€์›์„ ํ™œ์„ฑํ™”ํ•˜๋Š” Wayland ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜๋Š” arcan-wayland ๋””์Šคํ”Œ๋ ˆ์ด ์„œ๋ฒ„์˜ ํ˜„๋Œ€ํ™”์ž…๋‹ˆ๋‹ค. Xarcan X ์„œ๋ฒ„๋Š” GPU ์Šค์œ„์น˜ ์ฒ˜๋ฆฌ๋ฅผ ๊ฐœ์„ ํ–ˆ์œผ๋ฉฐ ํด๋ฆฝ๋ณด๋“œ ๋ฐ ์ปค์„œ ๋ Œ๋”๋ง์˜ ํ•˜๋“œ์›จ์–ด ๊ฐ€์†์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€๋ณ€ ์ฝ˜ํ…์ธ  ์ƒˆ๋กœ ๊ณ ์นจ ๋นˆ๋„๊ฐ€ ์žˆ๋Š” ํ™”๋ฉด์— ๋Œ€ํ•œ ์ง€์›์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ง€์—ฐ์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ์ž…๋ ฅ ์‹œ์Šคํ…œ์—์„œ ์ž‘์—…์ด ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋™๊ธฐํ™”๋ฅผ ๊ฐœ์„ ํ•˜๊ณ  ์ด๋ฒคํŠธ ํ ๊ด€๋ฆฌ์˜ ํšจ์œจ์„ฑ์„ ๋†’์ด๊ธฐ ์œ„ํ•ด ๋งŽ์€ ๋‚ด๋ถ€ ๋ณ€๊ฒฝ์ด ์ด๋ฃจ์–ด์กŒ์Šต๋‹ˆ๋‹ค. SSH/VNC/RDP/X12์„ ๋Œ€์ฒดํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ๋œ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•œ ๋ฐ์Šคํฌํ†ฑ๊ณผ์˜ ์›๊ฒฉ ์ž‘์—…์„ ์œ„ํ•œ ๊ทธ๋ž˜ํ”ฝ ์„œ๋ฒ„ "arcan-net"๊ณผ ์ด ์„œ๋ฒ„์— ์‚ฌ์šฉ๋˜๋Š” A11 ํ”„๋กœํ† ์ฝœ์˜ ๊ฐœ๋ฐœ์ด ๊ณ„์†๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Lua์—์„œ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ๋ฐ”์ธ๋”ฉ์ด ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Pipeworld ๊ฐœ๋…์ด ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ฐฝ ๊ฐ„ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๋ฆฌ๋””๋ ‰์…˜ํ•˜๊ณ  ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ์˜ ์…€๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์„œ๋กœ ๋‹ค๋ฅธ ์ฐฝ์˜ ๋ฐ์ดํ„ฐ์™€ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ ๊ทธ๋ž˜ํ”ฝ ์ธํ„ฐํŽ˜์ด์Šค์™€ ์ฝ˜์†” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฒฐํ•ฉํ•œ ํ˜ผํ•ฉ ์›Œํฌํ”Œ๋กœ๋ฅผ ํ˜•์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ๋‹ค์Œ์—์„œ ์ถœ๋ ฅ์„ ๋ฆฌ๋””๋ ‰์…˜ํ•  ์ˆ˜ ์žˆ์Œ). ํ•˜๋‚˜์˜ ์ฐฝ์„ ํ„ฐ๋ฏธ๋„ ํ•ธ๋“ค๋Ÿฌ์—์„œ ์‹คํ–‰๋˜๋Š” ์…ธ์— ์—ฐ๊ฒฐํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค๋ฅธ ์ฐฝ์—์„œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

Arcan์€ ๋ณ„๋„์˜ ๊ทธ๋ž˜ํ”ฝ ํ•˜์œ„ ์‹œ์Šคํ…œ์— ๋ฌถ์—ฌ ์žˆ์ง€ ์•Š์œผ๋ฉฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐฑ์—”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์‹œ์Šคํ…œ ํ™˜๊ฒฝ(BSD, Linux, macOS, Windows) ์œ„์—์„œ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์„ ์ƒ๊ธฐ์‹œ์ผœ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Xorg, egl-dri, libsdl ๋ฐ AGP(GL/GLES) ์œ„์—์„œ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. Arcan ๋””์Šคํ”Œ๋ ˆ์ด ์„œ๋ฒ„๋Š” X, Wayland ๋ฐ SDL2๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ํด๋ผ์ด์–ธํŠธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Arcan API ์„ค๊ณ„์— ์‚ฌ์šฉ๋˜๋Š” ์ฃผ์š” ๊ธฐ์ค€์€ ๋ณด์•ˆ, ์„ฑ๋Šฅ ๋ฐ ๋””๋ฒ„๊ทธ ๊ฐ€๋Šฅ์„ฑ์ž…๋‹ˆ๋‹ค. ์ธํ„ฐํŽ˜์ด์Šค ๊ฐœ๋ฐœ์„ ๋‹จ์ˆœํ™”ํ•˜๊ธฐ ์œ„ํ•ด Lua ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ œ์•ˆ๋ฉ๋‹ˆ๋‹ค.

๋น„์ „ ๊ธฐ๋Šฅ:

  • ๋ณตํ•ฉ ์„œ๋ฒ„, ๋””์Šคํ”Œ๋ ˆ์ด ์„œ๋ฒ„ ๋ฐ ์ฐฝ ๊ด€๋ฆฌ์ž ์—ญํ• ์˜ ์กฐํ•ฉ์ž…๋‹ˆ๋‹ค.
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ž๊ธ‰์ž์กฑ ๋งํฌ ์—ญํ• ์„ ํ•˜๋Š” ๋…๋ฆฝ ์‹คํ–‰ํ˜• ๋ชจ๋“œ์—์„œ ์ž‘๋™ํ•˜๋Š” ๊ธฐ๋Šฅ.
  • ๊ทธ๋ž˜ํ”ฝ, ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ž‘์—…, ์ŠคํŠธ๋ฆฌ๋ฐ ๋น„๋””์˜ค ๋ฐ ์‚ฌ์šด๋“œ ์ฒ˜๋ฆฌ, ์ด๋ฏธ์ง€ ๋กœ๋“œ, ๋น„๋””์˜ค ์บก์ฒ˜ ์žฅ์น˜ ์ž‘์—…์„ ์œ„ํ•œ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋‚ด์žฅํ˜• ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ํ”„๋ ˆ์ž„์›Œํฌ.
  • ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์—์„œ ๊ฐœ๋ณ„ ํ”„๋กœ๊ทธ๋žจ์˜ ์ถœ๋ ฅ์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ๋™์  ๋ฐ์ดํ„ฐ ์†Œ์Šค์˜ ์ฒ˜๋ฆฌ๊ธฐ๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋‹ค์ค‘ ํ”„๋กœ์„ธ์Šค ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค.
  • ์—„๊ฒฉํ•œ ๊ถŒํ•œ ๋ถ„๋ฆฌ ๋ชจ๋ธ. ์—”์ง„ ๊ตฌ์„ฑ ์š”์†Œ๋Š” shmif ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ํ†ต์‹ ํ•˜๋Š” ๊ถŒํ•œ์ด ์—†๋Š” ์ž‘์€ ํ”„๋กœ์„ธ์Šค๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค.
  • ๋‚ด์žฅ๋œ ์ถฉ๋Œ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ๋ถ„์„ ๋„๊ตฌ(์—”์ง„ ํฌํ•จ)๋Š” ๋””๋ฒ„๊น…์„ ๋‹จ์ˆœํ™”ํ•˜๊ธฐ ์œ„ํ•ด Lua ์Šคํฌ๋ฆฝํŠธ์˜ ๋‚ด๋ถ€ ์ƒํƒœ๋ฅผ ์ง๋ ฌํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ”„๋กœ๊ทธ๋žจ ์˜ค๋ฅ˜๋กœ ์ธํ•œ ์žฅ์•  ๋ฐœ์ƒ ์‹œ ๋™์ผํ•œ ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ์†Œ์Šค ๋ฐ ์—ฐ๊ฒฐ์„ ์œ ์ง€ํ•˜๋ฉด์„œ ๋ฐฑ์—… ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํด๋ฐฑ ๊ธฐ๋Šฅ
  • ๋ฐ์Šคํฌํ†ฑ ๊ณต์œ ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋™์•ˆ ์˜ค๋””์˜ค ๋ฐ ๋น„๋””์˜ค ์†Œ์Šค์˜ ์„ ํƒ๋œ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ๋…นํ™”ํ•˜๊ฑฐ๋‚˜ ๋ธŒ๋กœ๋“œ์บ์ŠคํŠธํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ ๊ธ‰ ๊ณต์œ  ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

๋˜ํ•œ Durden 0.7 ๋ฐ์Šคํฌํ†ฑ์˜ ์ƒˆ ๋ฆด๋ฆฌ์Šค๊ฐ€ Arcan๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ค€๋น„๊ฐ€ ๋˜์–ด ์žˆ๋‹ค๋Š” ์ ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค 0.7์—์„œ๋Š” ์ฐฝ ์ œ๋ชฉ๊ณผ ์ƒํƒœ ํ‘œ์‹œ์ค„์˜ ์ˆ˜์ง ๋ฐฐ์น˜ ์ง€์›์ด ๋‚˜ํƒ€๋‚˜๊ณ  ์Œ์„ฑ ์•ˆ๋‚ด(ํ…์ŠคํŠธ ์Œ์„ฑ ๋ณ€ํ™˜) ์œ ํ‹ธ๋ฆฌํ‹ฐ๊ฐ€ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. Durden์€ ์™„์ „ํ•œ ํ‚ค๋ณด๋“œ ์ œ์–ด ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ํƒ€์ผ์‹ ์ธํ„ฐํŽ˜์ด์Šค์™€ ํ™”๋ฉด์— ์ฐฝ์„ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•œ ์ž์œ ๋กœ์šด ํ๋ฆ„ ๋ชจ๋“œ๋ฅผ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ž…๋ ฅ ๋ฐฉ๋ฒ•, ๊ธ€๊ผด, ์‹œ๊ฐ ํšจ๊ณผ๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ์„ค์ •์€ ๊ตฌ์„ฑ์„ ๋‹ค์‹œ ๋กœ๋“œํ•  ํ•„์š” ์—†์ด ์ฆ‰์‹œ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ ์ฐฝ์— ๋Œ€ํ•ด ๋ณ„๋„์˜ ๋™์ž‘์„ ๊ตฌ์„ฑํ•˜๊ณ  ์ฐฝ์— ๋ฐ”์ธ๋”ฉ๋œ ๋…๋ฆฝ์ ์ธ ํด๋ฆฝ๋ณด๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. DPI๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ๋‹ค์ค‘ ๋ชจ๋‹ˆํ„ฐ๊ฐ€ ์žˆ๋Š” ์‹œ์Šคํ…œ์—์„œ ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ํŒจ๋„(๊ธ€๋กœ๋ฒŒ ๋ฉ”๋‰ด)์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฉ”๋‰ด๋ฅผ ํ‘œ์‹œํ•˜๊ฑฐ๋‚˜ ์ฐฝ ์ œ๋ชฉ์— ๋ฉ”๋‰ด๋ฅผ ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ„์ ฏ์€ ๋ฐ์Šคํฌํƒ‘์— ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํƒ‘๊ณผ ๊ฐœ๋ณ„ ์ฐฝ์—์„œ ๋™์ž‘์„ ๋น„๋””์˜ค๋กœ ๋…นํ™”ํ•˜๋Š” ๊ธฐ๋Šฅ์ด ๋‚ด์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…๋ ฅ ์ œ์–ด ํ•˜์œ„ ์‹œ์Šคํ…œ์€ ํ‚ค๋ณด๋“œ ๋ ˆ์ด์•„์›ƒ ๋ณ€๊ฒฝ๊ณผ ๊ฒŒ์ž„ ์ฝ˜์†”๊ณผ ๊ฐ™์€ ๊ณ ๊ธ‰ ์žฅ์น˜์—์„œ ์ž‘๋™ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€