Exam Note/μ»΄ν™œ 1κΈ‰

운영체제(OS)

UNarD 2025. 6. 30. 16:24

πŸ’» 운영체제(OS)

🧠 μš΄μ˜μ²΄μ œλž€?

  • μ‚¬μš©μžμ˜ λͺ…령을 λ°›μ•„ ν•˜λ“œμ›¨μ–΄μ™€ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ—°κ²°ν•˜λŠ” μ€‘κ°œμžμž…λ‹ˆλ‹€.
  • μ‚¬μš©μžμ˜ νŽΈμ˜μ™€ μ‹œμŠ€ν…œ 생산성을 높이기 μœ„ν•œ ν”„λ‘œκ·Έλž¨μ˜ μ§‘ν•©μ΄μ—μš”.
  • μš΄μ˜μ²΄μ œλŠ” 컴퓨터가 켜져 μžˆλŠ” λ™μ•ˆ 항상 λ™μž‘ν•˜κ³  있으며, μ£ΌκΈ°μ–΅μž₯치(RAM)에 μœ„μΉ˜ν•©λ‹ˆλ‹€.

βœ… λŒ€ν‘œμ μΈ 운영체제 μ’…λ₯˜

  • Windows
  • UNIX / Linux
  • macOS
  • MS-DOS λ“±

🎯 운영체제의 λͺ©μ 

ν•­λͺ© μ„€λͺ…
βš™οΈ 처리 λŠ₯λ ₯ (Throughput) 일정 μ‹œκ°„ 내에 μ‹œμŠ€ν…œμ΄ μ²˜λ¦¬ν•  수 μžˆλŠ” 일의 μ–‘
πŸ• 응닡 μ‹œκ°„ (Turn Around Time) μž‘μ—…μ„ μš”μ²­ν•œ ν›„ κ²°κ³Όκ°€ λ‚˜μ˜¬ λ•ŒκΉŒμ§€ κ±Έλ¦° μ‹œκ°„
πŸ”Œ μ‚¬μš© κ°€λŠ₯도 (Availability) μ‹œμŠ€ν…œμ΄ μ¦‰μ‹œ μ‚¬μš© κ°€λŠ₯ν•œ 정도
🧷 신뒰도 (Reliability) μ‹œμŠ€ν…œμ΄ 문제λ₯Ό μ •ν™•ν•˜κ²Œ μ²˜λ¦¬ν•˜λŠ” λŠ₯λ ₯

🧩 운영체제의 ꡬ성 μš”μ†Œ (Operating System Components)

μš΄μ˜μ²΄μ œλŠ” 컴퓨터 ν•˜λ“œμ›¨μ–΄μ™€ μ‚¬μš©μžμ˜ ν”„λ‘œκ·Έλž¨ μ‚¬μ΄μ—μ„œ 쀑간 역할을 ν•©λ‹ˆλ‹€.
μš΄μ˜μ²΄μ œλŠ” 크게 두 κ°€μ§€ μ—­ν• λ‘œ λ‚˜λˆŒ 수 μžˆμ–΄μš”

πŸ”Ή μ œμ–΄ ν”„λ‘œκ·Έλž¨ (Control Program)

컴퓨터 μžμ›μ„ 효율적으둜 κ΄€λ¦¬ν•˜κ³  μ‘°μ •ν•˜λŠ” 역할을 ν•©λ‹ˆλ‹€.

  • κ°μ‹œ ν”„λ‘œκ·Έλž¨ (Monitor Program)
    πŸ‘‰ μ‹œμŠ€ν…œ 전체가 잘 μž‘λ™ν•˜λŠ”μ§€ κ°μ‹œν•˜κ³  μ œμ–΄ν•©λ‹ˆλ‹€.
    예: μ–΄λ–€ μž₯μΉ˜κ°€ μž‘λ™ 쀑인지, λ¬Έμ œκ°€ μƒκ²ΌλŠ”μ§€ 확인

  • μž‘μ—… 관리 ν”„λ‘œκ·Έλž¨ (Job Control Program)
    πŸ‘‰ μ‚¬μš©μžκ°€ μš”μ²­ν•œ μž‘μ—…μ„ μ–΄λ–€ μˆœμ„œλ‘œ μ²˜λ¦¬ν• μ§€ μŠ€μΌ€μ€„λ§ν•˜κ³ , μž‘μ—… 싀행을 κ΄€λ¦¬ν•©λ‹ˆλ‹€.
    예: λ¬Έμ„œ νŽΈμ§‘, μŒμ•… μž¬μƒ, 인터넷 검색 쀑 μ–΄λ–€ μž‘μ—…μ„ λ¨Όμ € μ²˜λ¦¬ν• μ§€ κ²°μ •

  • 데이터 관리 ν”„λ‘œκ·Έλž¨ (Data Management Program)
    πŸ‘‰ ν•˜λ“œλ””μŠ€ν¬, USB, λ©”λͺ¨λ¦¬ λ“±μ—μ„œ λ°μ΄ν„°μ˜ μž…μΆœλ ₯을 μ²˜λ¦¬ν•©λ‹ˆλ‹€.
    예: 파일 μ €μž₯, 뢈러였기, μ‚­μ œ 같은 μž‘μ—… λ‹΄λ‹Ή

