์–ด์…ˆ๋ธ”๋ฆฌ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ Frame X ์„œ๋ฒ„์™€ CHasm ๋ฐ์Šคํฌํ†ฑ์ด ์†Œ๊ฐœ๋ฉ๋‹ˆ๋‹ค.

Frame ํ”„๋กœ์ ํŠธ๋Š” x86_64 ์•„ํ‚คํ…์ฒ˜์šฉ์œผ๋กœ NASM ์–ด์…ˆ๋ธ”๋Ÿฌ๋กœ ์™„์ „ํžˆ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ์‹คํ–‰๋˜๋„๋ก ์„ค๊ณ„๋œ ์ƒˆ๋กœ์šด X ์„œ๋ฒ„๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Linux ์™ธ๋ถ€ ์ข…์†์„ฑ ์—†์Œ. ์ปค๋„๊ณผ ์ƒํ˜ธ ์ž‘์šฉ LinuxFrame์€ DRM/KMS ๋ฐ evdev ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํฌํ•จํ•˜์—ฌ libc, Mesa, FreeType๊ณผ ๊ฐ™์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์‹œ์Šคํ…œ ํ˜ธ์ถœ์„ ํ†ตํ•ด ์ง์ ‘ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Frame์˜ ์ฝ”๋“œ๋Š” ๊ณต๊ฐœ ๋„๋ฉ”์ธ์œผ๋กœ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์€ AI ๋น„์„œ Claude Code์˜ ๋„์›€์„ ๋ฐ›์•„ ์ง„ํ–‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณธ ํ”„๋กœ์ ํŠธ์˜ ๋ชฉํ‘œ๋Š” ๋™์ผ ์ €์ž๊ฐ€ ์–ด์…ˆ๋ธ”๋ฆฌ ์–ธ์–ด๋กœ ๊ฐœ๋ฐœํ•œ CHasm ๋ฐ์Šคํฌํ†ฑ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ X11 ํ”„๋กœํ† ์ฝœ ํ™•์žฅ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. Firefox, VS Code, GIMP, Inkscape ๋“ฑ ํ‘œ์ค€ X11 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ด ์ตœ์†Œ ์š”๊ตฌ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ๊ตฌํ˜„ ์˜ˆ์ •์ธ X11 ํ™•์žฅ ๊ธฐ๋Šฅ์—๋Š” SHAPE, RENDER, XKB, COMPOSITE, DAMAGE, RANDR, MIT-SHM, XInput2, XVideo ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

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

์ด๋ฏธ ๊ตฌํ˜„๋œ ๊ธฐ๋Šฅ์—๋Š” Unix ์†Œ์ผ“์„ ํ†ตํ•œ X11 ์š”์ฒญ ์ˆ˜์‹ , DRM/KMS ์ปค๋„ ์„œ๋ธŒ์‹œ์Šคํ…œ์„ ํ†ตํ•œ ์†Œํ”„ํŠธ์›จ์–ด ๋ Œ๋”๋ง, evdev๋ฅผ ํ†ตํ•œ ์ž…๋ ฅ ์ฒ˜๋ฆฌ, ์ž…๋ ฅ ๊ด€๋ฆฌ API, ์—ฌ๋Ÿฌ X11 ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐ ์ง€์›, ์ฐฝ ์ƒ์„ฑ ๋ฐ ์ž‘์—… ํ•จ์ˆ˜, ํ”ฝ์Šค๋งต ์—ฐ์‚ฐ, ์›์ž์  ์—ฐ์‚ฐ, ํด๋ฆฝ๋ณด๋“œ ํ…์ŠคํŠธ ์„ ํƒ, ๊ทธ๋ฆฌ๊ณ  X11 ํ™•์žฅ ๊ธฐ๋Šฅ์ธ SHAPE, RANDR, XKB, XInput2, MIT-SHM์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋ฒกํ„ฐ ๋ Œ๋”๋ง ๊ธฐ๋ณธ ์š”์†Œ, ์›์ž์  ๋น„๋””์˜ค ๋ชจ๋“œ ์ „ํ™˜, ํด๋ฆฝ๋ณด๋“œ, ํ‚ค๋ณด๋“œ ๋ ˆ์ด์•„์›ƒ ์ „ํ™˜, ์ปค์„œ ์ œ์–ด, ๊ทธ๋ฆฌ๊ณ  X11 ํ™•์žฅ ๊ธฐ๋Šฅ์ธ RENDER, DAMAGE, COMPOSITE๋Š” ์•„์ง ๊ตฌํ˜„๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

