Last updated
Last updated
νλ‘μΈμ€λ μ€νμ€μ μλ νλ‘κ·Έλ¨μΌλ‘ μ€μΌμ€λ§μ λμμ΄ λλ μμ (task) κ³Ό κ°μ μλ―Έλ‘ μ¬μ©λ©λλ€. νλ‘μΈμ€ λ΄λΆμλ μ΅μ νλμ μ€λ λ (thread) λ₯Ό κ°μ§κ³ μλλ°, μ€μ λ‘λ μ€λ λ λ¨μλ‘ μ€μΌμ€λ§ λ©λλ€. νλλμ€ν¬μ μλ νλ‘κ·Έλ¨μ μ€ννλ©΄, μ€νμ μν΄μ λ©λͺ¨λ¦¬ ν λΉμ΄ μ΄λ£¨μ΄μ§κ³ , ν λΉλ λ©λͺ¨λ¦¬ 곡κ°μΌλ‘ λ°μ΄λ리 μ½λκ° μ¬λΌκ°κ² λλλ° μ΄ μκ°λΆν° νλ‘μΈμ€λΌ λΆλ€Όκ² λ©λλ€.
νλ‘μΈμ€ μλ³λ²νΈ, Process IDentification
CPU κ° λ€μμΌλ‘ μ€νν λͺ λ Ήμ΄ λ©λͺ¨λ¦¬ μ£Όμλ₯Ό κ°λ¦¬ν€λ κ°
νλ‘μΈμ€κ° μ κ·Όν μ μλ μμμ κ²°μ νλ μ 보
컨ν μ€νΈ μ€μμΉμ μν΄ λ§μ§λ§μΌλ‘ μ€νν νλ‘μΈμμ λ μ§μ€ν° λ΄μ©μ κΈ°μ΅ν©λλ€.
νλ‘μΈμ€λΌλ¦¬λ 곡μ νλ λ©λͺ¨λ¦¬ 곡κ°μ΄ μκΈ°μ λ³λμ λ°©λ²μ μ¬μ©ν΄μΌ ν©λλ€.
IPC(Inter-Process Communication), LPC(Local inter-Process Communication)
λ³λλ‘ κ³΅μ λ©λͺ¨λ¦¬λ₯Ό μ€μ ν©λλ€.
New
λ§ μμ±λ μν
Ready
CPU μ μ€νλκΈ° μν΄ λκΈ°νλ μν
Running
ν¬ν¨λ λͺ λ Ήμ΄κ° μ€νλκ³ μλ μν
Waiting
νΉμ μμμ΄λ μ΄λ²€νΈλ₯Ό κΈ°λ€λ¦¬λ μν
Suspended Waiting
λκΈ° μνμμ κΈ°μ΅ μ₯μΉλ₯Ό μμ μν
Suspended Ready
κΈ°μ΅μ₯μΉλ₯Ό μ μΈν λ€λ₯Έ λͺ¨λ νμν μμλ€μ 보μ ν μν
Terminated
μ€νμ μλ£ν μν
FCFS (First Come , First Serve)
λ¨Όμ λμ°©ν νλ‘μΈμ€λ₯Ό λ¨Όμ μ²λ¦¬
SJF (Shorted Job First)
μ΅λ¨μμ μ°μ (CPU λ²μ€νΈ νμμ΄ μ§¦μ)
Priority Scheduling
미리 μ£Όμ΄μ§ μ°μ μμμ λ°λΌμ μ€μΌμ€λ§
Round Robin
μ ν΄μ§ μκ°λμ μμ ν μ€λΉμλ£ ν (μν ν)μ κ°μ₯ λ§μ§λ§μΌλ‘ μ΄λ
Multilevel-Queue (λ€λ¨κ³ ν)
μ€λΉμλ£ νλ₯Ό μ¬λ¬κ°μ νλ‘ λΆλ₯νμ¬ κ° νκ° κ°κ° λ€λ₯Έ μ€μΌμ₯΄λ§ μκ³ λ¦¬μ¦μ κ°μ§λ λ°©μ κ° νλΌλ¦¬μ μ°μ μμ μ€μ λ νμ
Multilevel-Feedback-Queue (λ€λ¨κ³-νΌλλ°± ν)
λ€λ¨κ³ νμμ ν μ¬μ΄μ μ΄λμ νμ©