πŸ”Έ 처리 ν”„λ‘œκ·Έλž¨ (Processing Program)

μ‚¬μš©μžμ˜ μž‘μ—…μ„ μ‹€μ œλ‘œ μˆ˜ν–‰ν•˜λŠ” ν”„λ‘œκ·Έλž¨λ“€μž…λ‹ˆλ‹€.

  • μ–Έμ–΄ λ²ˆμ—­ ν”„λ‘œκ·Έλž¨ (Language Translator)
    πŸ‘‰ μ‚¬λžŒμ΄ μž‘μ„±ν•œ κ³ κΈ‰ μ–Έμ–΄(예: Python, Java)λ₯Ό 컴퓨터가 이해할 수 μžˆλŠ” κΈ°κ³„μ–΄λ‘œ λ°”κΏ”μ£ΌλŠ” ν”„λ‘œκ·Έλž¨μž…λ‹ˆλ‹€.
    μ’…λ₯˜: 컴파일러, 인터프리터 λ“±

  • μ„œλΉ„μŠ€ ν”„λ‘œκ·Έλž¨ (Utility Program)
    πŸ‘‰ μ‹œμŠ€ν…œμ„ νŽΈλ¦¬ν•˜κ²Œ μ‚¬μš©ν•  수 μžˆλ„λ‘ λ„μ™€μ£ΌλŠ” 보쑰 λ„κ΅¬μž…λ‹ˆλ‹€.
    예: λ””μŠ€ν¬ 정리, 파일 μ••μΆ•, λ°±μ‹  ν”„λ‘œκ·Έλž¨ λ“±

🚦 운영체제의 μ’…λ₯˜λ³„ 운영 방식

μš΄μ˜μ²΄μ œλŠ” μ‚¬μš© λͺ©μ μ— 따라 λ‹€μ–‘ν•œ λ°©μ‹μœΌλ‘œ μž‘λ™ν•©λ‹ˆλ‹€.
각각의 μ‹œμŠ€ν…œ 방식은 컴퓨터가 μž‘μ—…μ„ μ²˜λ¦¬ν•˜λŠ” 방식을 κ²°μ •ν•©λ‹ˆλ‹€.

πŸ—ƒοΈ 일괄 처리 μ‹œμŠ€ν…œ (Batch Processing System)

  • μ—¬λŸ¬ μž‘μ—…μ„ ν•œκΊΌλ²ˆμ— λͺ¨μ•„μ„œ 순차적으둜 μ²˜λ¦¬ν•©λ‹ˆλ‹€.
  • μ‚¬μš©μžκ°€ 직접 μ‘°μž‘ν•  ν•„μš” 없이 μžλ™μœΌλ‘œ 처리됨
  • 예: μ˜›λ‚  λŒ€ν˜• μ»΄ν“¨ν„°μ—μ„œ μΉ΄λ“œ λ­‰μΉ˜λ₯Ό λ„£κ³  ν”„λ‘œκ·Έλž¨μ„ 돌리던 방식

