β‘ νλ‘κ·Έλ¨(Program): μ μ₯μμ μ‘΄μ¬νλ μ½λμ λμΉλ‘ μ€νμνκ° μλ, μ€ννκΈ° μ μ μ μ₯μμ μ μ₯λ μ½λμ΄λ€.
β‘ νλ‘μΈμ€(Process): μ μ₯μμ μ‘΄μ¬νλ νλ‘κ·Έλ¨μ΄ μ€νλμ΄ CPUκ° μ²λ¦¬ν μ μκ² λ©μΈ λ©λͺ¨λ¦¬μ μ¬λΌμ¨ μνμ΄λ€.
β‘ μ€λ λ(Thread): νλ‘μΈμ€ μμ μλ μμ μ€νλ¨μλ₯Ό μλ―Έμ΄λ€. μλλ₯Ό μ¬μ©νλ κ²½μ°λ‘ μλ₯Ό λ€μ΄λ³΄μ. μλμμ κΈμλ₯Ό μ λ ₯νλ λμ μλμΌλ‘ λ§μΆ€λ² κ²μ¬λ₯Ό μν λ° νμΌμ μ£ΌκΈ°μ μΌλ‘ μ μ₯νλ€. μ΄ μμ λ€μ κ°κ°μ μ€λ λμ μν΄μ μ΄λ£¨μ΄μ§λ€. μ¦, μλλΌλ ν° νλ‘μΈμ€ νλμ μ¬λ¬ κ°μ μ€λ λκ° λͺ¨μ¬μλ κ²μ΄λ€.
λ©ν°νμ€νΉ(Multi-tasking)
β· νμ€ν¬(Task)λ μ΄μ체μ μμ μ²λ¦¬νλ μμ λ¨μλ₯Ό μλ―Ένλλ°, κ·Έ μ¬λ¬ μμ λ¨μκ° λΉ λ₯΄κ² μ²λ¦¬λμ΄ λμμ μ²λ¦¬λλ κ²μ²λΌ 보μ΄λ κ²μ μλ―Ένλ€.
β· λ³λ ¬ μ°μ°μ΄ μ΄λ£¨μ΄μ§λ κ²μ²λΌ 보μ΄κ² νκΈ° μν΄ μ€μΌμ€λ§ λ°©μμ μ΄μ©νλ€.
λ©ν°νλ‘μΈμ±(Multi-processing)
β· νλμ μ»΄ν¨ν°μ μ₯μ°©λ μ¬λ¬κ°μ CPUλ CPU μμ λ©ν°μ½μ΄λ₯Ό ν΅ν΄ νλ μ΄μμ νλ‘μΈμ€λ€μ λμμ μ²λ¦¬νλ κ²μ μλ―Ένλ€.
β· λ λμ λ²μλ‘ ν΄μνλ©΄, νλ λλ κ·Έ μ΄μμ νλ‘μΈμ€λ₯Ό μ¬λ¬ μ₯μΉμμ λ³λ ¬λ‘ μ²λ¦¬νλ κ²μ μλ―Ένλ€.
λ©ν°μ€λ λ©(Multi-threading)
β· νλ‘μΈμ€ λ΄μμ μ¬λ¬κ°μ μ€λ λλ₯Ό νμ±νμ¬ λͺ λ Ήμ΄λ€μ μ²λ¦¬νλ κ²μ μλ―Ένλ€.
β· μ΄λ€ μ€λ λκ° λ¨Όμ μ€νλ μ§ μμλ₯Ό μ μ μλ€λ λ¨μ μ΄ μλ€.
Reference:
"[OS} λ©ν°νλ‘κ·Έλλ°, λ©ν°νλ‘μΈμ±, λ©ν°μ€λ λ©, λ©ν°νμ€νΉμ κ°λ΅ν μ°¨μ΄μ μ€λͺ ," Taewoo Lee, https://twpower.github.io/127-multi-processing-threading-programming.
'Programming > Etc.' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
μ»΄νμΌλ¬(Compiler)μ μΈν°ν리ν°(Interpreter) (0) | 2020.08.08 |
---|