ΠΡΠΎΠ΅ΠΊΡ Frame ΡΠ°Π·Π²ΠΈΠ²Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ X-ΡΠ΅ΡΠ²Π΅Ρ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ NASM Π΄Π»Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ x86_64 ΠΈ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π² Linux Π±Π΅Π· Π²Π½Π΅ΡΠ½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΡΠ΄ΡΠΎΠΌ Linux, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ DRM/KMS ΠΈ evdev, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΠΏΡΡΠΌΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ, Π±Π΅Π· ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ libc, Mesa ΠΈ FreeType. ΠΠΎΠ΄ Frame ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π΄ΠΎΡΡΠΎΡΠ½ΠΈΠ΅. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²Π΅Π΄ΡΡΡΡ Ρ ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ AI-Π°ΡΡΠΈΡΡΠ΅Π½ΡΠ° Claude Code.
Π¦Π΅Π»ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° X11, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΡ Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° CHasm, ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΌ ΠΆΠ΅ Π°Π²ΡΠΎΡΠΎΠΌ ΠΈ ΡΠ°ΠΊΠΆΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΠ° Π·Π°ΡΠ²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π·Π°ΠΏΡΡΠΊΠ° ΡΠΈΠΏΠΎΠ²ΡΡ X11-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΡΠΎΡΡΡ Firefox, VS Code, GIMP ΠΈ Inkscape. ΠΠ· Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΡΡ ΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ X11-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ ΡΠΏΠΎΠΌΡΠ½ΡΡΡ SHAPE, RENDER, XKB, COMPOSITE, DAMAGE, RANDR, MIT-SHM, XInput2 ΠΈ XVideo.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π° Π½Π° 14 ΡΡΠ°Π΄ΠΈΠΉ. Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° 7 ΡΡΠ°Π΄ΠΈΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π±Π°Π·ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ X11 ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. 14 ΡΡΠ°Π΄ΠΈΡ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡΠ°, ΠΊΠΎΠ³Π΄Π° Π±ΡΠ΄ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Ρ Firefox. ΠΠ° ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΡΠ°ΠΏΠ΅ Π·Π°ΡΠ²Π»Π΅Π½ΠΎ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΡΠΊΠ° Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° CHasm, GIMP ΠΈ Firefox (Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ).
Π‘ΡΠ΅Π΄ΠΈ ΡΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ: ΠΏΡΠΈΡΠΌ X11-Π·Π°ΠΏΡΠΎΡΠΎΠ² ΡΠ΅ΡΠ΅Π· Unix-ΡΠΎΠΊΠ΅Ρ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΄ΡΠ° 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 Server, i3, conky, wezterm ΠΈ zsh.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²Π΅Π΄ΡΡΡΡ Ρ ΠΎΠ³Π»ΡΠ΄ΠΊΠΎΠΉ Π½Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΡΠ½Π΅ΡΠ³ΠΈΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° Π½ΠΎΡΡΠ±ΡΠΊΠ΅. Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΎΠΊΠΎΠ½Π½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Tile ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» Glass ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ ΡΠ΅ΡΡΡΡΡ ΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Frame Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΡΠΎΡΡΠΎΡ ΡΠ°ΡΡ ΠΎΠ΄ΡΠ΅Ρ ΠΏΠΎΡΡΠΈ Π² ΡΡΠΈ ΡΠ°Π·Π° ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ² CPU, ΡΠ΅ΠΌ X.Org Server.
Π£ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΡΡΡ, ΡΡΠΎ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π±Π°Π·Π΅ Frame ΠΈ CHasm ΡΠΆΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Π°Π²ΡΠΎΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈΠ»ΠΈ ΡΠ΅Π³ΠΎ-ΡΠΎ Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ, Π°Π²ΡΠΎΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ Claude ΠΈ ΡΡΡΡΠ°Π½ΡΠ΅Ρ Π½Π΅Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ²ΡΠΎΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅Ρ Π½Π°Π±ΠΎΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΡ fe2o3, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ Π½Π° Rust ΠΈ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΡ Π²ΡΠ΅ Π΅Π³ΠΎ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠΈ, ΠΊΡΠΎΠΌΠ΅ web-Π±ΡΠ°ΡΠ·Π΅ΡΠ°. Π ΡΠΎΡΡΠ°Π² fe2o3 Π²Ρ ΠΎΠ΄ΠΈΡ Π΄Π²ΡΡ ΠΏΠ°Π½Π΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Pointer, ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ rush, vim-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ Scribe, RSS-ΡΠΈΠ΄Π΅Ρ Gazette, ΠΏΠΎΡΡΠΎΠ²ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈ ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅Ρ Kastrup, ΠΊΠ°Π»Π΅Π½Π΄Π°ΡΡ-ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ Tock, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ Crush, ΠΏΡΠΎΡΠΌΠΎΡΡΡΠΈΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² Viewer.


Iturria: opennet.ru
