๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โญ Group_Study/Operating System

[1์ฃผ์ฐจ] Computer System Overview

by ํฌ์ŠคํŠธ์‰์ดํฌ 2022. 12. 4.

Computer System Overview

์šด์˜์ฒด์ œ(Operating System)์ด๋ž€?

โœ” ์ปดํ“จํŒ… ์ž์›(hardware)๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•ด์„œ ์‚ฌ์šฉ์ž ํ˜น์€ ์‘์šฉํ”„๋กœ๊ทธ๋žจ์—๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด

์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด(Hardware)

โœ” ํ”„๋กœ์„ธ์„œ(Pocessor): ๊ณ„์‚ฐ, ์—ฐ์‚ฐ์„ ๋‹ด๋‹น

  • CPU
  • ๊ทธ๋ž˜ํ”ฝ ์นด๋“œ(GPU)
  • ์‘์šฉ ์ „์šฉ ์ฒ˜๋ฆฌ ์žฅ์น˜ ๋“ฑ

โœ” ๋ฉ”๋ชจ๋ฆฌ(Memory): ์ €์žฅ์„ ๋‹ด๋‹น

  • ์ฃผ ๊ธฐ์–ต์žฅ์น˜
  • ๋ณด์กฐ ๊ธฐ์–ต ์žฅ์น˜ ๋“ฑ

โœ” ์ฃผ๋ณ€์žฅ์น˜

  • ํ‚ค๋ณด๋“œ / ๋งˆ์šฐ์Šค
  • ๋ชจ๋‹ˆํ„ฐ, ํ”„๋ฆฐํ„ฐ
  • ๋„คํŠธ์›Œํฌ ๋ชจ๋Ž€ ๋“ฑ

ํ”„๋กœ์„ธ์„œ(Processor)

โœ” ์—ฐ์‚ฐ์ˆ˜ํ–‰
โœ” ์ปดํ“จํ„ฐ์˜ ๋ชจ๋“  ์žฅ์น˜์˜ ๋™์ž‘ ์ œ์–ด

๋ ˆ์ง€์Šคํ„ฐ (Register)

โœ” ํ”„๋กœ์„ธ์„œ ๋‚ด๋ถ€์— ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ

  • ํ”„๋กœ์„ธ์„œ๊ฐ€ ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ ์ €์žฅ
  • ์ปดํ“จํ„ฐ์—์„œ ๊ฐ€์žฅ ๋น ๋ฅธ ๋ฉ”๋ชจ๋ฆฌ

โœ” ๋ ˆ์ง€์Šคํ„ฐ์˜ ์ข…๋ฅ˜

  1. ์šฉ๋„์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜: ์ „์šฉ๋ ˆ์ง€์Šคํ„ฐ, ๋ฒ”์šฉ๋ ˆ์ง€์Šคํ„ฐ
  2. ์‚ฌ์šฉ์ž๊ฐ€ ์ •๋ณด ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ ์—ฌ๋ถ€์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜: ์‚ฌ์šฉ์ž ๊ฐ€์‹œ ๋ ˆ์ง€์Šคํ„ฐ, ์‚ฌ์šฉ์ž ๋ถˆ๊ฐ€์‹œ ๋ ˆ์ง€์Šคํ„ฐ
  3. ์ €์žฅํ•˜๋Š” ์ •๋ณด์˜ ์ข…๋ฅ˜์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜: ๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ, ์ฃผ์†Œ ๋ ˆ์ง€์Šคํ„ฐ, ์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ

๊ฐ€์‹œ ๋ ˆ์ง€์Šคํ„ฐ ์˜ˆ์‹œ

โœ” C์–ธ์–ด์—์„œ ๊ฐ€์‹œ์ ์œผ๋กœ ๋ช…์‹œ

๋ถˆ๊ฐ€์‹œ ๋ ˆ์ง€์Šคํ„ฐ ์˜ˆ์‹œ

