ํ”„๋ฆฌํ…๋‹ค๋“œ (Pretendard) ๋ฐ ํŽด์ง„ ๊ณ ๋”•์˜ x → × ํ˜„์ƒ ์ˆ˜์ •ํ•˜๊ธฐ
IT/๊ธฐํƒ€2025. 5. 24. 03:50ํ”„๋ฆฌํ…๋‹ค๋“œ (Pretendard) ๋ฐ ํŽด์ง„ ๊ณ ๋”•์˜ x → × ํ˜„์ƒ ์ˆ˜์ •ํ•˜๊ธฐ

์ธํŠธ๋กœํ”„๋ฆฌํ…๋‹ค๋“œ์™€ ํŽด์ง„ ๊ณ ๋”•์€ ๊ฐ„๊ฒฐํ•˜๊ณ  ์ค‘๋ฆฝ์ ์ด๋ฉด์„œ๋„ ๋ฏธ๋ คํ•œ ๋ชจ์–‘์ƒˆ๋ฅผ ๊ฐ–์ถ”์–ด ์‹œ์Šคํ…œ UI๋กœ ์ œ๊ฒฉ์ธ ํฐํŠธ์ž…๋‹ˆ๋‹ค.๊ทธ๋Ÿฌ๋‚˜ ์ด ํฐํŠธ๋“ค์—๋Š” ์œ„์™€ ๊ฐ™์ด (์ˆซ์ž)x(์ˆซ์ž)๊ฐ€ (์ˆซ์ž)×(์ˆซ์ž)๋กœ ๋Œ€์ฒด๋˜๋Š” '๋ฌธ๋งฅ ๋Œ€์ฒด (calt, ligature ๋“ฑ)' ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์–ด ์žˆ๋Š”๋ฐ, ์ด๊ฑด ์ธ์‡„์— ์ ํ•ฉํ• ์ง€๋Š” ๋ชฐ๋ผ๋„ ํ•œ ๊ธ€์ž ํ•œ ๊ธ€์ž๊ฐ€ ์›๋ณธ ๊ทธ๋Œ€๋กœ์—ฌ์•ผ ํ•˜๋Š” ์‹œ์Šคํ…œ UI์—๋Š” ๊ทธ๋ ‡์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ํ•˜์—ฌ, ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” FontForge๋ผ๋Š” ํฐํŠธ ํŽธ์ง‘ ํˆด์„ ์ด์šฉํ•˜์—ฌ ํŠน์ • ligature๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•ด ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ํฐํŠธ ์—ด๊ธฐ์ €๋Š” ํŽด์ง„ ๊ณ ๋”• Medium์˜ OTF ๋ฒ„์ „์„ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค.ํฐํŠธ ์ˆ˜์ •ํ•˜๊ธฐ์ƒ๋‹จ ๋ฉ”๋‰ด์—์„œ Element > Font Info...๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.ํฐํŠธ ์ •๋ณด ์ฐฝ์ด ์—ด๋ฆฝ๋‹ˆ๋‹ค. ์ขŒ์ธก Lookups๋ฅผ ํด๋ฆญํ•œ ๋’ค,..

SF UI Display ํฐํŠธ (OTF)
IT/๊ธฐํƒ€2025. 5. 11. 16:44SF UI Display ํฐํŠธ (OTF)

์‹œ์Šคํ…œ UI๋‚˜ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์— ์ ํ•ฉํ•œ SF UI Display OTF์ž…๋‹ˆ๋‹ค. ์••์ถ• ์•”ํ˜ธ 123

Ubuntu์— APT๋กœ Firefox Developer Edition ์„ค์น˜
IT/๊ธฐํƒ€2025. 5. 10. 14:36Ubuntu์— APT๋กœ Firefox Developer Edition ์„ค์น˜

