๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์‚ฌ์ดํŠธ ๋‚ด ์ „์ฒด๊ฒ€์ƒ‰

DSCOM

DSCOM

๋‹ค์šด๋กœ๋“œ ํ™ˆ > ๋‹ค์šด๋กœ๋“œ

Simple Zip

ํŽ˜์ด์ง€ ์ •๋ณด

profile_image
์ž‘์„ฑ์ž ์ตœ๊ณ ๊ด€๋ฆฌ์ž
๋Œ“๊ธ€ 2๊ฑด ์กฐํšŒ 276ํšŒ ์ž‘์„ฑ์ผ 2026-08-11 09:41:05.625013

๋ณธ๋ฌธ

๐Ÿ“„ sZip 1.0 ์ œํ’ˆ ์†Œ๊ฐœ์„œ ํ•ต์‹ฌ ์š”์•ฝ

  1. ์ œํ’ˆ ๊ฐœ์š” (Product Value Proposition)

    • ์™ธ๋ถ€ ์˜์กด์„ฑ ์ œ๋กœ(Zero Dependencies): 7-Zip ๋“ฑ ํƒ€์‚ฌ ์†Œํ”„ํŠธ์›จ์–ด ์„ค์น˜ ์—†์ด libarchive ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒˆ๋“ค๋กœ ์ˆœ์ • ์œˆ๋„์šฐ ํ™˜๊ฒฝ์—์„œ ์ฆ‰์‹œ ๊ตฌ๋™

    • ๋ฌด์†์‹ค ๋ฉ€ํ‹ฐ ์ธ์Šคํ„ด์Šค ํ์ž‰ (0% Data Loss): ํƒ์ƒ‰๊ธฐ์—์„œ ํŒŒ์ผ ์ˆ˜์‹ญ~์ˆ˜๋ฐฑ ๊ฐœ๋ฅผ ๋™์‹œ ์„ ํƒํ•˜์—ฌ ์šฐํด๋ฆญ ์‹คํ–‰ ์‹œ ๋ฐœ์ƒํ•˜๋Š” ์ธ์ž ๋ˆ„๋ฝ์„ Global Mutex ๋ฐ ๋””๋ ‰ํ† ๋ฆฌ ํ•ด์‹œ ๊ธฐ๋ฐ˜ ํ ํŒŒ์ผ(sZipQ_*.txt)๋กœ ์™„๋ฒฝ ์ทจํ•ฉ

    • ๊ณต๊ฒฉ์  I/O & ์ดˆ๊ณ ์† ์••์ถ•: 1MB ๋Œ€์šฉ๋Ÿ‰ ์ŠคํŠธ๋ฆผ ๋ฒ„ํผ ๋ฐ Level 1 ๊ณ ์† ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ธฐ๋ณธ ์ฑ„ํƒํ•˜์—ฌ ์ฆ‰๊ฐ์ ์ธ ์••์ถ• ์™„๋ฃŒ

  2. ๋…์ฐฝ์ ์ธ ๊ธฐ์ˆ  ์•„ํ‚คํ…์ฒ˜ (Technical Architecture)

    • ์ ์‘ํ˜• ๋Œ€๊ธฐ(Adaptive Queue Settling): ๋งˆ์Šคํ„ฐ ์ธ์Šคํ„ด์Šค๊ฐ€ 250ms~5,000ms ๋™์•ˆ ํ ํŒŒ์ผ์˜ ํฌ๊ธฐ ๋ณ€ํ™”๋ฅผ 120ms ๊ฐ„๊ฒฉ์œผ๋กœ ๊ฐ์‹œํ•˜์—ฌ ๋ชจ๋“  ์Šฌ๋ ˆ์ด๋ธŒ ์ธ์Šคํ„ด์Šค์˜ ํŒŒ์ผ ์ˆ˜์ง‘์ด ์™„๋ฃŒ๋œ ํ›„ ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ

    • 3์ค„ ๊ณ ์ • ๊ฐ€์ƒ ํ„ฐ๋ฏธ๋„ UI: Win32 VT100(ANSI Escape) ์‹œํ€€์Šค๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ™”๋ฉด ๊นœ๋นก์ž„ ์—†์ด 3์ค„ ๊ณ ์ • ์ธํ„ฐํŽ˜์ด์Šค(ํƒ€์ดํ‹€ / ์ปฌ๋Ÿฌ ๊ฒŒ์ด์ง€ / ํ˜„์žฌ ํŒŒ์ผ๋ช…) ์ œ๊ณต

    • 5๋‹จ๊ณ„ ์ปฌ๋Ÿฌ ๊ฒŒ์ด์ง€ ์‹œ์Šคํ…œ: ์ง„ํ–‰๋ฅ  20% ๋‹จ์œ„๋กœ ์ƒ‰์ƒ(Red โ†’ Yellow โ†’ Cyan โ†’ Blue โ†’ Green)์ด ์ž๋™ ๋ณ€ํ™˜๋˜๋Š” ์ง๊ด€์  ์ƒํƒœ ํ”ผ๋“œ๋ฐฑ

    • ์Šค๋งˆํŠธ ๋ฃจํŠธ ๊ฐ์ง€ ์••์ถ• ํ•ด์ œ (Smart Unpack): ์•„์นด์ด๋ธŒ ๋ฃจํŠธ์— ๋‹จ์ผ ๊ฐ์ฒด(ํด๋”/ํŒŒ์ผ)๋งŒ ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ ๋ถˆํ•„์š”ํ•œ ์ด์ค‘ ๋ž˜ํผ ํด๋” ์ƒ์„ฑ์„ ๋ฐฉ์ง€ํ•˜๊ณ  ์ตœ์ƒ์œ„ ํด๋”์— ์ž๋™ ์ „๊ฐœ

    • ๊ฒฝ๋กœ ์ˆœํšŒ ๋ณด์•ˆ ๋ณดํ˜ธ (Directory Traversal Protection): IsSubPath() ๊ฒ€์ฆ์„ ํ†ตํ•ด .. ๋˜๋Š” ์ž„์˜ ๋“œ๋ผ์ด๋ธŒ ๊ฒฝ๋กœ๊ฐ€ ํฌํ•จ๋œ ์•…์„ฑ ์•„์นด์ด๋ธŒ ํŒŒ์ผ์˜ ํƒ€๊นƒ ๊ฒฝ๋กœ ์™ธ๋ถ€ ๋ฎ์–ด์“ฐ๊ธฐ ์ฐจ๋‹จ

  3. ๊ธฐ๋Šฅ ๋ช…์„ธ ๋ฐ ์ง€์› ํ™˜๊ฒฝ

    • 4์ข… ์ปจํ…์ŠคํŠธ ๋ฉ”๋‰ด: ์••์ถ• / ์›๋ณธ์‚ญ์ œ ํ›„ ์••์ถ• / ํ•ด์ œ / ์›๋ณธ์‚ญ์ œ ํ›„ ํ•ด์ œ ์ง€์›

    • 25์ข… ์ด์ƒ์˜ ํฌ๋งท ์ง€์›: .7z, .zip, .rar, .tar, .gz, .bz2, .xz, .cab, .iso ๋“ฑ ๊ด‘๋ฒ”์œ„ํ•œ ์•„์นด์ด๋ธŒ ์ง€์›

    • ๋ผ์ด์„ ์Šค ๋ฐ ๋ฐฐํฌ: MIT License, Inno Setup ๊ธฐ๋ฐ˜ ๊ฐ„ํŽธ ์„ค์น˜ ๋ฐ ํŒŒ์ผ ํ™•์žฅ์ž ์—ฐ๊ฒฐ ์ง€์›

ย 

์ฒจ๋ถ€ํŒŒ์ผ

๋Œ“๊ธ€๋ชฉ๋ก

profile_image

์ตœ๊ณ ๊ด€๋ฆฌ์ž๋‹˜์˜ ๋Œ“๊ธ€

์ตœ๊ณ ๊ด€๋ฆฌ์ž ์ž‘์„ฑ์ผ

Fix Korean Error.

profile_image

์ตœ๊ณ ๊ด€๋ฆฌ์ž๋‹˜์˜ ๋Œ“๊ธ€

์ตœ๊ณ ๊ด€๋ฆฌ์ž ์ž‘์„ฑ์ผ

7z ์••์ถ•ํ•ด์ œ ์˜ค๋ฅ˜ ์ˆ˜์ •

ํšŒ์›๋กœ๊ทธ์ธ

ํšŒ์›๊ฐ€์ž