๐Ÿ“Œ ์ปดํ“จํ„ฐ ์•„ํ‚คํ…์ฒ˜์™€ ์šด์˜์ฒด์ œ(OS): ์ปดํ“จํ„ฐ ๋‚ด๋ถ€ ์›๋ฆฌ๋ถ€ํ„ฐ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ๊นŒ์ง€ ๐Ÿ’ป

Jinil Parkยท2025๋…„ 4์›” 19์ผ
0

Computer Science

๋ชฉ๋ก ๋ณด๊ธฐ
4/5

๐Ÿ”– ์ปดํ“จํ„ฐ ์•„ํ‚คํ…์ฒ˜๋ž€?

์ปดํ“จํ„ฐ ์•„ํ‚คํ…์ฒ˜๋Š” ์ปดํ“จํ„ฐ์˜ ๊ตฌ์„ฑ ์š”์†Œ์™€ ์„ค๊ณ„ ์›๋ฆฌ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋“œ์›จ์–ด์™€ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •์˜ํ•˜๋ฉฐ, ์„ฑ๋Šฅ, ํšจ์œจ์„ฑ, ๋น„์šฉ ๋“ฑ ๋‹ค์–‘ํ•œ ์š”์†Œ๋ฅผ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ

  • CPU (์ค‘์•™ ์ฒ˜๋ฆฌ ์žฅ์น˜)
    ์ปดํ“จํ„ฐ์˜ ๋‘๋‡Œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

    • ๊ตฌ์„ฑ์š”์†Œ: ์‚ฐ์ˆ ๋…ผ๋ฆฌ์žฅ์น˜(ALU), ์ œ์–ด์žฅ์น˜(CU), ๋ ˆ์ง€์Šคํ„ฐ(Register)
  • ๋ฉ”๋ชจ๋ฆฌ(Memory)
    ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค.

    • RAM(ํœ˜๋ฐœ์„ฑ ๋ฉ”๋ชจ๋ฆฌ), ROM(๋น„ํœ˜๋ฐœ์„ฑ ๋ฉ”๋ชจ๋ฆฌ)
  • ์ž…์ถœ๋ ฅ ์žฅ์น˜(I/O Device)
    ์‚ฌ์šฉ์ž๋‚˜ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ์žฅ์น˜์ž…๋‹ˆ๋‹ค.

    • ํ‚ค๋ณด๋“œ, ๋งˆ์šฐ์Šค, ๋””์Šคํ”Œ๋ ˆ์ด, ์ €์žฅ์žฅ์น˜ ๋“ฑ

โš™๏ธ ํฐ ๋…ธ์ด๋งŒ ์•„ํ‚คํ…์ฒ˜(Von Neumann Architecture)

๋Œ€๋ถ€๋ถ„์˜ ํ˜„๋Œ€ ์ปดํ“จํ„ฐ๋Š” ํฐ ๋…ธ์ด๋งŒ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ๊ฐœ๋…

  • ๋ฉ”๋ชจ๋ฆฌ์— ๋ช…๋ น์–ด์™€ ๋ฐ์ดํ„ฐ๋ฅผ ํ•จ๊ป˜ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • CPU๋Š” ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ช…๋ น์–ด๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ๊ฐ€์ ธ์™€์„œ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ํ•œ๊ณ„์ 

  • ํฐ ๋…ธ์ด๋งŒ ๋ณ‘๋ชฉํ˜„์ƒ(Von Neumann Bottleneck): CPU์™€ ๋ฉ”๋ชจ๋ฆฌ ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „์†ก ์†๋„์˜ ์ œํ•œ์œผ๋กœ ์ธํ•œ ์„ฑ๋Šฅ ์ €ํ•˜ ๋ฌธ์ œ.

๐Ÿ–ฅ๏ธ CPU ๋™์ž‘ ์›๋ฆฌ

CPU๋Š” ์ฃผ์–ด์ง„ ๋ช…๋ น์–ด๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‚ฌ์ดํด๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ Fetch-Decode-Execute ์‚ฌ์ดํด

  • Fetch(๊ฐ€์ ธ์˜ค๊ธฐ): ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ช…๋ น์–ด๋ฅผ ์ฝ์–ด์˜ต๋‹ˆ๋‹ค.
  • Decode(ํ•ด์„ํ•˜๊ธฐ): ๊ฐ€์ ธ์˜จ ๋ช…๋ น์–ด๋ฅผ ํ•ด์„ํ•˜์—ฌ ์ˆ˜ํ–‰ํ•  ์ž‘์—…์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.
  • Execute(์‹คํ–‰ํ•˜๊ธฐ): ์‹ค์ œ๋กœ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ ๋ฉ”๋ชจ๋ฆฌ ๊ณ„์ธต ๊ตฌ์กฐ(Memory Hierarchy)