Ubuntu์—์„œ๋„ Windows์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Firefox Developer Edition์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋‚˜, ์•ˆํƒ€๊น๊ฒŒ๋„ ์•„๋ž˜์™€ ๊ฐ™์ด .tar.xz ์••์ถ• ํ˜•ํƒœ๋กœ ๋ฐฐํฌ๋˜๊ธฐ์— ์ด๋ฅผ /opt/firefox ๊ฐ™์€ ๊ณณ์— ์ง์ ‘ ํ’€๊ณ  ๋ฐ์Šคํฌํ†ฑ ์—”ํŠธ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•˜๋Š” ๋“ฑ ๋ถˆํŽธํ•œ ์ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. Windows์ชฝ์— ๋น„์œ ํ•˜์ž๋ฉด ๋งˆ์น˜ ํฌํ„ฐ๋ธ” ZIP ํŒŒ์ผ์„ ๋ฐ›์•„๋‹ค๊ฐ€ ํŠน์ • ๊ฒฝ๋กœ์— ํ’€๊ณ  ๋ฐ”ํƒ•ํ™”๋ฉด์— EXE ๋ฐ”๋กœ๊ฐ€๊ธฐ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฑด ์„ค์น˜ ์ž์ฒด๋„ ๋ฒˆ๊ฑฐ๋กญ์ง€๋งŒ ์ž๋™ ์—…๋ฐ์ดํŠธ๊ฐ€ ์•ˆ๋œ๋‹ค๋Š” ์ ์ด ๊ฐ€์žฅ ํฐ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.๋‹ค๋งŒ ์ตœ๊ทผ์— APT๋ฅผ ํ†ตํ•ด ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋‚ด์–ด ํฌ์ŠคํŠธ๋กœ ๋‚จ๊น๋‹ˆ๋‹ค.์„ค์น˜ ๋ฐฉ๋ฒ• (APT ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž)APT ํ‚ค ์ €์žฅ ๋””๋ ‰ํ„ฐ๋ฆฌ ์ƒ์„ฑsudo install -d -m 0755 /etc/apt/keyringsMozil..

C์–ธ์–ด๋กœ ํŒŒ์‹ฑํ•˜๊ธฐ
IT/๊ธฐํƒ€2025. 5. 7. 16:40C์–ธ์–ด๋กœ ํŒŒ์‹ฑํ•˜๊ธฐ

์ด๋ฒˆ ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 8์ฃผ์ฐจ์—์„œ web proxy lab ๊ณผ์ œ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ C์–ธ์–ด๋กœ HTTP ์š”์ฒญ๊ณผ ์‘๋‹ต์„ ํŒŒ์‹ฑํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์–ธ์–ด์—์„œ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ•œ ์ค„์ด๋ฉด ๋๋‚  ์ž‘์—…๋“ค์ด C์—์„œ๋Š” ์™œ ์ด๋ฆฌ ์–ด๋ ต๊ณ , ๋ฒ„๊ทธ๋Š” ์™œ ์ด๋ฆฌ ์ž์ฃผ ๋‚˜ํƒ€๋‚˜๋Š”์ง€ ์ ˆ์‹คํžˆ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. ์•„๋งˆ ๋งŽ์€ ๋ถ„๋“ค์ด ๋น„์Šทํ•œ ๊ฒฝํ—˜์„ ํ•˜์…จ๊ฑฐ๋‚˜, ์•ž์œผ๋กœ ๊ฒช๊ฒŒ ๋˜์‹œ๋ฆฌ๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.๊ทธ๋ž˜์„œ ์˜ค๋Š˜์€ C์–ธ์–ด์—์„œ์˜ ํŒŒ์‹ฑ ์ž‘์—…์ด ์™œ ์œ ๋… ๊นŒ๋‹ค๋กœ์šด์ง€, ๊ทธ๋ฆฌ๊ณ  ์ด ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ—ค์ณ๋‚˜๊ฐˆ ์ˆ˜ ์žˆ์„์ง€์— ๋Œ€ํ•œ ์ œ ๊ฒฝํ—˜๊ณผ ํŒ์„ ๊ณต์œ ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.C์–ธ์–ด ํŒŒ์‹ฑ, ์™œ ์ด๋ ‡๊ฒŒ ์–ด๋ ค์šด ๊ฑธ๊นŒ์š”?'๋งจ์†์œผ๋กœ ์ ˆ๋ฒฝ ํƒ€๊ธฐ' - ๋‚ฎ์€ ์ˆ˜์ค€์˜ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ: C๋Š” ๋ณธ์งˆ์ ์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ์ง์ ‘ ๊ณต๊ฐ„์„ ๋‚ด๊ณ , ๊ทธ ๊ณต๊ฐ„์„ ์ฐธ์กฐ, ์—ฐ์‚ฐ, ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ์ „๋ถ€์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์ง์ ‘ ํ•œ๋‹ค๋Š” ๊ทธ ์ž์ฒด๊ฐ€ ๊ฐ•๋ ฅํ•˜์ง€๋งŒ, ์ด..

์›น ํ”„๋ก์‹œ ๋žฉ: ๋‹ค๋œ ์บ์‹œ์— ํ•ด์‹œ ๋ผ์–น๊ธฐ (djb2 ํ•ด์‹œ + ์ด์ค‘ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ)
IT/๊ธฐํƒ€2025. 5. 6. 11:46์›น ํ”„๋ก์‹œ ๋žฉ: ๋‹ค๋œ ์บ์‹œ์— ํ•ด์‹œ ๋ผ์–น๊ธฐ (djb2 ํ•ด์‹œ + ์ด์ค‘ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ)

