ComputerScience π/μ΄μ체μ 23 [OS] λ©μΈ λ©λͺ¨λ¦¬(4) - νμ΄μ§ ν μ΄λΈμ ꡬ쑰(Structure of the Page Table) μλ‘ μ΄μ κ²μκΈμμλ TLB(translation look-aside buffer)κ° ν¬ν¨λ νμ΄μ§ μμ€ν μμ λ Όλ¦¬ μ£Όμλ₯Ό 물리 μ£Όμλ‘ λ³ννλ λ°©λ²μ λν΄ μ 리νμμ΅λλ€. μ΄λ² κ²μκΈμμλ νμ΄μ§ ν μ΄λΈμ ꡬμ±νλ κ°μ₯ μΌλ°μ μΈ λ°©λ²μΈ μλ μΈ κ°μ§ λ°©λ²μ λν΄ νλ² μ΄ν΄λ³΄κ² μ΅λλ€. κ³μΈ΅μ νμ΄μ§ ν΄μ νμ΄μ§ ν μ΄λΈ μ νμ΄μ§ ν μ΄λΈ μ΄ μ₯μ λͺ©ν 1. λ Όλ¦¬ μ£Όμμ 물리 μ£Όμμ μ°¨μ΄μ κ³Ό μ£Όμλ₯Ό λ³νν λ MMU(λ©λͺ¨λ¦¬ κ΄λ¦¬ μ₯μΉ)μ μν μ μ λ¦¬ν΄ λ³Έλ€.(μ΄μ κ²μκΈ) 2. λ©λͺ¨λ¦¬λ₯Ό μ°μμ μΌλ‘ ν λΉνκΈ° μν΄ μ΅μ΄, μ΅μ , λ° μ΅μ μ ν© μ λ΅μ μ μ©ν΄ λ³Έλ€.(μ΄μ κ²μκΈ) 3. λ¨νΈνμ λν΄ μμλ³΄κ³ λ¨νΈνμ λ κ°μ§ μ’ λ₯ λ΄λΆ λ° μΈλΆ λ¨νΈνμ μ°¨μ΄μ μ μ λ¦¬ν΄ λ³Έλ€. (μ΄μ κ²μκΈ) 4. μΈλΆ λ¨νΈν .. 2022. 4. 3. [OS] λ©μΈ λ©λͺ¨λ¦¬(3) - TLB(translation look-aside buffers) μλ‘ μ΄μ κ²μκΈμμ νμ΄μ§ κΈ°λ²μ λν΄ μμ보μμ΅λλ€. λ©μΈ λ©λͺ¨λ¦¬μ νμ΄μ§ ν μ΄λΈμ μ μ₯νλ©΄ λ¬Έλ§₯ κ΅ν μλκ° λΉ¨λΌμ§μ§λ§ νμ΄μ§ ν μ΄λΈμ νμΈνκΈ° μν΄ λ©λͺ¨λ¦¬ μ‘μΈμ€λ₯Ό ν¨μΌλ‘μ¨ μκ°μ΄ λ λλ €μ§ μλ μμ΅λλ€. λ©λͺ¨λ¦¬ iμ μ‘μΈμ€ νλ €κ³ νλ€κ³ κ°μ ν΄λ΄ μλ€. λ¨Όμ νμ΄μ§ λ²νΈλ₯Ό κΈ°μ€μΌλ‘ νμ΄μ§ ν μ΄λΈ κΈ°μ€ λ μ§μ€ν°(PTBR) μ€νμ μ κ°μ μ¬μ©νμ¬ νμ΄μ§ ν μ΄λΈμ νλͺ©μ μ°Ύμ΅λλ€. μ΄ μμ μλ ν λ²μ λ©λͺ¨λ¦¬ μ‘μΈμ€κ° νμν©λλ€. μ΄λ κ² μ»μ νλ μ λ²νΈμ νμ΄μ§ μ€νμ μ κ²°ν©νμ¬ μ€μ μ£Όμλ₯Ό μμ±ν©λλ€. κ·Έλ° λ€μ λ©λͺ¨λ¦¬μμ μνλ μμΉμ μ‘μΈμ€ ν μ μμ΅λλ€. μ΄ κΈ°λ²μ μ¬μ©νλ©΄ λ°μ΄ν°μ μ‘μΈμ€ νλ €λ©΄ λ λ²μ λ©λͺ¨λ¦¬ μ‘μΈμ€κ° νμν©λλ€(ν λ²μ νμ΄μ§ ν μ΄λΈ νλͺ©κ³Ό ν λ²μ μ€μ λ°μ΄ν°). λ°.. 2022. 3. 28. [OS] λ©μΈ λ©λͺ¨λ¦¬(2) - νμ΄μ§ κΈ°λ² μλ‘ μ§κΈκΉμ§ λ Όμλ λ©λͺ¨λ¦¬ κ΄λ¦¬λ νλ‘μΈμ€μ 물리 곡κ°μ΄ μ°μμ μ΄μ΄μΌ νμ΅λλ€. μ΄μ νλ‘μΈμ€μ 물리 μ£Όμ 곡κ°μ΄ μ°μλμ§ μμλ λλ λ©λͺ¨λ¦¬ κ΄λ¦¬ κΈ°λ²μΈ νμ΄μ§μ λν΄ μ λ¦¬ν΄ λ³΄κ² μ΅λλ€. νμ΄μ§μ μΈλΆ λ¨νΈν λ¬Έμ λ₯Ό ν΄κ²°ν΄ μ£ΌκΈ° λλ¬Έμ λν μλ²μ© μμ€ν μμ λͺ¨λ°μΌ μ₯μΉμ© μμ€ν μ μ΄λ₯΄κΈ°κΉμ§ λλΆλΆμ μ΄μ체μ μμ λ€μν ννμ νμ΄μ§μ΄ μ¬μ©λ©λλ€. νμ΄μ§μ μ΄μ체μ μ μ»΄ν¨ν° νλμ¨μ΄ κ°μ νλ ₯μ ν΅ν΄ ꡬνλ©λλ€. μ΄ μ₯μ λͺ©ν 1. λ Όλ¦¬ μ£Όμμ 물리 μ£Όμμ μ°¨μ΄μ κ³Ό μ£Όμλ₯Ό λ³νν λ MMU(λ©λͺ¨λ¦¬ κ΄λ¦¬ μ₯μΉ)μ μν μ μ λ¦¬ν΄ λ³Έλ€.(μ΄μ κ²μκΈ) 2. λ©λͺ¨λ¦¬λ₯Ό μ°μμ μΌλ‘ ν λΉνκΈ° μν΄ μ΅μ΄, μ΅μ , λ° μ΅μ μ ν© μ λ΅μ μ μ©ν΄ λ³Έλ€.(μ΄μ κ²μκΈ) 3. λ¨νΈνμ λν΄ μμλ³΄κ³ λ¨νΈνμ λ κ°μ§ μ’ λ₯ .. 2022. 3. 20. [OS] λ©μΈ λ©λͺ¨λ¦¬(1) - 물리, λ Όλ¦¬μ£Όμ λ° μ°μ λ©λͺ¨λ¦¬ ν λΉ λ°°κ²½ λ©μΈ λ©λͺ¨λ¦¬λ νλ μ»΄ν¨ν° μμ€ν μ μ΄μμ μ€μ¬μ μΈ μν μ ν©λλ€. λ©λͺ¨λ¦¬λ κ°κ° μ£Όμκ° ν λΉλ μΌλ ¨μ λ°μ΄νΈλ€λ‘ ꡬμ±λ©λλ€. CPUλ PC(program counter)κ° μ§μνλ λλ‘ λ©λͺ¨λ¦¬λ‘λΆν° λ€μ μνν λͺ λ Ήμ΄λ₯Ό κ°μ Έμ€λλ° κ·Έ λͺ λ Ήμ΄λ νμν κ²½μ° μΆκ°μ μΈ λ°μ΄ν°λ₯Ό λ κ°μ Έμ¬ μ μμΌλ©° λ°λλ‘ λ°μ΄ν°λ₯Ό λ©λͺ¨λ¦¬λ‘ λ΄λ³΄λΌ μλ μμ΅λλ€. μ΄λ² κ²μκΈμμλ λ©λͺ¨λ¦¬λ₯Ό κ΄λ¦¬νλ λ€μν λ°©λ²μ κ΄ν΄ μ λ¦¬ν΄ λ³΄κ² μ΅λλ€. μ΄ μ₯μ λͺ©ν 1. λ Όλ¦¬ μ£Όμμ 물리 μ£Όμμ μ°¨μ΄μ κ³Ό μ£Όμλ₯Ό λ³νν λ MMU(λ©λͺ¨λ¦¬ κ΄λ¦¬ μ₯μΉ)μ μν μ μ λ¦¬ν΄ λ³Έλ€. (νμ¬ κ²μκΈ) 2. λ©λͺ¨λ¦¬λ₯Ό μ°μμ μΌλ‘ ν λΉνκΈ° μν΄ μ΅μ΄, μ΅μ , λ° μ΅μ μ ν© μ λ΅μ μ μ©ν΄ λ³Έλ€. (νμ¬ κ²μκΈ) 3. λ¨νΈνμ λν΄ μμλ³΄κ³ λ¨νΈνμ λ κ°.. 2022. 3. 20. [OS] κ΅μ°© μν(Deadlocks) μλ‘ ν μ€λ λκ° μμμ μμ²νμ λ, κ·Έ μκ°μ κ·Έ μμμ μ΄μ©ν μ μλ μ¬ν©μ΄ λ°μν μ μκ³ , κ·Έλλ μ€λ λκ° λκΈ° μνλ‘ λ€μ΄κ°λλ€. μ΄μ²λΌ λκΈ° μ€μΈ μ€λ λλ€μ΄(κ·Έλ€μ΄ μμ²ν μμλ€μ΄ λ€λ₯Έ μ€λ λλ€μ μν΄μ μ μ λμ΄ μκ³ κ·Έλ€λ λ€ λκΈ° μνμ μκΈ° λλ¬Έμ) κ²°μ½ λ€μλ κ·Έ μνλ₯Ό λ³κ²½μν¬ μ μμΌλ©΄ μ΄λ° μν©μ κ΅μ°© μνλΌ λΆλ¦ λλ€. [OS] μμ¬νλ μ² νμλ€ λ¬Έμ (The Dining-Philosophers Problem) μμ¬νλ μ² νμλ€ λ¬Έμ (_The Dining-Philosophers Problem) μκ°νκ³ λ¨ΉμΌλ©΄μ κ·Έλ€μ μμ λ₯Ό 보λ΄λ 5λͺ μ μ² νμλ₯Ό κ³ λ €ν΄ λ΄ μλ€. μ² νμλ€μ μν ν μ΄λΈμ 곡μ νλ©°, μ΄ ν μ΄λΈμ κ°κ° ν μ² νμμ dkswnkk.tistory.com μ κ²μκΈμ μ.. 2022. 3. 10. [OS] μμ¬νλ μ² νμλ€ λ¬Έμ (The Dining-Philosophers Problem) μμ¬νλ μ² νμλ€ λ¬Έμ (_The Dining-Philosophers Problem) μκ°νκ³ λ¨ΉμΌλ©΄μ κ·Έλ€μ μμ λ₯Ό 보λ΄λ 5λͺ μ μ² νμλ₯Ό κ³ λ €ν΄ λ΄ μλ€. μ² νμλ€μ μν ν μ΄λΈμ 곡μ νλ©°, μ΄ ν μ΄λΈμ κ°κ° ν μ² νμμ μνλ 5κ°μ μμλ‘ λλ¬μΈμ¬ μμ΅λλ€. ν μ΄λΈ μ€μμλ ν μ¬λ°μ λ°₯μ΄ μκ³ , μλμ κ·Έλ¦Όκ³Ό κ°μ΄ ν μ΄λΈμλ λ€μ― κ°μ μ κ°λ½μ΄ λμ¬ μμ΅λλ€. μ² νμκ° μκ°μ ν λλ λ€λ₯Έ λλ£λ€κ³Ό μνΈ μμ©μ νμ§ μμ΅λλ€. λλλ‘ μ² νμλ€μ λ°°κ° κ³ νμ§λλ° κ·Έλ΄ λμλ μμ μκ² κ°μ₯ κ°κΉμ΄ μλ λ κ°μ μ κ°λ½(μΌμͺ½ μ κ°λ½μ λ¨Όμ μ§μ΅λλ€)μ μ§μΌλ €κ³ μλν©λλ€. μ² νμλ ν λ²μ ν κ°μ μ κ°λ½λ§ μ§μ μλ μμΌλ©°, μ΄λ―Έ μ μ¬λμ μμ λ€μ΄κ° μ κ°λ½μ μ§μ μλ μμ΅λλ€. λ°°κ³ ν μ² νμκ° λ.. 2022. 3. 2. [OS] νλ‘μΈμ€ λκΈ°ν(Process Synchronization) μλ‘ νλ ₯μ νλ‘μΈμ€λ μμ€ν λ΄μμ μ€ν μ€μΈ λ€λ₯Έ νλ‘μΈμ€μ μ€νμ μν₯μ μ£Όκ±°λ μν₯μ λ°λ νλ‘μΈμ€μ λλ€. νλ ₯μ νλ‘μΈμ€λ λ Όλ¦¬ μ£Όμ 곡κ°(μ¦, μ½λ λ° λ°μ΄ν°)μ μ§μ 곡μ νκ±°λ 곡μ λ©λͺ¨λ¦¬ λλ λ©μμ§ μ λ¬μ ν΅ν΄μλ§ λ°μ΄ν°λ₯Ό 곡μ ν μ μμ΅λλ€. κ·Έλ¬λ 곡μ λ°μ΄ν°λ₯Ό λμμ μ κ·Όνλ©΄ λ°μ΄ν°μ μΌκ΄μ±μ λ§μΉ μ μμ΅λλ€. μ΄λ² κΈμμλ λ Όλ¦¬ μ£Όμ 곡κ°μ 곡μ νλ νλ ₯μ νλ‘μΈμ€μ νλ ₯μ νλ‘μΈμ€μ μ§μ μλ μ€νμ 보μ₯νμ¬, μ΄λ₯Ό ν΅ν΄ λ°μ΄ν°μ μΌκ΄μ±μ μ μ§νλ λ€μν λ©μ»€λμ¦μ μμλ³΄κ² μ΅λλ€. λ¨Όμ μμ κ°μ μλ₯Ό μ΄ν΄λ΄ μλ€. 곡μ μμμΈ μ μ λ³μ μκΈ 10λ§ μμ΄ μλ€κ³ κ°μ ν©μλ€. νλ‘μΈμ€ P1μ μκΈ 10λ§ μμ νμΈν μν©μμ νλ‘μΈμ€ P2κ° μκΈ 5λ§ μμ μ κΈνμ¬ μ΄ 15λ§ μ.. 2022. 2. 24. [OS] CPU μ€μΌμ€λ§(CPU Scheduling) CPU μ€μΌμ€λ§(CPU Scheduling) CPU μ€μΌμ€λ§μ λ€μ€ νλ‘κ·Έλ¨ μ΄μ체μ μ κΈ°λ³Έμ λλ€. μ΄μ체μ λ CPUλ₯Ό νλ‘μΈμ€ κ°μ κ΅νν¨μΌλ‘μ¨, μ»΄ν¨ν°λ₯Ό λ³΄λ€ μμ°μ μΌλ‘ λ§λλλ€. μ΄λ²μλ κΈ°λ³Έμ μΈ μ€μΌμ€λ§ κ°λ μ μκ°νκ³ μ 리ν΄λ³΄κ² μ΅λλ€. μ½μ΄κ° νλμΈ μμ€ν μμλ νμκ°μ μ€μ§ νλμ νλ‘μΈμ€λ§μ΄ μ€νλ μ μμ΅λλ€. λλ¨Έμ§ νλ‘μΈμ€λ CPUμ μ½μ΄κ° κ°μ© μνκ° λμ΄ λ€μ μ€μΌμ€ λ μ μμ λκΉμ§ κΈ°λ€λ €μΌ ν©λλ€. λ€μ€ νλ‘κ·Έλλ°μ λͺ©μ μ CPU μ΄μ©λ₯ μ μ΅λννκΈ° μν΄ νμ μ€ν μ€μΈ νλ‘μΈμ€λ₯Ό κ°μ§κ² νλ λ° μμ΅λλ€. λ€μ€ νλ‘κ·Έλλ°μ λν κΈ°λ³Έ μμ΄λμ΄λ λΉκ΅μ κ°λ¨ν©λλ€. νλμ νλ‘μΈμ€λ, μ νμ μΈ μ΄λ€ I/O μμ²μ΄ μλ£λκΈ°λ₯Ό κΈ°λ€λ €μΌλ§ ν λκΉμ§ μ€νλ©λλ€. μ΄λ κ² λλ©΄, λ¨μν.. 2022. 2. 20. [OS] μ€λ λ ν(thread pool) μ€λ λ ν [OS] μ€λ λμ λ³νμ±(Thread & Concurrency) μ€λ λμ λ³νμ±(Threads & Concurrency) μ°λ¦¬λ μ΄μ μ μ 리νλ€μνΌ νλ‘μΈμ€ λͺ¨λΈμ ν νλ‘μΈμ€κ° νλμ μ μ΄ μ€λ λλ‘ νλ‘κ·Έλ¨μ μ€ννλ€κ³ κ°μ νμμ΅λλ€. κ·Έλ¬λ κ±°μ λͺ¨λ νλ μ΄μ체μ dkswnkk.tistory.com μ΄μ μΈ μ κΈμμ λ€μ€ μ€λ λλ‘ κ΅¬μ±λ μΉλΈλΌμ°μ λ₯Ό μ€λͺ νμ΅λλ€. κ·Έλ¬ν μΉ μλΉμ€λ μμ²μ λ°μ λλ§λ€ κ·Έ μμ²μ μν μλ‘μ΄ μ€λ λλ₯Ό λ§λ€μ΄ μ€λλ€. μλ‘μ΄ μ€λ λλ₯Ό 맀 μμ²λ§λ€ λ§λ€μ΄ μ£Όλ κ²μ, κ·Έλλ§λ€ μλ‘μ΄ νλ‘μΈμ€λ₯Ό λ§λ€μ΄μ£Όλ κ²λ³΄λ€λ νμ€ν λ μ§λ³΄λ λ°©λ²μμ νλ¦Όμμ§λ§, λ€μ€ μ€λ λ μλ²λ μμ§λ μ¬λ¬ λ¬Έμ λ₯Ό κ°μ§κ³ μμ΅λλ€. 첫 λ²μ§Έ λ¬Έμ λ μλΉμ€ν λλ§λ€ μ€λ λλ₯Ό μμ±νλ .. 2022. 2. 14. μ΄μ 1 2 3 λ€μ