๋ณธ๋ฌธ์œผ๋กœ ์ด๋™

EXE

์œ„ํ‚ค๋ฐฑ๊ณผ, ์šฐ๋ฆฌ ๋ชจ๋‘์˜ ๋ฐฑ๊ณผ์‚ฌ์ „.
์œˆ๋„์šฐ ์‹คํ–‰ ํŒŒ์ผ
Windows Executable File
ํŒŒ์ผ ํ™•์žฅ์ž.exe
์ธํ„ฐ๋„ท ๋ฏธ๋””์–ดย ํƒ€์ž…
application/vnd.microsoft.portable-executable
๋งค์ง ๋„˜๋ฒ„0x4d 0x5a
๊ฐœ๋ฐœ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ
ํฌ๋งท ์ข…๋ฅ˜์‹คํ–‰ ํŒŒ์ผ (์ด์ง„ ๊ธฐ๊ณ„ ์ฝ”๋“œ)
๋‹ค์Œ์˜ ์ปจํ…Œ์ด๋„ˆ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ์˜ ์ฃผ ์‹คํ–‰ ํฌ์ธํŠธ
๋‹ค์Œ์— ํฌํ•จ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์œˆ๋„์šฐ
๋‹ค์Œ์œผ๋กœย ํ™•์žฅNew Executable, Portable Executable, Linear Executable,W3, W4, DL, MP, P2, P3, ๋“ฑ.
์˜คํ”ˆ ํฌ๋งท?์•„๋‹ˆ์š”

EXE๋Š” ์ผ๋ฐ˜์ ์ธ ํŒŒ์ผ ํ™•์žฅ์ž๋กœ ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰ ํŒŒ์ผ์„ ๊ฐ€๋ฆฌํ‚จ๋‹ค. ์˜คํ”ˆVMS, ๋„์Šค, ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์œˆ๋„์šฐ, ๋ฆฌ์—‘ํŠธ์˜ค์—์Šค, OS/2 ์šด์˜ ์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์‹คํ–‰ ํ”„๋กœ๊ทธ๋žจ ์ž์ฒด๋ฟ ์•„๋‹ˆ๋ผ, ๋งŽ์€ EXE ํŒŒ์ผ๋“ค์€ ๋น„ํŠธ๋งต, ์‹คํ–‰ ํ”„๋กœ๊ทธ๋žจ์ด ๊ทธ๋ž˜ํ”ฝ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š”, ์•„์ด์ฝ˜๊ณผ ๊ฐ™์€ ๋ฆฌ์†Œ์Šค๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ๋‹ค๋ฅธ ๊ตฌ์„ฑ ์š”์†Œ๋“ค์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ๋‹ค.

๋„์Šค ์‹คํ–‰ ํŒŒ์ผ ํฌ๋งท์€ 64 ํ‚ฌ๋กœ๋ฐ”์ดํŠธ๋กœ ํฌ๊ธฐ๊ฐ€ ์ œํ•œ๋˜๋Š” COM ์‹คํ–‰ ํŒŒ์ผ๊ณผ ๋‹ค๋ฅด๋‹ค. ๋„์Šค ์‹คํ–‰ ํŒŒ์ผ ํ—ค๋”๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์„ธ๊ทธ๋จผํŠธ๊ฐ€ DMA์—์„œ ๋กœ๋“œ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ 64 ํ‚ฌ๋กœ๋ฐ”์ดํŠธ ์ด์ƒ์˜ ์‹คํ–‰ ํŒŒ์ผ์„ ์ง€์›ํ•˜๋Š” ๋ฆฌ๋กœ์ผ€์ด์…˜ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค.

ํŒŒ์ผ ํ˜•์‹

[ํŽธ์ง‘]

๋„์Šค

[ํŽธ์ง‘]

.exe ํ™•์žฅ์ž์™€ ํ•จ๊ป˜ ์“ฐ์ด๋Š” ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ๋‹ค์–‘ํ•œ ํŒŒ์ผ ํ˜•์‹์ด ์žˆ๋‹ค.

16-bit DOS MZ ์‹คํ–‰ ํŒŒ์ผ (Executable)
์›๋ž˜ ๋„์Šค ์‹คํ–‰ ํŒŒ์ผ ํฌ๋งท. ์ด๊ฒƒ๋“ค์€ ํŒŒ์ผ ์‹œ์ž‘ ๋ถ€๋ถ„์˜ ์•„์Šคํ‚ค ์ฝ”๋“œ "MZ" ๋ฌธ์ž๋กœ ๊ตฌ๋ณ„๋œ๋‹ค.
16-bit New ์‹คํ–‰ ํŒŒ์ผ (Executable)
๋ฉ€ํ‹ฐํƒœ์Šคํ‚น MS-DOS 4.0์—์„œ ๋„์ž…๋˜์–ด, 16-bit OS/2 ์™€ ์œˆ๋„์šฐ์—์„œ ์‚ฌ์šฉ๋˜์—ˆ์œผ๋ฉฐ, NE๋Š” ์•„์Šคํ‚ค ์ฝ”๋“œ "NE" ๋ฌธ์ž๋กœ ๊ตฌ๋ณ„๋œ๋‹ค.
32-bit ์„ ํ˜• ์‹คํ–‰ ํŒŒ์ผ (Linear Executable)
OS/2 2.0์—์„œ ๋„์ž…๋˜์—ˆ์œผ๋ฉฐ, ์ด๊ฒƒ๋“ค์€ ์•„์Šคํ‚ค ์ฝ”๋“œ "LX"๋กœ ๊ตฌ๋ณ„๋œ๋‹ค. ์ด๊ฒƒ๋“ค์€ ์˜ค์ง OS/2 2.0์™€ ๊ทธ ์ด์ƒ ๋ฒ„์ „์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.[1] ๋˜ํ•œ ๋ช‡๋ช‡ DOS extenders์— ์˜ํ•ด ์‚ฌ์šฉ๋œ๋‹ค.
Mixed 16/32-bit ์„ ํ˜• ์‹คํ–‰ ํŒŒ์ผ (Linear Executable)
OS/2 2.0์—์„œ ๋„์ž…๋˜์—ˆ์œผ๋ฉฐ, ์ด๊ฒƒ๋“ค์€ ์•„์Šคํ‚ค ์ฝ”๋“œ "LE"๋กœ ๊ตฌ๋ณ„๋œ๋‹ค. ์ด ํฌ๋งท์€ VxD ๋“œ๋ผ์ด๋ฒ„๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ, ๋˜ํ•œ ๋ช‡๋ช‡ DOS extenders์— ์˜ํ•ด ์‚ฌ์šฉ๋œ๋‹ค. (์œˆ๋„์šฐ 3.x, OS/2, ๊ทธ๋ฆฌ๊ณ  ์œˆ๋„์šฐ 9x)