์„ฑ๋Šฅ๊ณผ ๋น„์šฉ์˜ ๊ท ํ˜•์„ ๋งž์ถ”๊ธฐ ์œ„ํ•ด ๋ฉ”๋ชจ๋ฆฌ๋Š” ๊ณ„์ธต ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋ ˆ์ง€์Šคํ„ฐ(Register): CPU ๋‚ด๋ถ€์—์„œ ๋งค์šฐ ๋น ๋ฅด๊ฒŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ์†Œํ˜• ๋ฉ”๋ชจ๋ฆฌ์ž…๋‹ˆ๋‹ค.
  • ์บ์‹œ(Cache): CPU ๊ฐ€๊นŒ์ด์— ์œ„์น˜ํ•˜๋ฉฐ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜์—ฌ ์†๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค.
  • ์ฃผ๊ธฐ์–ต์žฅ์น˜(Main Memory, RAM): ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜(Secondary Storage): ๋Œ€์šฉ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์˜๊ตฌ์ ์œผ๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค(HDD, SSD ๋“ฑ).

๐ŸŒ ์šด์˜์ฒด์ œ(OS)๋ž€?

์šด์˜์ฒด์ œ(Operating System)๋Š” ์ปดํ“จํ„ฐ์˜ ์ž์›์„ ๊ด€๋ฆฌํ•˜๊ณ  ์‚ฌ์šฉ์ž์—๊ฒŒ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ํ•ต์‹ฌ ์†Œํ”„ํŠธ์›จ์–ด์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ OS์˜ ์ฃผ์š” ์—ญํ• 

  • ์ž์› ๊ด€๋ฆฌ(CPU, ๋ฉ”๋ชจ๋ฆฌ, ๋””์Šคํฌ ๋“ฑ)
  • ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ ๋ฐ ์Šค์ผ€์ค„๋ง
  • ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ
  • ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต(GUI, CLI)

โšก ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ(Process & Thread)

๐Ÿ“Œ ํ”„๋กœ์„ธ์Šค(Process)

  • ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ์˜ ์ธ์Šคํ„ด์Šค์ž…๋‹ˆ๋‹ค.
  • ๋…๋ฆฝ์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„๊ณผ ์ž์›์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

๐Ÿ“Œ ์Šค๋ ˆ๋“œ(Thread)

  • ํ”„๋กœ์„ธ์Šค ๋‚ด์—์„œ ์‹คํ–‰๋˜๋Š” ์ž‘์—… ๋‹จ์œ„์ž…๋‹ˆ๋‹ค.
  • ํ”„๋กœ์„ธ์Šค ์ž์›์„ ๊ณต์œ ํ•˜๋ฉฐ ๋ณ‘๋ ฌ์ ์œผ๋กœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“Œ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ(Multithreading)

  • ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ๋ฅผ ๋™์‹œ์— ์‹คํ–‰ํ•˜์—ฌ ์„ฑ๋Šฅ์„ ๋†’์ด๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค.

๐Ÿ—ƒ๏ธ CPU ์Šค์ผ€์ค„๋ง(CPU Scheduling)

CPU ์Šค์ผ€์ค„๋ง์€ ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๋ฅผ ๋จผ์ € ์‹คํ–‰ํ• ์ง€ ๊ฒฐ์ •ํ•˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ์Šค์ผ€์ค„๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜

  • FCFS (First Come, First Served): ๋จผ์ € ๋„์ฐฉํ•œ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • SJF (Shortest Job First): ์‹คํ–‰ ์‹œ๊ฐ„์ด ๊ฐ€์žฅ ์งง์€ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋จผ์ € ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ๋ผ์šด๋“œ ๋กœ๋นˆ(Round Robin): ์ •ํ•ด์ง„ ์‹œ๊ฐ„(ํƒ€์ž„ ์Šฌ๋ผ์ด์Šค) ๋™์•ˆ ๊ฐ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ฐจ๋ก€๋กœ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ์šฐ์„ ์ˆœ์œ„ ์Šค์ผ€์ค„๋ง(Priority Scheduling): ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ์ž‘์—…๋ถ€ํ„ฐ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•

