μ΄μ체μ
- μ΄μ체μ λ μ¬μ©μκ° μ»΄ν¨ν°λ₯Ό μ¬μ©νκΈ° μν΄ νμν μννΈ μ¨μ΄μ΄λ€.
- μ»΄ν¨ν°μμ μ€νλλ λͺ¨λ νλ‘κ·Έλ¨μ μ΄μ체μ μμ κ΄λ¦¬νκ³ μ μ΄νλ€.
- λνμ μΈ μ΄μ체μ λ Windows, Linux, Mac, iOSλ±μ΄ μλ€.
- μμμ ν¨μ¨μ μΌλ‘ κ΄λ¦¬νκΈ° μν΄ μμμ μ€μΌμ₯΄λ§ κΈ°λ₯μ μ 곡νλ€.
- νλ‘μΈμ, κΈ°μ΅μ₯μΉ, μ
μΆλ ₯μ₯μΉ, νμΌ λ° μ 보λ±μ μμμ κ΄λ¦¬νλ€.
- μ¬μ©μμ μμ€ν
κ°μ νΈλ¦¬ν μΈν°νμ΄μ€λ₯Ό μ 곡νλ€.
λ€μ€ νλ‘κ·Έλλ° μμ€ν
(multi-programming system)
- λ€μ€ νλ‘κ·Έλλ°μ CPU μμ
κ³Ό μ
μΆλ ₯ μμ
μ λ³ννμ¬ CPU μ΄μ©κ³Ό μ²λ¦¬λμ ν₯μμν¬ μ μλ€.
- ν λ²μ μ¬λ¬ κ°μ νλ‘κ·Έλ¨μ λμμ λλ € μ΅λν CPUλ₯Ό λ§μ΄ νμ©νλ κ²μ΄λ€.
- μμ€ν
μ λ€μ΄μ€λ λͺ¨λ μμ
μ λμ€ν¬μ μμ
νμ μ μ¬λλ€. νλ‘μΈμκ° μ
μΆλ ₯ μμ
μ μ’
λ£λ₯Ό λκΈ°ν λμ νλμ νλ‘μΈμμμ λ€λ₯Έ νλ‘κ·Έλ¨μ μνν μ μλλ‘ νλ κ²μ΄ λ€μ€ νλ‘κ·Έλλ°μ΄λ€.
μλΆν μμ€ν
- μλΆν μμ€ν
μ νΉμ μκ°μ μ ν΄μ κ·Έ μκ°μ΄ μ§λλ©΄ λ€μ μμ
μ μ€ννλ λ°©μμ΄λ€.
- μ΄ μκ°μ λ§€μ° μ§§κΈ° λλ¬Έμ μ¬μ©μμ μ»΄ν¨ν°λ μνΈ μμ©ν μ μμ΄ λνν μ»΄ν¨ν° μμ€ν
μ΄λΌκ³ νλ€.
- λ€μ€ μ¬μ©μ νκ²½μμ λ€μ€ νλ‘κ·Έλλ° κΈ°λ°μΌλ‘ λμνλ μμ€ν
μ΄λ€.
- μ¬λ¬ μ¬μ©μκ° λμμ μ»΄ν¨ν°λ₯Ό μ¬μ©νμ¬ μ£Ό κΈ°μ΅μ₯μΉμ μ©λμ΄ λΆμ‘±ν λ κ°μ λ©λͺ¨λ¦¬λ₯Ό μ¬μ©νλ€.
λνν μμ€ν
(interactive system)μ μ¬μ©μμ μ
λ ₯μ λν΄μ μ»΄ν¨ν°μμ κ²°κ³Όλ₯Ό λ°λ‘ μΆλ ₯νλ κ²μ΄λ€. λλΆλΆμ μ΄μ체μ λ λνν μμ€ν
μ΄λ€.
컀λ
- 컀λμ μ΄μ체μ μ ν΅μ¬ λΆλΆμΌλ‘μ¨ νλμ¨μ΄μ μμ© νλ‘κ·Έλ¨ μ¬μ΄μμ μΈν°νμ΄μ€λ₯Ό μ 곡νλ μν μ νλ©° μ»΄ν¨ν° μμλ€μ κ΄λ¦¬νλ μν μ νλ€.
- 컀λμ λ©λͺ¨λ¦¬ κ΄λ¦¬, νμΌ μμ€ν
, νλ‘λ μ€ κ΄λ¦¬, λλ°μ΄μ€ μ μ΄ λ±μ μν μ μννλ€.
컀λ λͺ¨λ
- 컀λ λͺ¨λλ μ΄μ체μ μλΉμ€λ₯Ό μ 곡λ°μ μ μλ μ€νλͺ¨λμ΄λ€.
- CPUκ° μ»€λ λͺ¨λλ‘ λͺ
λ Ήμ΄λ₯Ό μ€ννλ©΄ μμμ μ κ·Όνλ λͺ
λ Ήμ΄λ₯Ό λΉλ‘―ν λͺ¨λ λͺ
λ Ήμ΄λ₯Ό μ€νν μ μλ€.
μ μ λͺ¨λ
- μ μ λͺ¨λλ μ΄μ체μ μλΉμ€λ₯Ό μ 곡λ°μ μ μλ μ€νλͺ¨λμ΄λ€.
- μΌλ°μ μΈ μμ© νλ‘κ·Έλ¨μ μ¬μ©μ λͺ¨λλ‘ μ€νλλ€.
- CPUλ μ
μΆλ ₯ λͺ
λ Ήμ΄μ κ°μ΄ νλμ¨μ΄ μμμ μ κ·Όνλ λͺ
λ Ήμ΄λ₯Ό μ€νν μ μλ€.
- μ¬μ©μ λͺ¨λλ‘ μ€νλλ μΌλ°μ μ μμ© νλ‘κ·Έλ¨μ μμμ μ κ·Όν μ μλ€.
μμ€ν
μ½
- μ¬μ©μ λͺ¨λλ‘ μ€νλλ νλ‘κ·Έλ¨μ΄ μμμ μ κ·Όνλ μ΄μ체μ μλΉμ€λ₯Ό μ 곡λ°κΈ° μν΄μ μ΄μ체μ μ μμ²μ λ³΄λ΄ μ»€λ λͺ¨λλ‘ μ νλμ΄μΌ νλ€. μμμ μ κ·ΌνκΈ° μν μμ²μ μμ€ν
μ½μ΄λΌκ³ νλ€.
μΈν°λ½νΈ
-
μ£Όλ³ μ₯μΉλ€μ μ
μΆλ ₯μ΄λ νλμ¨μ΄ λ¬Έμ , νλ‘κ·Έλ¨μμ μμΈ λ±μ΄ λ°μνμ λ CPUμκ² μλ €μ£Όλ λ°©μμ΄λ€.
-
CPUλ IRQ(Interrupt Request) Lineμ κ°μ§κ³ μλλ° νλμ¨μ΄ μ₯μΉλ λ€λ₯Έ λΆλΆμμ μ΄λ²€νΈκ° λ°μν κ²½μ° μ΄λ²€νΈλ₯Ό CPUμ μ리기 μν΄ IRQ Lineμ νμ±ννλ€.
-
μ νΈλ₯Ό 보λ΄λ©΄ CPUλ νλ μμ
μ λ©μΆκ³ μμ
λ΄μ©μ Contextμ μ κΉ μ μ₯ν μνλ‘ Interrupt handlingμ νκ² λλ€.
ν΄λ§
- ν΄λ§μ΄λ CPUκ° κ³μ μ
μΆλ ₯μ λν μνλ₯Ό νμΈνκ³ μ
μΆλ ₯ λͺ
λ Ήμ λ§λλ©΄ μ
μΆλ ₯ μ₯μΉμμ λ°μ΄ν°λ₯Ό κ°μ Έμ€λ λ°©μμ΄λ€.
- μ
μΆλ ₯μ΄ μ²λ¦¬λλ λμ κΈ°λ€λ €μΌ νλλ°(CPUκ° λ²νΌλ₯Ό νμΈ) μκ°μ΄ μ€λ 걸리며 ν¨μ¨μ΄ λ¨μ΄μ§λ€.
DMA
- λ§μ μΈν°λ½νΈλ μ€λ²ν€λλ₯Ό μ΄λν μ μκΈ° λλ¬Έμ μ¦μ μΈν°λ½νΈλ₯Ό λ°©μ§νκΈ° μν΄ DMA(Direct Memory Access)λ₯Ό μ¬μ©νλ€.
- DMA Controllerλ₯Ό ν΅ν΄μ CPUμ λ©λͺ¨λ¦¬ κ°μ λ°μ΄ν°λ₯Ό μ§μ μ μ‘ν μ μλ€.
- CPUμ κ°μ
μμ΄ λ°μ΄ν°λ₯Ό μ μ‘ν μ μμ΄ μμ€ν
μ μ²λ¦¬λμ ν₯μμν¬ μ μλ€. (CPUκ° μ μ‘ X)
λκΈ°μ I/O
ν¨μκ° 2κ° μλ€κ³ κ°μ νκ³ νλμ ν¨μκ° λ€λ₯Έ ν¨μλ₯Ό νΈμΆνκ³ μλ μν©μ΄λ€.
- νμ¬ μμ
μ μμ²μ΄ μ λΆ μλ£νμ¬ μλ΅μ 리ν΄ν νμ λ€μ μμ
μ΄ κ°λ₯νλ€.
- λκΈ°λ μ²λ¦¬λλ μμ
μ μμ²κ³Ό κ²°κ³Όκ° ν μ리μμ μΌμ΄λλ€.
- λκΈ°λ νΈμΆνλ ν¨μκ° νΈμΆλ ν¨μμ μμ
μ΄ μλ£λμλμ§λ₯Ό κ³μ νμΈνλ€. (μμ°¨μ )
λΉλκΈ°μ I/O
λκΈ°μ I/Oμ λμΌν 2κ°μ ν¨μκ° μλ€κ³ κ°μ νλ€.
- λΉλκΈ°λ νΈμΆνλ ν¨μκ° νΈμΆλ ν¨μμ μμ
μλ£ μ¬λΆλ₯Ό νμΈνμ§ μλλ€.
- νΈμΆνλ ν¨μλ ν¨μλ₯Ό νΈμΆν λ, μ½λ°± ν¨μλ₯Ό κ°μ΄ μ λ¬νκ³ μμ
μ΄ μλ£λλ©΄ μ½λ°± ν¨μκ° μ€νλλ€.
- νΈμΆλ ν¨μκ° μν κ²°κ³Όμ μ’
λ£λ₯Ό μ§μ νμΈνκ³ μ²λ¦¬νλ€. (λΉμμ°¨μ )