์œˆ๋„์šฐ

[ํŽธ์ง‘]
16-bit New Executable
16๋น„ํŠธ ๋˜๋Š” 32๋น„ํŠธ ์œˆ๋„์šฐ ์‹คํ–‰ ํŒŒ์ผ์€ NE ๋˜๋Š” PE์—์„œ ์‹คํ–‰๋˜๋ฉฐ, MZ ์ฝ”๋“œ๋Š” "DOS stub"์ด๋ผ๊ณ  ๋ถˆ๋ฆฌ๋ฉฐ ๋ฌด์‹œ๋œ๋‹ค.[2][3] ๋„์Šค์—์„œ ์‹คํ–‰๋˜๋Š” ๊ฒฝ์šฐ, ์Šคํ… ์ฝ”๋“œ๋Š” "This program cannot be run in DOS mode" ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์ข…๋ฃŒ๋œ๋‹ค. regedit[4] ์ด๋‚˜ ์˜ค๋ž˜๋œ WinZIP self extractors ๊ฐ™์€ ์†Œ์ˆ˜์˜ ๋“€์–ผ ๋ชจ๋“œ ํ”„๋กœ๊ทธ๋žจ์€ ๋” ๊ธฐ๋Šฅ์ ์ธ DOS ์„น์…˜์„ ํฌํ•จํ•œ๋‹ค.[5]
32-bit Portable Executable
์œˆ๋„์šฐ NT์— ๋„์ž…๋˜์—ˆ์œผ๋ฉฐ, ์•„์Šคํ‚ค ์ฝ”๋“œ "PE"๋กœ ๊ตฌ๋ณ„๋œ๋‹ค. (๋น„๋ก ์‹œ์ž‘ ๋ถ€๋ถ„์€ ์•„๋‹ˆ์ง€๋งŒ ์ด ํŒŒ์ผ๋„ "MZ"๋กœ ์‹œ์ž‘ํ•œ๋‹ค)[6]
64-bit Portable Executable (PE32+)
64๋น„ํŠธ ๋ฒ„์ „์˜ ์œˆ๋„์šฐ์—์„œ ๋„์ž…๋˜์—ˆ์œผ๋ฉฐ ํ™•์žฅ๋œ ํ•„๋“œ๋ฅผ ๊ฐ–๋Š” PE ํŒŒ์ผ์ด๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์ฝ”๋“œ๋Š” 32๋น„ํŠธ ๋˜๋Š” 64๋น„ํŠธ ์–ด๋А ํ•˜๋‚˜์—์„œ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๊ฒŒ ์จ์งˆ ์ˆ˜ ์žˆ๋‹ค.[7]

๊ฐ™์ด ๋ณด๊ธฐ

[ํŽธ์ง‘]

๊ฐ์ฃผ

[ํŽธ์ง‘]
  1. โ†‘ โ€œOS/2 Operating Systemโ€. ใ€Šoperating system documentation projectใ€‹. 2004๋…„ 4์›” 3์ผ. 2016๋…„ 2์›” 12์ผ์— ํ™•์ธํ•จ.
  2. โ†‘ โ€œ/STUB (MS-DOS Stub File Name)โ€. ใ€ŠMSDNใ€‹. ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ. 2016๋…„ 2์›” 12์ผ์— ํ™•์ธํ•จ.
  3. โ†‘ Sedory, Daniel B. (2004๋…„ 10์›” 12์ผ). โ€œDOS Stub Programโ€. ใ€ŠThe Starman's Realmใ€‹. Self-published. 2016๋…„ 2์›” 12์ผ์— ํ™•์ธํ•จ.
  4. โ†‘ โ€œUsing Registry Editor in Real Modeโ€. ใ€ŠSupportใ€‹. ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ. 2006๋…„ 11์›” 15์ผ. 2016๋…„ 2์›” 12์ผ์— ํ™•์ธํ•จ.
  5. โ†‘ Ellermann, Frank (2014๋…„ 1์›” 22์ผ). โ€œdostub.exeโ€. 2016๋…„ 2์›” 12์ผ์— ํ™•์ธํ•จ.
  6. โ†‘ โ€œMicrosoft PE and COFF Specificationโ€.
  7. โ†‘ Pietrek, Matt (February 2002). โ€œAn In-Depth Look into the Win32 Portable Executable File Formatโ€. ใ€ŠMSDN Magazineใ€‹ (๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ).

์™ธ๋ถ€ ๋งํฌ

[ํŽธ์ง‘]