๋ธ๋ญ / ๋ ผ๋ธ๋ญ
ํจ์ ํธ์ถ์ ๋ํ ์ด์ผ๊ธฐ
๊ธฐ์ ์ ์ผ๋ก ๋ช ํํ ๊ตฌ๋ถ๋๋ค.
๋ธ๋ก
- ํจ์ A๋ฅผ ํธ์ถํ์ ๋, ํจ์ A์ ์ํ์ด ๋ชจ๋ ๋๋ ๋ ๊น์ง ๊ธฐ๋ค๋ฆฐ๋ค(๋ธ๋ก).
- ํจ์A์ ์ํ์ด ๋ชจ๋ ๋๋๊ณ ๋ฆฌํด๋๋ฉด, ํจ์A๋ฅผ ํธ์ถํ ๋ถ๋ถ์ ๋ค์ ๋ถ๋ถ๋ถํฐ ์ด์ด์ ์คํํ๋ค.
๋ ผ๋ธ๋ก
- ํจ์A๋ฅผ ํธ์ถํ์ ๋, ํจ์A์ ์คํ์ ์์ฒญํ๊ณ ๋ฐ๋ก ๋ฆฌํด๋๋ค(๋ ผ๋ธ๋ก).
๋๊ธฐ / ๋น๋๊ธฐ
ํ์์ ๋ํ ์ด์ผ๊ธฐ์ด๋ค.
๊ธฐ์ ์ ์ผ๋ก ๊ตฌ๋ถ๋์ง ์๋๋ค. ์ถ์์ ์ธ ๊ตฌ๋ถ์ด๋ค.
์์ A์ ์์ B๊ฐ ์๋ค๊ณ ํ์.
๋๊ธฐ
- ์์ A๊ฐ ๋จผ์ ๋ชจ๋ ์ฒ๋ฆฌ๋๊ณ ๋์ ์์ B๊ฐ ์ฒ๋ฆฌ๋๊ธฐ ์์ํ๋ฉด(ํ๋์ฉ ์์ฐจ์ ์ผ๋ก ์ฒ๋ฆฌ๋๋ฉด) ๋๊ธฐ์ด๋ค.
- ์์
A๊ฐ ์์
B๋ฅผ ๊ด์ฐฐํ๋ ์์
์ด๋ผ๋ฉด, ์์
A์ ์์
B๊ฐ ๋์์ ์ฒ๋ฆฌ๋๋๋ผ๋ ๋๊ธฐ์ด๋ค. (์ฌ๊ธฐ์ ์์
A์ ์์
B๋ฅผ ์๋ก ๋ฐ๊พธ์ด ์๊ฐํด๋ ๋๊ฐ๋ค.)
'๊ด์ฐฐ'์ด๋ผ๋ ๋ง ์์ฒด๊ฐ ์ ํํ ๊ธฐ์ ์ ์ผ๋ก ๊ตฌ๋ถ๋๋ ๊ฒ์ด ์๋๊ธฐ ๋๋ฌธ์ ์ถ์์ ์ด๋ผ๊ณ ํํํ๋ค.
๋น๋๊ธฐ
- ์์ A์ ์์ B๊ฐ ๋์์ ์ฒ๋ฆฌ๋๋ฉด ๋น๋๊ธฐ์ด๋ค.
- ์์
A์ ์์
B๋ ์ธ๊ณผ๊ด๊ณ๊ฐ ์์ด์ผ ํ๋ค.
์์ A์ ์์ B๊ฐ ์ธ๊ณผ๊ด๊ณ๊ฐ ์์ผ๋ฉด, ๋์์ ์ฒ๋ฆฌ๋๋๋ผ๋ ๋น๋๊ธฐ๋ผ๊ณ ๋ณผ ์ ์๋ค.
์์
์น๊ตฌ๋ฅผ ๋ถ๋ฅผ ๋(listen)
- ์นดํก์ ํ๋ฒ๋ง ๋ณด๋(block)
- ์ฌ๋๊น์ง ์นดํก ๊ณ์๋ณด๋(non-block)
- ์น๊ตฌ(data)๊ฐ ๋์ฐฉํ๋๊น ๋ถ๋ฅธ์ ๊ฐ ๋ง์ดํด์ค(sync) ๋๊ธฐ - ๋๋ง ์ผํด์ผ ํจ
- ์น๊ตฌ(data)๊ฐ ๋์ฐฉํ๋๊น ๋ค๋ฅธ์ ๊ฐ ๋ง์ดํด์ค(async) ๋น๋๊ธฐ - ๋ค๋ฅธ์ ๊ฐ ๊ฐ๋ฅํ๋ค๋ฉด ๊ฑ๊ฐ ์ผํด๋ ๋จ
์๋ ๋ธ๋ก๊ทธ์์ ์ฐ์ฒด๊ตญ ์์๋ฅผ ๋ณด๋ ๊ฒ๋ ์ข๋ค..
๊ฒฐ๋ก
์ ์ ๋ต์ด ์๋ค๊ณ ํ๋ค.
1. ๊ตฌ๋ถํ์ง ์๋๋ค.
๋ธ๋กํน/๋๊ธฐ๋ ๊ฐ์ด ๋งํ๋ฉฐ, ๋
ผ๋ธ๋กํน/๋น๋๊ธฐ๋ ํจ๊ป ๋ฌถ์ด ๋งํ๋ค.
์ ์ด์ ๊ตฌ๋ถํ ํ์๊ฐ ์๋ค.
2. ๊ตณ์ด ๊ตฌ๋ถํ ๊ฒฝ์ฐ
๋ธ๋กํน/๋ ผ๋ธ๋กํน์ ๋์์ฑ๊ณผ๋ ๋ฌด๊ดํ ์ด์ผ๊ธฐ์ด๋ค. ๋จ์ง ๋ฉ์๋ ํธ์ถ ํ ํ๋ก ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๋ฉด ๋ธ๋กํน์ด๋ค. ์ฆ ๋ฉ์๋๊ฐ ์ผ๋ง๋ ์ค๋ ๊ฑธ๋ฆฌ๋์ ๋ฌธ์ ๋ก ๋ธ๋กํน๊ณผ ๋ ผ๋ธ๋กํน์ ๊ท๊ฒฐ๋๋ค.
๋๊ธฐ/๋น๋๊ธฐ๋ ๋์์ฑ์ ๊ดํ ์ด์ผ๊ธฐ์ด๋ค. ์ฆ ์ค๋ ๋ ํน์ ํ๋ก์ธ์ค๊ฐ ๋ถ๋ฆฌ๋์ ์งํ๋๋ฉด ๋น๋๊ธฐ์ด๋ค.
์ฐธ๊ณ
'๐CS > OS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[OS] CPU ์ค์ผ์ค๋ง (0) | 2021.08.11 |
---|---|
[OS] ์ค์ผ์ค๋ฌ์ ์ข ๋ฅ: ์ฅ๊ธฐ, ์ค๊ธฐ, ๋จ๊ธฐ ์ค์ผ์ค๋ฌ (0) | 2021.08.04 |
[OS] ์ํธ๋ฐฐ์ ๋ฐฉ๋ฒ : ๋ฎคํ ์ค, ์ธ๋งํฌ์ด, ๋ชจ๋ํฐ (0) | 2021.05.02 |
[OS] ํ๋ก์ธ์ค ๊ฐ ํต์ ๋ฐฉ๋ฒ(Inter Process Communication, IPC) (1) | 2021.05.02 |
[OS] ์ค๋ ๋ (0) | 2021.04.04 |
๋๊ธ