๐ฅด ์์ ํ๋ก์ธ์ค์ ์์ฑ
- ์๋ก์ด ํ๋ก์ธ์ค๋ fork() system call๋ก ์์ฑ๋๋ค.
- ์๋ก์ด ํ๋ก์ธ์ค๋ ์๋ ํ๋ก์ธ์ค์ ์ฃผ์ ๊ณต๊ฐ์ ๋ณต์ฌ๋ณธ์ผ๋ก ๊ตฌ์ฑ๋๋ค.
- ์ผ๋ถ ์ด์์ฒด์ ์์ ์ ๊ณตํ๋ vfork() system call์ ๋ถ๋ชจ ํ๋ก์ธ์ค๋ฅผ suspend์ํจ๋ค ๋ถ๋ชจ์ ์ฃผ์๊ณต๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ณต์ฌํ์ง ์๊ณ ๊ทธ๋๋ก ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ฃผ์๊ฐ ํ์ํ๋ค.๐คฏ
๐ fork() system call์ ์ฌ์ฉํ์ฌ ์์ ๋ด์ฉ ๊ฒ์ฆ
๐ ๊ฒฐ๊ณผ
๐ ์ค๋ช
- fork()์ ๋ฐํ๊ฐ์ธ pid๋ ๋ถ๋ชจ ํ๋ก์ธ์ค์์ ์์์ PID๊ฐ์ด ๋ณด์ด๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
- fork()์ ๋ฐํ๊ฐ์ธ pid๋ ์์ ํ๋ก์ธ์ค์์ 0์ด ๋ณด์ด๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
- ๋ถ๊ธฐ ์ดํ์๋ ๊ฐ๊ฐ์ด ๋ ๋ฆฝ์ ์ผ๋ก ๊ฐ์์ ๊ธธ์ ๊ฐ๋ ๋ชจ์ต์ ๋ณผ ์ ์๋ค.
๐ฒ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ์์
- CPU์๊ฐ
- ๋ฉ๋ชจ๋ฆฌ
- ํ์ผ
- ์ ์ถ๋ ฅ์ฅ์น
๐ค ์์ ํ๋ก์ธ์ค์ ์์ ์ด์ฉ
์์ ํ๋ก์ธ์ค๋ ์ด์์ฒด์ ์์ ์ง์ ํ์ํ ์์์ ์ป๊ฑฐ๋ ๋ถ๋ชจ ํ๋ก์ธ์ค์ ์์ ์ผ๋ถ๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
์ด๋ ๋ถ๋ชจ ํ๋ก์ธ์ค๋ ์์ ํ๋ก์ธ์ค๊ฐ ์ฌ์ฉํ๋ ์์์ ์ ํํ ์ ์๊ธฐ ๋๋ฌธ์ ์์คํ ์ ๊ณผ๋ถํ ์ํ๋ก ๋ง๋๋ ํ๋ก์ธ์ค๋ฅผ ๋ฐฉ์งํ ์ ์๋ค.