⏱ μ‹€μ‹œκ°„ 처리 μ‹œμŠ€ν…œ (Real-Time System)

  • 데이터가 λ“€μ–΄μ˜€μžλ§ˆμž μ§€μ—° 없이 μ¦‰μ‹œ μ²˜λ¦¬ν•©λ‹ˆλ‹€.
  • μ •ν™•ν•œ μ‹œκ°„ λ°˜μ‘μ΄ 맀우 μ€‘μš”ν•¨
  • 예: 항곡기 μ œμ–΄ μ‹œμŠ€ν…œ, 병원 생λͺ… λͺ¨λ‹ˆν„°, 곡μž₯ μžλ™ν™” μ‹œμŠ€ν…œ λ“±

πŸ‘¨β€πŸ‘©β€πŸ‘§ μ‹œλΆ„ν•  μ‹œμŠ€ν…œ (Time Sharing System)

  • μ—¬λŸ¬ μ‚¬μš©μžκ°€ λ™μ‹œμ— 컴퓨터λ₯Ό μ‚¬μš©ν•˜λŠ” κ²ƒμ²˜λŸΌ 보이도둝 λΉ λ₯΄κ²Œ μž‘μ—…μ„ λ²ˆκ°ˆμ•„ μ²˜λ¦¬ν•©λ‹ˆλ‹€.
  • 짧은 μ‹œκ°„(CPU μ‹œκ°„)을 λΆ„ν• ν•΄ λŒμ•„κ°€λ©° μ‚¬μš©
  • 예: 터미널 μ—¬λŸ¬ 개둜 ν•˜λ‚˜μ˜ μ„œλ²„λ₯Ό ν•¨κ»˜ μ‚¬μš©ν•˜λŠ” ν™˜κ²½

πŸ›° λΆ„μ‚° 처리 μ‹œμŠ€ν…œ (Distributed System)

  • μ—¬λŸ¬ 컴퓨터가 λ„€νŠΈμ›Œν¬λ‘œ μ—°κ²°λ˜μ–΄ ν•˜λ‚˜μ²˜λŸΌ μž‘λ™ν•˜λ©΄μ„œ μž‘μ—…μ„ λΆ„λ‹΄ν•©λ‹ˆλ‹€.
  • 각 μ»΄ν“¨ν„°λŠ” λ…λ¦½μ μ΄μ§€λ§Œ μ„œλ‘œ ν˜‘λ ₯함
  • 예: ꡬ글, μ•„λ§ˆμ‘΄ μ„œλ²„, ν΄λΌμš°λ“œ μ»΄ν“¨νŒ…

🧠 닀쀑 ν”„λ‘œκ·Έλž˜λ° μ‹œμŠ€ν…œ (Multiprogramming System)

  • ν•˜λ‚˜μ˜ CPU둜 μ—¬λŸ¬ ν”„λ‘œκ·Έλž¨μ„ λ²ˆκ°ˆμ•„ μ‹€ν–‰ν•©λ‹ˆλ‹€.
  • CPUκ°€ ν•œ μž‘μ—…μ„ κΈ°λ‹€λ¦¬λŠ” λ™μ•ˆ λ‹€λ₯Έ μž‘μ—…μ„ μ‹€ν–‰ν•΄ μžμ›μ„ μ΅œλŒ€ν•œ ν™œμš©
⚠️ μ‹œλΆ„ν• κ³Ό 닀쀑 ν”„λ‘œκ·Έλž˜λ° μ‹œμŠ€ν…œ 차이점
μ‹œλΆ„ν•  - μ‚¬λžŒ μ—¬λŸ¬ λͺ…이 CPUλ₯Ό κ³΅μœ ν•˜λŠ” 방식
닀쀑 ν”„λ‘œκ·Έλž˜λ° - ν”„λ‘œκ·Έλž¨ μ—¬λŸ¬ κ°œκ°€ CPUλ₯Ό κ³΅μœ ν•˜λŠ” 방식

πŸ’‘ 닀쀑 처리 μ‹œμŠ€ν…œ (Multiprocessing System)

  • ν•˜λ‚˜μ˜ 컴퓨터에 μ—¬λŸ¬ 개의 CPU(ν”„λ‘œμ„Έμ„œ)κ°€ μ„€μΉ˜λ˜μ–΄ μžˆμ–΄ λ™μ‹œμ— μ—¬λŸ¬ μž‘μ—…μ„ λΉ λ₯΄κ²Œ μ²˜λ¦¬ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • λŒ€μš©λŸ‰ μž‘μ—…μ΄λ‚˜ κ³ μ„±λŠ₯ 연산에 유리