์šด์˜์ฒด์ œ์™€ ํ”„๋กœ์„ธ์„œ

โœ” ์šด์˜์ฒด์ œ๋Š” ํ”„๋กœ์„ธ์„œ์—๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ž‘์—…์„ ํ• ๋‹นํ•˜๊ณ  ๊ด€๋ฆฌํ•œ๋‹ค (ํ”„๋กœ์„ธ์Šค(Process) ์ƒ์„ฑ ๋ฐ ๊ด€๋ฆฌ)

โœ” ์šด์˜์ฒด์ œ๋Š” ํ”„๋กœ๊ทธ๋žจ์˜ ํ”„๋กœ์„ธ์„œ ์‚ฌ์šฉ์„ ์ œ์–ดํ•œ๋‹ค (์‚ฌ์šฉ ์‹œ๊ฐ„ ๋“ฑ ์กฐ์œจ)

๋ฉ”๋ชจ๋ฆฌ(Memory)

โœ” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์žฅ์น˜ (๊ธฐ์–ต์žฅ์น˜)

  • ํ”„๋กœ๊ทธ๋žจ(os, ์‚ฌ์šฉ์ž sw ๋“ฑ), ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ

โœ” ๋ฉ”๋ชจ๋ฆฌ์˜ ์ข…๋ฅ˜๊ฐ€ ๊ณ„์ธต์  ๊ตฌ์กฐ๋ฅผ ์ด๋ฃจ๊ณ  ์žˆ๋‹ค

์ฃผ ๊ธฐ์–ต ์žฅ์น˜ (Main memory)

โœ” ํ”„๋กœ์„ธ์„œ๊ฐ€ ์ˆ˜ํ–‰ํ•  ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฐ์ดํ„ฐ ์ €์žฅ
โœ” DRAM์„ ์ฃผ๋กœ ์‚ฌ์šฉ (์šฉ๋Ÿ‰์ด ํฌ๊ณ , ๊ฐ€๊ฒฉ์ด ์ €๋ ดํ•˜๋‹ค)

โœ” ๋””์Šคํฌ ์ž…์ถœ๋ ฅ ๋ณ‘๋ชฉ ํ˜„์ƒ(I/O bottleneck) ํ•ด์†Œ

์บ์‹œ(Cache)

โœ” ํ”„๋กœ์„ธ์„œ ๋‚ด๋ถ€์— ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ(L1, L2 ์บ์‹œ ๋“ฑ)
โœ” ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ  ๊ฐ€๊ฒฉ์ด ๋น„์‹ธ๋‹ค

 

โœ” ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ž…์ถœ๋ ฅ ๋ณ‘๋ชฉ ํ˜„์ƒ ํ•ด์†Œ

์บ์‹œ์˜ ๋™์ž‘

โœ” ์ผ๋ฐ˜์ ์œผ๋กœ ํ•˜๋“œ์›จ์–ด์ ์œผ๋กœ ๊ด€๋ฆฌ ๋œ๋‹ค.

โœ” ์บ์‹œ ํžˆํŠธ(Cache hit)

  • ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ ๋ธ”๋ก์ด ์บ์‹œ ์กด์žฌ

โœ” ์บ์‹œ ๋ฏธ์Šค(Cache miss)

  • ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ ๋ธ”๋ก์ด ์—†๋Š” ๊ฒฝ์šฐ

์บ์‹œ์˜ ์šฉ๋Ÿ‰์ด ๋งค์šฐ ์ž‘์€๋ฐ ์–ด๋–ป๊ฒŒ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌ ํ• ๊นŒ...?

์ง€์—ญ์„ฑ (Locality)

1. ๊ณต๊ฐ„์  ์ง€์—ญ์„ฑ (Spatial locality)

  • ์ฐธ์กฐํ•œ ์ฃผ์†Œ์™€ ์ธ์ ‘ํ•œ ์ฃผ์†Œ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ํŠน์„ฑ (ex: ์ˆœ์ฐจ์  ํ”„๋กœ๊ทธ๋žจ ์ˆ˜ํ–‰)

