process์ thread
CPU๋ core๋ฅผ ๊ฐ์ง๊ณ ์ฐ์ฐํ๋๋ฐ ๊ทธ ๊ฐ์๋ ๋ง์ด ์กด์ฌํ ์ ์๋ค. ๋, core๋ฅผ ๋ถํ ํด์ ์ฌ์ฉํ๋ ์ด๊ฒ์ด ๋๋ฌด ๋นจ๋ฆฌ ์ผ์ด๋๋๊น ๋์์ ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๊ฒ์ฒ๋ผ ๋ณด์ธ๋ค.
ํ๋ก์ธ์ค

ํ๋ก์ธ์ค๋ ํ๋ก๊ทธ๋จ์ ์คํํ๊ณ OS๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ ค์ ์คํ์ค์ธ ํ๋ก๊ทธ๋จ์ ์๊ธฐํ๋ค.
ํ๋ก๊ทธ๋จ์ ์ปดํจํฐ ๊ด์ ์์ ์ ์ฅ ์ฅ์น๋ง ์ฌ์ฉํ๋ ์๋์ ์ธ ์กด์ฌ์ด์ง๋ง, ํ๋ก์ธ์ค๋ ๋ฉ๋ชจ๋ฆฌ๋ ์ฌ์ฉํ๊ณ OS์ CPU ์ค์ผ์ค๋ง ์๊ณ ๋ฆฌ์ฆ์ ์ํด์ CPU๋ ์ฌ์ฉํ๋ ๋ฅ๋์ ์ธ ์กด์ฌ์ด๋ค.
์ปค๋ ์์๋ User Interface๊ฐ ์กด์ฌํ๋๋ฐ ์ฌ๊ธฐ์ ํ๋ก์ธ์ค๊ฐ ์กด์ฌํ ์ ์๋ค. ํ๋ก์ธ์ค ๋ด๋ถ์ ์ฐ์ฐ์ CPU๊ฐ ๋ด๋นํ๊ณ OS๋ ํ๋ก์ธ์ค๊ฐ ์ ๋์ํ๋๋ก ๊ด๋ฆฌํด์ผ ํ๋ค.
PCB (process control block)
OS๋ ์ฌ๋ฌ ํ๋ก์ธ์ค๋ฅผ ๊ด๋ฆฌํ๊ณ ์คํ์์ผ์ผ ํ๋ค. ํ๋ก์ธ์ค๊ฐ ์์ฑ๋๋ฉด OS๋ ํด๋น ํ๋ก์ธ์ค์ ์ ๋ณด๋ฅผ ๊ฐ์ง "PCB"๋ฅผ ๋ง๋ค๊ณ ์ ์ฅํ๋ค. PCB๋ ์ปค๋์ data ์์ญ์ ์กด์ฌํ๊ณ , CPU๊ฐ ํ๋ก์ธ์ค๋ฅผ ์คํํ ๋ ํ์ํ ์ ๋ณด๋ค์ ๋ณด๊ดํ๋ฉฐ ์ฐ๊ฒฐ๋ฆฌ์คํธ ์๋ฃ๊ตฌ์กฐ์ ์ ์ฅ๋๋ค. ๋ฐ๋ผ์ OS๋ ํ๋ก์ธ์ค๊ฐ ์ข
๋ฃ๋๋ฉด ํด๋น ํ๋ก์ธ์ค๋ PCB ์ฐ๊ฒฐ๋ฆฌ์คํธ์์ ์ ๊ฑฐํ๋ค.
PCB๋ ๋ค์ ๋ด์ฉ๋ค์ ์ ์ฅํ๋ค.
process id
process state
program counter
cpu registers
cpu cheduling information
i/o infromation
... etc
PCB ์์ฑ ์์น์ OS์ ๊ด๊ณ๋ ๋ค์๊ณผ ๊ฐ๋ค.
์ฌ์ฉ์๊ฐ User Interface์์ disk์ ์ ์ฅ๋ ํ๋ก๊ทธ๋จ์ ์คํ์ํจ๋ค. UI -> OS๋ก ํ๋ก๊ทธ๋จ ์คํ ์์ฒญ์ ์ ๋ฌ
OS๋ ๋ฉ๋ชจ๋ฆฌ์ ํ๋ก์ธ์ค๋ฅผ ํ ๋นํ๊ณ PCB๋ฅผ ์์ฑํ๋ค. PCB๋ OS ์ปค๋ data ์์ญ์ ์์ฑ๋๊ณ ram์ ์ฌ์ฉํ๋ค.
๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ, ๋ฉํฐ ํ๋ก์ธ์ฑ, ๋ฉํฐ ํ์คํน
๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ
์ ๋ ํ๋ก๊ทธ๋๋ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์ค์ง ํ๋์ ํ๋ก์ธ์ค๊ฐ ์ฌ๋ผ์จ ๊ฒ์ ์๊ธฐํ๋ค. ๋ฐ๋๋ก ๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฌ ๊ฐ์ ํ๋ก์ธ์ค๊ฐ ์ฌ๋ผ์จ ๊ฒ์ ์๊ธฐ๊ธฐํ๋ค.
๋ฉํฐ ํ๋ก์ธ์ฑ
์ ๋, ๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด์ ์์ ๋ณธ๋ค๋ฉด ๋ฉํฐ ํ๋ก์ธ์ฑ ๊ด์ ์ผ๋ก ๋ณธ๋ค. ์ฌ๋ฌ ๊ฐ์ CPU ์ฝ์ด๊ฐ ๋์์ ์ฌ๋ฌ ํ๋ก์ธ์ค๋ฅผ ์ฒ๋ฆฌํ๋ ๊ฒ์ ์๋งํ๋ฉฐ ๋ณ๋ ฌ๋ก ์์ ์ ์ํํ๊ธฐ ๋๋ฌธ์ ๋น ๋ฅธ ์ฒ๋ฆฌ ์๋๋ฅผ ๋ณด์ฅํ ์ ์๋ค.
์ฌ๊ธฐ์ CPU๊ฐ ์๋ถํ ์ฒ๋ฆฌ๋ก ๊ฐ ํ๋ก์ธ์ค๋ฅผ ์งง์ ์๊ฐ์์ ๊ต๋๋ก ์คํํ๋ค.
๋ฉํฐ ํ์คํน
CPU์์ ๋จ์ผ ๋๋ ์ฌ๋ฌ ํ๋ก์ธ์ค, ์ค๋ ๋์ ์์ ์ ๋์์ ์ฒ๋ฆฌํ๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ฌ๊ธฐ์๋ CPU๊ฐ ํ๋ก์ธ์ค/์ค๋ ๋๋ฅผ ์๋ถํ ์ฒ๋ฆฌํ๊ธฐ ๋๋ฌธ์ ๋์์ ์ํํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ธ๋ค.
๋ฉํฐ ํ๋ก์ธ์ฑ๊ณผ ํ๊ฐ๋ฆฌ๋ฉด ์๋๋ค.
์ค๋ ๋
ํ๋ก์ธ์ค๊ฐ ์์ฑ๋๋ฉด ๊ทธ ์์๋ 1๊ฐ์ ์ค๋ ๋๊ฐ ๋ฐ๋์ ์กด์ฌํ๋ฉฐ ์ฌ๋ฌ ๊ฐ์ ์ค๋ ๋๊ฐ ์กด์ฌํ ์ ์๋ค.
ํ ํ๋ก์ธ์ค ๋ด์ ์ค๋ ๋๋ค์ ๊ทธ ํ๋ก์ธ์ค์ PCB, code, data, heap ์์ญ์ ๊ณต์ ํ์ง๋ง ์คํ์ ์ค๋ ๋๋ง๋ค ํ๋์ฉ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ๊ณต์ ํ์ง ์๋๋ค.
OS๋ ์ค๋ ๋๋ฅผ ๊ตฌ๋ถํ ์ ์๋๋ก ์ค๋ ๋๋ id๊ฐ ์์ผ๋ฉฐ ์์ ์ ์ฒ๋ฆฌํ๋ ๋จ์๊ฐ ๋๋ค.
ํ๋ก์ธ์ค/์ค๋ ๋ ์ฅ๋จ์
ํ๋ก์ธ์ค
์ฅ์ : ์๋ก ๋ ๋ฆฝ์ ์ด๊ธฐ ๋๋ฌธ์ ํ๋์ ํ๋ก์ธ์ค์ ๋ฌธ์ ๊ฐ ์๊ฒจ๋ ๋ค๋ฅธ ํ๋ก์ธ์ค์ ์ํฅ์ ์ฃผ์ง ์๋๋ค. ์์ ์ฑ ์ธก๋ฉด์์๋ ์ค๋ ๋๋ณด๋ค ์ฐ์ํ๊ณ ํ๋ก์ธ์ค ๊ฐ ์์ ๊ณต์ ๋ IPC๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๋ค.
๋จ์ : ๊ฐ ํ๋ก์ธ์ค๋ ๊ณ ์ ํ ์์์ ๊ฐ์ง๋ค. ๋ฐ๋ผ์ IPC๊ฐ ํต์ ์์ ์ค๋ฒํค๋๊ฐ ํฌ๊ณ ์๋๊ฐ ๋๋ฆฌ๋ค.
์ค๋ ๋
์ฅ์ : ํ ํ๋ก์ธ์ค ๋ด์ ๊ณต์ ์์์ ๊ณต์ ํ๊ธฐ ๋๋ฌธ์ ์ค๋ฒํค๋๊ฐ ์๋ค.
๋จ์ : ์ฌ๋ฌ ์ค๋ ๋๋ ํ ํ๋ก์ธ์ค ์์ ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ํ๋ก์ธ์ค์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ๋ชจ๋ ์ค๋ ๋์ ์ํฅ์ ์ค๋ค. ๋, ๋ฉํฐ ์ค๋ ๋ฉ์ด ๋ฑ์ฅํ๋ฉด ๋๊ธฐํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋๋ฐ, ๊ณต์ ํ๊ณ ์๋ ์์์์ ๋์์ฑ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.
Last updated