βš™οΈ μž„λ² λ””λ“œ μ‹œμŠ€ν…œ (Embedded System)

  • μ „μžκΈ°κΈ°μ— λ‚΄μž₯된 특수 λͺ©μ  μ»΄ν“¨ν„°μž…λ‹ˆλ‹€.
  • 일반적인 μ»΄ν“¨ν„°μ²˜λŸΌ λ²”μš©μ μœΌλ‘œ μ“°λŠ” 게 μ•„λ‹ˆλΌ, νŠΉμ • κΈ°λŠ₯만 μˆ˜ν–‰
  • 예: 냉μž₯κ³ , μ „μžλ ˆμΈμ§€, μŠ€λ§ˆνŠΈμ›ŒμΉ˜, μžλ™μ°¨ λ‚΄λΉ„κ²Œμ΄μ…˜ λ“±

🌟 μš΄μ˜λ°©μ‹ 간단 정리

운영 방식 νŠΉμ§• μ£Όμš” μš©λ„ / μ˜ˆμ‹œ
일괄 처리 μ‹œμŠ€ν…œ (Batch) μž‘μ—…μ„ λͺ¨μ•„μ„œ 순차적으둜 μžλ™ 처리 λŒ€λŸ‰ 데이터 처리, μ˜›λ‚  λ©”μΈν”„λ ˆμž„ μ‹œμŠ€ν…œ λ“±
μ‹€μ‹œκ°„ 처리 μ‹œμŠ€ν…œ (Real-Time) 데이터 λ°œμƒ μ¦‰μ‹œ 처리, λ°˜μ‘ 속도가 맀우 μ€‘μš” 항곡 μ œμ–΄, 의료기기, 곡μž₯ μžλ™ν™”
μ‹œλΆ„ν•  μ‹œμŠ€ν…œ (Time Sharing) μ—¬λŸ¬ μ‚¬μš©μžκ°€ λ™μ‹œμ— μ‚¬μš©ν•˜λŠ” κ²ƒμ²˜λŸΌ 처리, CPU μ‹œκ°„μ„ λ‚˜λˆ” 터미널 기반 μ„œλ²„, ꡐ윑용 컴퓨터 μ‹œμŠ€ν…œ λ“±
λΆ„μ‚° 처리 μ‹œμŠ€ν…œ (Distributed) μ—¬λŸ¬ 컴퓨터가 λ„€νŠΈμ›Œν¬λ‘œ μ—°κ²°λ˜μ–΄ μž‘μ—…μ„ λ‚˜λˆ„μ–΄ μˆ˜ν–‰ ν΄λΌμš°λ“œ μ»΄ν“¨νŒ…, λŒ€κ·œλͺ¨ μ›Ή μ„œλΉ„μŠ€
닀쀑 ν”„λ‘œκ·Έλž˜λ° μ‹œμŠ€ν…œ (Multi Programming) ν•˜λ‚˜μ˜ CPU둜 μ—¬λŸ¬ ν”„λ‘œκ·Έλž¨μ„ λ²ˆκ°ˆμ•„ μ‹€ν–‰ μžμ› ν™œμš©λ₯  ν–₯상, 일반 λ°μŠ€ν¬νƒ‘ ν™˜κ²½
닀쀑 처리 μ‹œμŠ€ν…œ (Multi Processing) μ—¬λŸ¬ CPUκ°€ λ™μ‹œμ— μ—¬λŸ¬ μž‘μ—…μ„ 처리 κ³ μ„±λŠ₯ μ„œλ²„, μŠˆνΌμ»΄ν“¨ν„° λ“±
μž„λ² λ””λ“œ μ‹œμŠ€ν…œ (Embedded) νŠΉμ • κΈ°λŠ₯만 μˆ˜ν–‰ν•˜λŠ” μ†Œν˜• 컴퓨터, κΈ°κΈ° λ‚΄μž₯ν˜• κ°€μ „μ œν’ˆ, μŠ€λ§ˆνŠΈμ›ŒμΉ˜, μžλ™μ°¨ μ‹œμŠ€ν…œ λ“±

πŸ™Œ 마무리

ν•„κΈ° μ‹œν—˜μ „μ—, μš΄μ˜λ°©μ‹λΆ€λΆ„μ€ κΌ­ ν•œλ²ˆ 보고 κ°€μ„Έμš”!