🐯[TIL] 250801-044

byoΒ·2025λ…„ 8μ›” 1일

πŸ’« CS

πŸ“Œ CPU μŠ€μΌ€μ€„λ§

1. CPU μŠ€μΌ€μ€„λ§μ΄λž€?

  • μ‹€ν–‰ κ°€λŠ₯ν•œ μ—¬λŸ¬ ν”„λ‘œμ„ΈμŠ€ 쀑 λˆ„κ°€ CPUλ₯Ό μ‚¬μš©ν• μ§€ κ²°μ •ν•˜λŠ” κ³Όμ •
  • μš°μ„ μˆœμœ„, 도착 μ‹œκ°„, μ‹€ν–‰ μ‹œκ°„ 등을 κ³ λ €ν•΄ CPU μžμ›μ„ 효율적으둜 뢄배함

2. μŠ€μΌ€μ€„λ§μ΄ ν•„μš”ν•œ 이유

μ΄μœ μ„€λͺ…
ν•œμ •λœ μžμ›CPUλŠ” λ™μ‹œμ— ν•˜λ‚˜μ˜ λͺ…λ Ήλ§Œ μ‹€ν–‰ κ°€λŠ₯
λ‹€μˆ˜μ˜ ν”„λ‘œμ„ΈμŠ€μ—¬λŸ¬ ν”„λ‘œκ·Έλž¨μ΄ λ™μ‹œμ— 싀행됨
μžμ›μ˜ 효율적 μ‚¬μš©I/O λŒ€κΈ° μ‹œ λ‹€λ₯Έ ν”„λ‘œμ„ΈμŠ€κ°€ CPU μ‚¬μš© κ°€λŠ₯
μ‹œμŠ€ν…œ 응닡성 ν–₯상빠λ₯Έ λ°˜μ‘μ„ μœ„ν•΄ CPU ν• λ‹Ή ν•„μš”

3. λΉ„μ„ μ ν˜• vs μ„ μ ν˜• μŠ€μΌ€μ€„λ§

ν•­λͺ©λΉ„μ„ μ ν˜•μ„ μ ν˜•
CPU 회수 λ°©μ‹ν”„λ‘œμ„ΈμŠ€κ°€ 슀슀둜 λ°˜ν™˜μš΄μ˜μ²΄μ œκ°€ κ°•μ œλ‘œ 회수
μž₯μ λ‹¨μˆœ, μ•ˆμ •μ„±μ‘λ‹΅μ„± 우수, 곡정성 ↑
λ‹¨μ λ°˜μ‘μ„± ↓문λ§₯ μ „ν™˜ λΉ„μš© 쑴재
μ˜ˆμ‹œμΌλΆ€ μž„λ² λ””λ“œ μ‹œμŠ€ν…œν˜„λŒ€ 운영체제 λŒ€λΆ€λΆ„

4. μŠ€μΌ€μ€„λ§ 큐

  • Ready 큐: CPUλ₯Ό κΈ°λ‹€λ¦¬λŠ” ν”„λ‘œμ„ΈμŠ€ λͺ©λ‘
  • Device 큐: I/O μž‘μ—… μ™„λ£Œλ₯Ό κΈ°λ‹€λ¦¬λŠ” 큐

μƒνƒœ 전이 흐름

  1. 생성 β†’ Ready
  2. Ready β†’ Running (CPU ν• λ‹Ή)
  3. Running β†’ Waiting (I/O μš”μ²­)
  4. Waiting β†’ Ready (I/O μ™„λ£Œ)
  5. Running β†’ Terminated (μž‘μ—… μ’…λ£Œ)
  6. Running β†’ Ready (νƒ€μž„μŠ¬λΌμ΄μŠ€ μ’…λ£Œ μ‹œ)

5. λ””μŠ€νŒ¨μ²˜(Dispatcher)

  • μŠ€μΌ€μ€„λŸ¬κ°€ μ„ νƒν•œ ν”„λ‘œμ„ΈμŠ€μ— μ‹€μ œλ‘œ CPUλ₯Ό ν• λ‹Ήν•˜λŠ” μ—­ν• 
  • μ»¨ν…μŠ€νŠΈ μŠ€μœ„μΉ­, μ‚¬μš©μž λͺ¨λ“œ μ „ν™˜, λͺ…λ Ήμ–΄ μ‹€ν–‰ μ‹œμž‘μ„ λ‹΄λ‹Ή
  • λ””μŠ€νŒ¨μΉ˜ μ§€μ—°: CPUλ₯Ό λ„˜κ²¨μ£ΌλŠ” 데 κ±Έλ¦¬λŠ” μ‹œκ°„ (μ§§μ„μˆ˜λ‘ μ’‹μŒ)

6. μŠ€μΌ€μ€„λ§ λͺ©ν‘œ

λͺ©ν‘œμ„€λͺ…
곡정성λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€μ— CPU 기회 λΆ€μ—¬
νš¨μœ¨μ„±CPU 유휴 μ‹œκ°„ μ΅œμ†Œν™”
응닡 μ‹œκ°„μ‚¬μš©μž μš”μ²­ 응닡 속도 ν–₯상
μ²˜λ¦¬λŸ‰λ‹¨μœ„ μ‹œκ°„λ‹Ή μž‘μ—… 수 μ΅œλŒ€ν™”
λŒ€κΈ° μ‹œκ°„Ready νμ—μ„œ κΈ°λ‹€λ¦¬λŠ” μ‹œκ°„ μ΅œμ†Œν™”
ν„΄μ–΄λΌμš΄λ“œ νƒ€μž„μž‘μ—… μ‹œμž‘λΆ€ν„° μ’…λ£ŒκΉŒμ§€ κ±Έλ¦° μ‹œκ°„ μ΅œμ†Œν™”

핡심

  • CPU μŠ€μΌ€μ€„λ§μ€ λˆ„κ°€ CPUλ₯Ό μ‚¬μš©ν• μ§€ κ²°μ •ν•˜λŠ” 핡심 κΈ°λŠ₯이닀.
  • 방식은 λΉ„μ„ μ ν˜•κ³Ό μ„ μ ν˜•μœΌλ‘œ λ‚˜λ‰˜λ©°, λŒ€λΆ€λΆ„μ˜ μš΄μ˜μ²΄μ œλŠ” μ„ μ ν˜•μ„ μ‚¬μš©ν•œλ‹€.
  • ν”„λ‘œμ„ΈμŠ€λŠ” Ready, Running, Waiting μƒνƒœλ₯Ό μ˜€κ°€λ©°, λ””μŠ€νŒ¨μ²˜κ°€ CPUλ₯Ό μ‹€μ œλ‘œ λ„˜κΈ΄λ‹€.
  • μŠ€μΌ€μ€„λ§ 정책은 곡정성, νš¨μœ¨μ„±, 응닡성 λ“± μ—¬λŸ¬ λͺ©ν‘œ κ°„ κ· ν˜•μ΄ μ€‘μš”ν•˜λ‹€.
profile
πŸ—‚οΈ hamstern

0개의 λŒ“κΈ€