ํ‚ค์›Œ๋“œ: djb2 ํ•ด์‹œ, ํ•ด์‹œโ€ฏ+โ€ฏ์ด์ค‘ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(LRU), Readerโ€‘Writer Lock, MAX_CACHE_SIZE, MAX_OBJECT_SIZE1. ์™œ ๋ณ„๋„์˜ ์บ์‹œ๊ฐ€ ํ•„์š”ํ•œ๊ฐ€?ํ”„๋ก์‹œ ์„œ๋ฒ„์—์„œ ์ธ๋ฉ”๋ชจ๋ฆฌ ์บ์‹ฑ์ด๋ž€? ๋™์ผ ๊ฐ์ฒด ์žฌ์š”์ฒญ ์‹œ, ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.์ €ํฌ ์ด๋ฒˆ 8์ฃผ์ฐจ ์›น ํ”„๋ก์‹œ ๋žฉ์˜ ์บ์‹ฑ ๋ถ€๋ถ„์˜ ์š”๊ตฌ์กฐ๊ฑด์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.์ธ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋‹ค์ค‘ ์ฝ๊ธฐ, ๋‹จ์ผ ์“ฐ๊ธฐ ๋ณด์žฅ → ์‚ฌ์‹ค์ƒ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ ๊ตฌํ˜„์ด ๊ฐ•์ œLRU ์ •์ฑ…์œผ๋กœ ๊ฐ€์žฅ ์˜ค๋ž˜๋œ (๋˜๋Š” ์ง€์ •๋œ ์šฉ๋Ÿ‰์„ ๋งž์ถœ ๋•Œ๊นŒ์ง€) ๊ฐ์ฒด ์ž๋™ ํ‡ด์ถœ์ œ ๊ฐœ์ธ์ ์œผ๋กœ ๋ชฉํ‘œํ•˜์˜€๋˜ ์ถ”๊ฐ€ ์กฐ๊ฑด์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทœ๋ชจ๊ฐ€ ์ปค์ ธ๋„ ๋น ๋ฅธ ์‘๋‹ต์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด O(1) ํƒ์ƒ‰์‘๋‹ต ํ—ค๋”๊นŒ์ง€ ํ†ต์งธ๋กœ ์บ์‹œ (์žฌ์ „์†ก ์‹œ ์™„์ „ ๋™์ผํ•œ ์‘๋‹ต ๊ฐ€๋Šฅํ•˜๋„๋ก)์ผ๋ฐ˜์ ..

Pintos ์ž๋ฃŒ ์ทจํ•ฉ
IT/๊ธฐํƒ€2025. 4. 22. 14:48Pintos ์ž๋ฃŒ ์ทจํ•ฉ

๊ณต์‹ ์›น์‚ฌ์ดํŠธhttps://pintos-os.org/ ๊ณต์‹ ๋ฌธ์„œ์ตœ์ดˆ ๋ฆด๋ฆฌ์ฆˆ ๋‹น์‹œ PDF: https://www.scs.stanford.edu/09wi-cs140/pintos/pintos.pdfPPT (SIGCSE2009): https://pintos-os.org/SIGCSE2009-Pintos.pdf ๊ณต์‹ ์‹ค๋Ÿฌ๋ฒ„์Šค์Šคํƒ ํฌ๋“œ ๋Œ€ํ•™ CS 140 (็พ CS 112/212): https://cs140.scs.stanford.edu/์ตœ๊ทผ ๋ฌธ์„œ (Winter 2024 CS 212): https://www.scs.stanford.edu/24wi-cs212/pintos/pintos.html Git ํด๋ก  ์ปค๋งจ๋“œ (w/ ๋ ˆํฌ ์ฃผ์†Œ)git clone git://pintos-os.org/pintos-anon๋˜๋Š”git clone..

WSLg Ubuntu 24.04.1 LTS์—์„œ GUI ์ฐฝ์ด ๋œจ์ง€ ์•Š๊ฑฐ๋‚˜ ์žฅ์‹œ๊ฐ„ ๊ธฐ๋‹ค๋ ค์•ผ๋งŒ ๋œฐ ๋•Œ
IT/๊ธฐํƒ€2025. 4. 16. 17:29WSLg Ubuntu 24.04.1 LTS์—์„œ GUI ์ฐฝ์ด ๋œจ์ง€ ์•Š๊ฑฐ๋‚˜ ์žฅ์‹œ๊ฐ„ ๊ธฐ๋‹ค๋ ค์•ผ๋งŒ ๋œฐ ๋•Œ