CHasm ๋ฐ์Šคํฌํ†ฑ ํ™˜๊ฒฝ์€ ์•ฝ 100๋งŒ ์ค„์˜ ์ฝ”๋“œ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์–ด์…ˆ๋ธ”๋ฆฌ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ๊ตฌ์„ฑ ์š”์†Œ๋“ค์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ตฌ์„ฑ ์š”์†Œ์—๋Š” Tile ์ฐฝ ๊ด€๋ฆฌ์ž, Strip ์ƒํƒœ ํ‘œ์‹œ์ค„, Bolt ํ™”๋ฉด ์ž ๊ธˆ ํ”„๋กœ๊ทธ๋žจ, Bare ๋Œ€ํ™”ํ˜• ์…ธ, Glass ํ„ฐ๋ฏธ๋„ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ตฌ์„ฑ ์š”์†Œ๋“ค์€ gdm, X11 ์„œ๋ฒ„, i3, conky, wezterm, zsh๋กœ ๊ตฌ์„ฑ๋œ ๋ฒˆ๋“ค๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ฐœ๋ฐœ์€ ๋…ธํŠธ๋ถ์—์„œ ์‚ฌ์šฉํ•  ๋•Œ ์ „๋ ฅ ์†Œ๋น„๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘์—ˆ์Šต๋‹ˆ๋‹ค. ์œ ํœด ๋ชจ๋“œ์—์„œ ํƒ€์ผ ์ฐฝ ๊ด€๋ฆฌ์ž์™€ ๊ธ€๋ž˜์Šค ํ„ฐ๋ฏธ๋„์€ ๋ฆฌ์†Œ์Šค๋ฅผ ์ „ํ˜€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉฐ ์‚ฌ์šฉ์ž ์ƒํ˜ธ ์ž‘์šฉ์— ์˜ํ•ด์„œ๋งŒ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค. Frame์€ ์œ ํœด ์ƒํƒœ์ผ ๋•Œ X.Org ์„œ๋ฒ„๋ณด๋‹ค CPU ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฑฐ์˜ 3๋ฐฐ ์ ๊ฒŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

Frame๊ณผ CHasm ๊ธฐ๋ฐ˜ ํ™˜๊ฒฝ์€ ์ด๋ฏธ ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ผ์ƒ ์—…๋ฌด์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„ ๋งŒํผ ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜ ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์ด ๋ˆ„๋ฝ๋  ๊ฒฝ์šฐ, ๊ฐœ๋ฐœ์ž๋Š” ํ•„์š”์— ๋”ฐ๋ผ Claude๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ œ์™ธํ•œ ๋ชจ๋“  ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” Rust๋กœ ์ž‘์„ฑ๋œ ๋ช…๋ น์ค„ ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋ชจ์Œ์ธ fe2o3๋ฅผ ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค. fe2o3์—๋Š” Pointer ๋“€์–ผ ํŒจ๋„ ํŒŒ์ผ ๊ด€๋ฆฌ์ž, rush ๋ช…๋ น ์ธํ„ฐํ”„๋ฆฌํ„ฐ, Scribe vim๊ณผ ์œ ์‚ฌํ•œ ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ, Gazette RSS ๋ฆฌ๋”, Kastrup ์ด๋ฉ”์ผ ํด๋ผ์ด์–ธํŠธ ๋ฐ ๋ฉ”์‹ ์ €, Tock ์บ˜๋ฆฐ๋” ํ”Œ๋ž˜๋„ˆ, Crush ์„ค์ • ๋„๊ตฌ, ๊ทธ๋ฆฌ๊ณ  Viewer ๋ฌธ์„œ ๋ทฐ์–ด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.



์ถœ์ฒ˜ : opennet.ru
DDoS ๋ณดํ˜ธ, VPS VDS ์„œ๋ฒ„๊ฐ€ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ์œ„ํ•œ ์•ˆ์ •์ ์ธ ํ˜ธ์ŠคํŒ… ๊ตฌ์ž… ๐Ÿ”ฅ DDoS ๊ณต๊ฒฉ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์ด ํƒ‘์žฌ๋œ ์•ˆ์ •์ ์ธ ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ…, VPS ๋ฐ VDS ์„œ๋ฒ„๋ฅผ ๊ตฌ๋งคํ•˜์„ธ์š” | ProHoster