2. ์‹œ๊ฐ„์  ์ง€์—ญ์„ฑ (Temporal locality)

  • ํ•œ ๋ฒˆ ์ฐธ์กฐํ•œ ์ฃผ์†Œ๋ฅผ ๊ณง ๋‹ค์‹œ ์ฐธ์กฐํ•˜๋Š” ํŠน์„ฑ (ex: for๋ฌธ ๋“ฑ์˜ ์ˆœํ™˜๋ฌธ)

โœ” ์ง€์—ญ์„ฑ์€ ์บ์‹œ ์ ์ค‘๋ฅ (cache hit ration)์™€ ๋ฐ€์ ‘!

๋ณด์กฐ ๊ธฐ์–ต ์žฅ์น˜ (Auxiliary memory / Secondary memory / Storage)

โœ” ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ
โœ” ํ”„๋กœ์„ธ์„œ๊ฐ€ ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Œ (์ฃผ๋ณ€ ์žฅ์น˜)

  • ์ฃผ ๊ธฐ์–ต ์žฅ์น˜๋ฅผ ๊ฑฐ์ณ์„œ ์ ‘๊ทผ
  • ํ”„๋กœ๊ทธ๋žจ/๋ฐ์ดํ„ฐ > ์ฃผ๊ธฐ์–ต์žฅ์น˜์ธ ๊ฒฝ์šฐ๋Š” ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ!

โœ” ์šฉ๋Ÿ‰์ด ํฌ๊ณ  ๊ฐ€๊ฒฉ์ด ์ €๋ ตํ•˜๋‹ค.

๋ฉ”๋ชจ๋ฆฌ์™€ ์šด์˜์ฒด์ œ

โœ” ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ๋ฐ ๊ด€๋ฆฌ

  • ํ”„๋กœ๊ทธ๋žจ์˜ ์š”์ฒญ์— ๋”ฐ๋ฅธ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ๋ฐ ํšŒ์ˆ˜
  • ํ• ๋‹น๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ

โœ” ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ

  • ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ์ƒ์„ฑ ๋ฐ ๊ด€๋ฆฌ
  • ๋…ผ๋ฆฌ ์ฃผ์†Œ -> ๋ฌผ๋ฆฌ ์ฃผ์†Œ ๋ณ€ํ™˜

์‹œ์Šคํ…œ ๋ฒ„์Šค (System Bus)

โœ” ํ•˜๋“œ์›จ์–ด๋“ค์ด ๋ฐ์ดํ„ฐ ๋ฐ ์‹ ํ˜ธ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ๋ฌผ๋ฆฌ์ ์ธ ํ†ต๋กœ

์ฃผ๋ณ€ ์žฅ์น˜

โœ” ํ”„๋กœ์„ธ์„œ์™€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ œ์™ธํ•œ ํ•˜๋“œ์›จ์–ด

์ฃผ๋ณ€์žฅ์ฒด์™€ ์šด์˜์ฒด์ œ

โœ” ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„ ๊ด€๋ฆฌ

  • ์ฃผ๋ณ€ ์žฅ์น˜ ์‚ฌ์šฉ์„ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต

โœ” ์ธํ„ฐ๋ŸฝํŠธ (Interrupt) ์ฒ˜๋ฆฌ

  • ์ฃผ๋ณ€ ์žฅ์น˜์˜ ์š”์ฒญ ์ฒ˜๋ฆฌ

โœ” ํŒŒ์ผ ๋ฐ ๋””์Šคํฌ ๊ด€๋ฆฌ

  • ํŒŒ์ผ ์ƒ์„ฑ ๋ฐ ์‚ญ์ œ
  • ๋””์Šคํฌ ๊ณต๊ฐ„ ๊ด€๋ฆฌ

๋Œ“๊ธ€