Windows 11์—์„œ๋ถ€ํ„ฐ๋Š” WSLg์˜ ๋„์ž…์œผ๋กœ GUI ์•ฑ์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ„๋‹จํžˆ sudo apt firefox ๊ฐ™์€ ์ปค๋งจ๋“œ๋ฅผ ์น˜๊ณ  ์„ค์น˜ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฐ ๋’ค firefox๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์งœ์ž” ํ•˜๊ณ  ํŒŒ์ด์–ดํญ์Šค๊ฐ€ GUI๋กœ ์ผœ์ง€๋Š” ๋งˆ๋ฒ•์ด ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค. (Windows 10๋„ ๋ช‡ ๋‹จ๊ณ„ ์ ˆ์ฐจ๋งŒ ๊ฑฐ์น˜๋ฉด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค)ํ•˜์ง€๋งŒ ์œ„ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด libEGL ๊ด€๋ จ ๊ฒฝ๊ณ ๋ฅผ ๋‚ด๋ฟœ์œผ๋ฉฐ ํ•œ์ฐธ ๋’ค์— ์‹คํ–‰์ด ๋˜๊ฑฐ๋‚˜ ์•„์˜ˆ ์ฐฝ์ด ๋œจ์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.acc@testshell:~$ gnome-system-monitorlibEGL warning: DRI3: Screen seems not DRI3 capablelibEGL warning: DRI3: Screen seems not DRI3 capableMESA: error:..

์œˆ๋„์šฐ 11 "์ฐฝ์„ ๋“œ๋ž˜๊ทธํ•  ๋•Œ๋งˆ๋‹ค ์œ„์— ๋ญ ๋œจ๋Š” ๊ทธ๊ฑฐ" ๋น„ํ™œ์„ฑํ™”ํ•˜๊ธฐ
IT/๊ธฐํƒ€2025. 4. 4. 14:01์œˆ๋„์šฐ 11 "์ฐฝ์„ ๋“œ๋ž˜๊ทธํ•  ๋•Œ๋งˆ๋‹ค ์œ„์— ๋ญ ๋œจ๋Š” ๊ทธ๊ฑฐ" ๋น„ํ™œ์„ฑํ™”ํ•˜๊ธฐ

ํ˜„์ƒ์œˆ๋„์šฐ 11์— ์˜ฌ๋ผ์˜ค๋ฉด์„œ ์ฐฝ์„ ๋Œ ๋•Œ๋งˆ๋‹ค ์˜์ƒ๊ณผ ๊ฐ™์ด ์ƒ๋‹จ ์ค‘์•™์— ๋ญ”๊ฐ€ ํ•˜๋‚˜์”ฉ ๋œจ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋งˆ์šฐ์Šค ์ปค์„œ๊ฐ€ ๊ทธ์ชฝ์œผ๋กœ ๊ฐ€๋ฉด ์ฐฝ์˜ ์‚ฌ์ด์ฆˆ, ๋ฐฐ์น˜๊ฐ€ ์ •ํ•ด์ง„ ๊ทœ์น™๋Œ€๋กœ ๋ณ€ํ•ฉ๋‹ˆ๋‹ค.์ด๋Š” ์‚ฌ์‹ค ์ตœ๊ทผ์— ๋„์ž…๋œ "์Šค๋ƒ… ๋ ˆ์ด์•„์›ƒ"์ด๋ผ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ, ์œ„์— ๋ณด๋‹ค์‹œํ”ผ ์ •ํ•ด์ง„ ๋ ˆ์ด์•„์›ƒ์— ๋”ฐ๋ผ ์ฐฝ๋“ค์„ ๊ฐ€์ง€๋Ÿฐํžˆ ๋ฐฐ์—ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋ฅผ ์‹ค์ œ ํ™œ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋ณด๋‹ค ์˜๋„์น˜ ์•Š์€ ๋™์ž‘์„ ์ผ์œผํ‚ค๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋” ๋งŽ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์ด "์Šค๋ƒ… ๋ ˆ์ด์•„์›ƒ"์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐœ์„ ๋จผ์ €, PC ์„ค์ •์œผ๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค (์ œ์–ดํŒ ์•„๋‹™๋‹ˆ๋‹ค). ํ•œ๊ตญ์–ด ์œˆ๋„์šฐ์˜ ๊ฒฝ์šฐ ์‹œ์ž‘ ๋ฉ”๋‰ด์—์„œ "์„ค์ •"์„ ์ฐพ์œผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.์‹œ์Šคํ…œ > ๋ฉ€ํ‹ฐํƒœ์Šคํ‚น ํ•ญ๋ชฉ์œผ๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.์œˆ๋„์šฐ ์Šค๋ƒ… (Snap windows) ํ•ญ๋ชฉ์˜ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ..

image