ํšจ์œจ์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ์„ ์œ„ํ•ด OS๋Š” ๋‹ค์–‘ํ•œ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์„ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•

  • ํŽ˜์ด์ง•(Paging): ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ณ ์ • ํฌ๊ธฐ์˜ ํŽ˜์ด์ง€๋กœ ๋‚˜๋ˆ„์–ด ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ์„ธ๊ทธ๋จผํ…Œ์ด์…˜(Segmentation): ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋…ผ๋ฆฌ์ ์ธ ๋‹จ์œ„๋กœ ๋ถ„ํ• ํ•˜์—ฌ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ(Virtual Memory): ์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ๋ณด๋‹ค ํฐ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค.

๐Ÿ“ ํŒŒ์ผ ์‹œ์Šคํ…œ(File System)

ํŒŒ์ผ ์‹œ์Šคํ…œ์€ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ํŒŒ์ผ ์‹œ์Šคํ…œ ์œ ํ˜•

  • FAT32, NTFS(Windows)
  • ext4(Linux)
  • APFS(macOS)

๐Ÿšฆ ์šด์˜์ฒด์ œ์˜ ์ข…๋ฅ˜์™€ ํŠน์ง•

๐Ÿ“Œ ์ฃผ์š” OS ์ข…๋ฅ˜

  • Windows: ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์Šคํฌํƒ‘ ์šด์˜์ฒด์ œ, GUI ํ™˜๊ฒฝ ์ค‘์‹ฌ
  • Linux: ์˜คํ”ˆ ์†Œ์Šค ๊ธฐ๋ฐ˜ ์šด์˜์ฒด์ œ, ์„œ๋ฒ„ ๋ฐ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ๋งŽ์ด ์‚ฌ์šฉ
  • macOS: Apple์˜ OS๋กœ Unix ๊ธฐ๋ฐ˜์ด๋ฉฐ ์ง๊ด€์  ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต
  • Android/iOS: ๋ชจ๋ฐ”์ผ ์žฅ์น˜ ์ „์šฉ OS๋กœ ์ตœ์ ํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต

๐Ÿ”ง ๊ฐ€์ƒํ™”(Virtualization)์™€ ์ปจํ…Œ์ด๋„ˆ(Container)

๊ฐ€์ƒํ™” ๊ธฐ์ˆ ์€ ๋‹จ์ผ ํ•˜๋“œ์›จ์–ด์—์„œ ์—ฌ๋Ÿฌ ์šด์˜์ฒด์ œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ์ฃผ์š” ๊ธฐ์ˆ 

  • ๊ฐ€์ƒ ๋จธ์‹ (VM): ๋…๋ฆฝ์ ์ธ OS๋ฅผ ๊ฐ€์ƒ ํ™˜๊ฒฝ์— ์„ค์น˜ํ•˜์—ฌ ์‹คํ–‰ํ•˜๋Š” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. (์˜ˆ: VMware, VirtualBox)
  • ์ปจํ…Œ์ด๋„ˆ(Container): OS ์ปค๋„์„ ๊ณต์œ ํ•˜์—ฌ ๋น ๋ฅด๊ณ  ๊ฐ€๋ฒผ์šด ๊ฒฉ๋ฆฌ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: Docker, Kubernetes)

โœ๏ธ ๋งˆ๋ฌด๋ฆฌ ๋ฐ ํ•™์Šต ๋ฐฉํ–ฅ

์ปดํ“จํ„ฐ ์•„ํ‚คํ…์ฒ˜์™€ ์šด์˜์ฒด์ œ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ํ•„์ˆ˜์ ์ธ ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์‹œ์Šคํ…œ์„ ํšจ์œจ์ ์œผ๋กœ ์šด์˜ํ•˜๊ณ , ์„ฑ๋Šฅ ๋ฌธ์ œ๋ฅผ ์ง„๋‹จํ•˜๋ฉฐ, ๋” ๋‚˜์€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

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


๐Ÿ“– ๋ณธ ๊ธ€์€ ์ปดํ“จํ„ฐ ์•„ํ‚คํ…์ฒ˜์™€ ์šด์˜์ฒด์ œ๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๋Š” ๋ถ„๋“ค์ด ํ•ต์‹ฌ ๊ฐœ๋…์„ ๊นŠ์ด ์ดํ•ดํ•˜๊ณ , ์‹ค๋ฌด ํ™œ์šฉ ๋Šฅ๋ ฅ์„ ๊ธฐ๋ฅผ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ์žฅ์—์„œ ๊ณ„์†๋ฉ๋‹ˆ๋‹ค!

0๊ฐœ์˜ ๋Œ“๊ธ€