์คํฐ๋44 [์ด์์ฒด์ ์ ์ ๋ณด๊ธฐ์ ์ ์๋ฆฌ] 5์ฅ ํ๋ก์ธ์ค ๊ด๋ฆฌ 1. ํ๋ก์ธ์ค ๊ด๋ฆฌ ํ๋ก์ธ์ค(process)๋ ์คํ ์ค์ธ ํ๋ก๊ทธ๋จ(program in execution)์ ๋งํ๋ค. ํ๋ก์ธ์ค์ ๋ฌธ๋งฅ(context)์ด๋ ํ๋ก์ธ์ค๊ฐ ํ์ฌ ์ด๋ค ์ํ์์ ์ํ๋๊ณ ์๋์ง ์ ํํ ๊ท๋ช ํ๊ธฐ ์ํด ํ์ํ ์ ๋ณด๋ฅผ ์๋ฏธํ๋ค. ํ๋์จ์ด ๋ฌธ๋งฅ : CPU์ ์ํ ์ํ๋ฅผ ๋ํ๋. ํ๋ก๊ทธ๋จ ์นด์ดํฐ๊ฐ๊ณผ ๊ฐ์ข ๋ ์ง์คํฐ์ ์ ์ฅํ๊ณ ์๋ ๊ฐ์ ๋งํ๋ค. ํ๋ก์ธ์ค์ ์ฃผ์ ๊ณต๊ฐ(์ฝ๋, ๋ฐ์ดํฐ, ์คํ) ์ปค๋์์ ๋ฌธ๋งฅ : PCB์ ์ปค๋์คํ 2. ํ๋ก์ธ์ค์ ์ํ ํ๋ก์ธ์ค์ ์ํ 3๊ฐ์ง ์คํ(running) : ํ๋ก์ธ์ค๊ฐ CPU๋ฅผ ๋ณด์ ํ๊ณ ๊ธฐ๊ณ์ด ๋ช ๋ น์ ์คํํ๊ณ ์๋ ์ํ ์ค๋น(ready) : ํ๋ก์ธ์ค๊ฐ CPU๋ง ๋ณด์ ํ๋ฉด ๋น์ฅ ๋ช ๋ น์ ์คํํ ์ ์์ง๋ง CPU๋ฅผ ํ ๋น๋ฐ์ง ๋ชปํ ์ํ ๋ด์(blocked, wait, .. 2023. 3. 10. [์ปดํจํฐ ๋คํธ์ํน ํํฅ์ ์ ๊ทผ] 5. ๋คํธ์ํฌ ๊ณ์ธต: ์ ์ด ํ๋ฉด ์ ์ด ํ๋ฉด(control plane) : ๋คํธ์ํฌ ์ ์ฒด๋ฅผ ์์ฐ๋ฅด๋ ๊ตฌ์ฑ์์๋ก์, ๋ฐ์ดํฐ๊ทธ๋จ์ด ์ถ๋ฐ์ง ํธ์คํธ๋ถํฐ ๋ชฉ์ ์ง ํธ์คํธ๊น์ง์ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ ์ด๋ป๊ฒ ์ ๋ฌ๋์ด์ผ ํ๋์ง, ๊ทธ๋ฆฌ๊ณ ๋คํธ์ํฌ ๊ณ์ธต ๊ตฌ์ฑ์์์ ์๋น์ค๋ฅผ ์ด๋ป๊ฒ ์ค์ ํ๊ณ ๊ด๋ฆฌํ ์ง๋ฅผ ์ ์ดํ๋ค. ๋ผ์ฐํ ์๊ณ ๋ฆฌ์ฆ ์ก์ ์๋ถํฐ ์์ ์๊น์ง ๋ผ์ฐํฐ์ ๋คํธ์ํฌ๋ฅผ ํต๊ณผํ๋ ์ข์ ๊ฒฝ๋ก๋ฅผ ๊ฒฐ์ ํ๋ ๊ฒ์ด ๋ชฉํ์ด๋ค. ์ค์ ์ง์คํ ๋ผ์ฐํ ์๊ณ ๋ฆฌ์ฆ(centralized routing algorithm) ๋คํธ์ํฌ ์ ์ฒด์ ๋ํ ์์ ํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์ถ๋ฐ์ง์ ๋ชฉ์ ์ง ์ฌ์ด์ ์ต์ ๋น์ฉ ๊ฒฝ๋ก๋ฅผ ๊ณ์ฐํ๋ค. ๋ชจ๋ ๋ ธ๋๋ ๋คํธ์ํฌ ํ ํด๋ก์ง(topology)์ ๋งํฌ ๋น์ฉ์ ์๊ณ ์๋ค. ์ ์ฒด ์ํ ์ ๋ณด๋ฅผ ๊ฐ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋งํฌ ์ํ(link-state, LS) ์๊ณ ๋ฆฌ์ฆ์ด๋ผ๊ณ ํ๋ค. ๋ค์ต์คํธ๋ผ .. 2023. 3. 4. [์ด์์ฒด์ ์ ์ ๋ณด๊ธฐ์ ์ ์๋ฆฌ] 4์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์กฐ์ ์คํ 1. ํ๋ก๊ทธ๋จ์ ๊ตฌ์กฐ์ ์ธํฐ๋ฝํธ ํ๋ก๊ทธ๋จ์ด CPU์์ ๋ช ๋ น์ ์ํํ๋ ค๋ฉด ํด๋น ๋ช ๋ น์ ๋ด์ ํ๋ก๊ทธ๋จ์ ์ฃผ์ ์์ญ์ด ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ ์์ด์ผ ํ๋ค. ํ๋ก๊ทธ๋จ ์ฃผ์ ์์ญ ์ฝ๋(code) : ์์ฑํ ํ๋ก๊ทธ๋จ ํจ์๋ค์ ์ฝ๋๊ฐ CPU์์ ์ํํ ์ ์๋ ๊ธฐ๊ณ์ด ๋ช ๋ น ํํ๋ก ๋ณํ๋์ด ์ ์ฅ๋จ ๋ฐ์ดํฐ(data) : ์ ์ญ ๋ณ์ ๋ฑ ํ๋ก๊ทธ๋จ์ด ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ถ๋ถ ์คํ(stack) : ํจ์๊ฐ ํธ์ถ๋ ๋ ํธ์ถ๋ ํจ์์ ์ํ์ ๋ง์น๊ณ ๋ณต๊ทํ ์ฃผ์ ๋ฐ ๋ฐ์ดํฐ๋ฅผ ์์๋ก ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋จ ์ธํฐ๋ฝํธ๋ก ์ธํด CPU๋ฅผ ๋นผ์๊ธด ์์น๋ ์ด์์ฒด์ ๊ฐ ๊ด๋ฆฌํ๋ ํ๋ก์ธ์ค ์ ์ด๋ธ๋ก์ ์ ์ฅ๋๋ค. ํ๋ก์ธ์ค ์ ์ด๋ธ๋ก(PCB) : ์ธํฐ๋ฝํธ๊ฐ ๋ฐ์ํ ์์ ์์ ๊ทธ ํ๋ก๊ทธ๋จ์ ์ด๋ ๋ถ๋ถ๊น์ง ์ํํ๋์ง๋ฅผ ์ ์ฅํ๊ณ , ์ธํฐ๋ฝํธ ์ฒ๋ฆฌ ํ ํ๋ก์ธ์ค ์ ์ด๋ธ๋ก์ .. 2023. 3. 3. [์ด์์ฒด์ ์ ์ ๋ณด๊ธฐ์ ์ ์๋ฆฌ] 3์ฅ ์ปดํจํฐ ์์คํ ์ ๋์ ์๋ฆฌ 1. ์ปดํจํฐ ์์คํ ์ ๊ตฌ์กฐ ์ปดํจํฐ ๋ด๋ถ์ฅ์น : CPU, ๋ฉ๋ชจ๋ฆฌ ์ปดํจํฐ ์ธ๋ถ์ฅ์น : ๋์คํฌ, ํค๋ณด๋, ๋ง์ฐ์ค, ๋ชจ๋ํฐ, ๋คํธ์ํฌ ์ฅ์น ๋ฑ -> ์ ์ถ๋ ฅ(input-output: I/O)๋ผ๊ณ ๋ ํจ ์ปดํจํฐ๋ ์ธ๋ถ์ฅ์น์์ ๋ด๋ถ์ฅ์น๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์(input) ๊ฐ์ข ์ฐ์ฐ์ ์ํ ํ, ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ธ๋ถ์ฅ์น๋ก ๋ค์ ๋ด๋ณด๋ด๋(output) ๋ฐฉ์์ผ๋ก ์ ๋ฌด๋ฅผ ์ฒ๋ฆฌํ๋ค. 2. CPU ์ฐ์ฐ๊ณผ I/O ์ฐ์ฐ ์ ์ถ๋ ฅ ์ปจํธ๋กค๋ฌ : ์ ์ถ๋ ฅ ์ฅ์น๋ค์ I/O ์ฐ์ฐ ๋ด๋น ๋ฉ์ธ CPU : ์ปดํจํฐ ๋ด์์ ์ํ๋๋ ์ฐ์ฐ ๋ด๋น ์ ์ถ๋ ฅ ์ฅ์น์ ๋ฉ์ธ CPU๋ ๋์ ์ํ์ด ๊ฐ๋ฅํ๋ค. ๋ก์ปฌ๋ฒํผ : ๋ค์ด์ค๊ณ ๋๊ฐ๋ ๋ฐ์ดํฐ๋ฅผ ์์๋ก ์ ์ฅํ๊ธฐ ์ํด ์ปจํธ๋กค๋ฌ๊ฐ ๊ฐ์ง๊ณ ์๋ ์์ ๋ฉ๋ชจ๋ฆฌ ์ธํฐ๋ฝํธ : ์ปจํธ๋กค๋ฌ๋ค์ด CPU์ ์๋น์ค๊ฐ ํ์ํ ๋ ์ด๋ฅผ ํต๋ณดํ๋ ๋ฐฉ๋ฒ ์ฐ์ฐ.. 2023. 2. 24. [์ปดํจํฐ ๋คํธ์ํน ํํฅ์ ์ ๊ทผ] 4. ๋คํธ์ํฌ ๊ณ์ธต: ๋ฐ์ดํฐ ํ๋ฉด ๋ฐ์ดํฐ ํ๋ฉด(data plane): ๋ผ์ฐํฐ๋ณ ์ ์ด (per-router), ํ ๋ผ์ฐํฐ์ ์ ๋ ฅ ๋งํฌ์ ๋์ฐฉํ ๋ฐ์ดํฐ๊ทธ๋จ์ด ๋ค๋ฅธ ํ ๋ชฉ์ ๋ผ์ฐํฐ์ ์ถ๋ ฅ ๋งํฌ์ ์ด๋ป๊ฒ ๋์ฐฉํ๋์ง๋ฅผ ๊ฒฐ์ ํ๋ค. ์ ์ด ํ๋ฉด(control plane): ๋คํธ์ํฌ ์ ๋ฐ์ ๋ ผ๋ฆฌ, ๋ฐ์ดํฐ๊ทธ๋จ์ด ์ก์ ํธ์คํธ์์ ์์ ํธ์คํธ๊น์ง์ ๋ผ์ฐํฐ๋ค์ ์ด๋ป๊ฒ ์ง๋๊ฐ ๊ฒ์ธ์ง๋ฅผ ๊ฒฐ์ ํ๋ค. ๋คํธ์ํฌ ๊ณ์ธต ๊ฐ์ ํฌ์๋ฉ: ํจํท์ด ๋ผ์ฐํฐ์ ์ ๋ ฅ ๋งํฌ์ ๋๋ฌํ์ ๋ ๋ผ์ฐํฐ๋ ๊ทธ ํจํท์ ์ ์ ํ ์ถ๋ ฅ ๋งํฌ๋ก ์ด๋์ํจ๋ค. ๋งค์ฐ ์งง์ ์๊ฐ(๋๋ ธ์ด) ๋จ์๋ฅผ ๊ฐ์ผ๋ฉฐ, ํ๋์จ์ด์์ ์คํ๋๋ค. ๋ผ์ฐํ : ์ก์ ์๊ฐ ์์ ์์๊ฒ ํจํท์ ์ ์กํ ๋ ๋คํธ์ํฌ ๊ณ์ธต์ ํจํท ๊ฒฝ๋ก๋ฅผ ๊ฒฐ์ ํด์ผ ํ๋ค. (๋ผ์ฐํ ์๊ณ ๋ฆฌ์ฆ) ๋ ๊ธด ์๊ฐ(์ด) ๋จ์๋ฅผ ๊ฐ์ผ๋ฉฐ, ๋ณดํต ์ํํธ์จ์ด์์ ์คํ๋๋ค. ๋ผ์ฐํฐ ์ ๋ ฅ.. 2023. 2. 18. [์ด์์ฒด์ ์ ์ ๋ณด๊ธฐ์ ์ ์๋ฆฌ] 2์ฅ ์ด์์ฒด์ ๊ฐ์ ์ด์์ฒด์ ๋? ์ปดํจํฐ ํ๋์จ์ด ๋ฐ๋ก ์๋จ์ ์ค์น๋๋ ์ํํธ์จ์ด์ด๋ฉฐ, ์ฌ์ฉ์ ๋ฐ ๋ค๋ฅธ ๋ชจ๋ ์ํํธ์จ์ด์ ํ๋์จ์ด๋ฅผ ์ฐ๊ฒฐํ๋ ์ํํธ์จ์ด์ด๋ค. ์ปค๋์ด๋? ๋ฉ๋ชจ๋ฆฌ์ ์์ฃผํ๋ ์ด์์ฒด์ ์ ๋ถ๋ถ์ ๋งํ๋ค. ์ด์์ฒด์ ์ 2๊ฐ์ง ์ฃผ์ ๊ธฐ๋ฅ ์ปดํจํฐ ์์คํ ๋ด์ ์์(resource)์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ๊ฒ ์ปดํจํฐ ์์คํ ์ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํ๋ ๊ฒ ์ด์์ฒด์ ์ ๋ถ๋ฅ ๋์ ์์ ์ฌ๋ถ์ ๋ฐ๋ผ ๋จ์ผ์์ (single tasking) ๋ค์ค์์ (multi tasking) : ์ด์์ฒด์ ๊ฐ ๋ค์ค์์ ์ ์ฒ๋ฆฌํ ๋์๋ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์ด CPU์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ณต์ ํ๋ค. ์์ ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ ๋ฐ๋ผ ์ผ๊ด์ฒ๋ฆฌ(batch processing) : ์์ฒญ๋ ์์ ์ ์ผ์ ๋์ฉ ๋ชจ์์ ํ๊บผ๋ฒ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ด๋ฉฐ, ๋ชจ๋ ์์ ์ด ์์ ํ ์ข ๋ฃ๋ ํ์ ๊ฒฐ.. 2023. 2. 18. ์ด์ 1 2 3 4 5 6 7 8 ๋ค์