๋ชฉ์ฐจ
์ด์์ฒด์ ๋?
์ปดํจํฐ ํ๋์จ์ด์ ๊ฐ์ข ์ํํธ์จ์ด(ํฌํ ์ต, ํฌ๋กฌ, ๋ฉ๋ชจ์ฅ... ๋ฑ)๋ฅผ ์ฐ๊ฒฐํ๋ "์ํํธ์จ์ด(์ด์์ฒด์ )"
์ปดํจํฐ ์์คํ ์ ์์(CPU, Memory ๋ฑ)์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋๋ฐ์ ๋ชฉ์ ์ด ์๋ค.
์ปดํจํฐ์ ์ ์์ ์ผ๋ฉด ๋ถํ ์ด ์ผ์ด๋๋ค.
๋ถํ ์ ๋ค์๋งํด ์ด์์ฒด์ ๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ์ ์คํ๋๋ค๋ ๊ฒ์ด๋ค.
์ด์์ฒด์ ๋ ์ปดํจํฐ์ ์ ์์ด ๊บผ์ง๋๊น์ง ๋ฉ๋ชจ๋ฆฌ์์ ์คํ๋๋ ํ๋ก๊ทธ๋จ์ด๋ค.
์ข์์๋ฏธ์ ์ด์์ฒด์ (= ์ปค๋) : ์ด์์ฒด์ ์ ํต์ฌ ๋ถ๋ถ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์ ์์ฃผํ๋ ๋ถ๋ถ
๋์์๋ฏธ์ ์ด์์ฒด์ : ์ปค๋ ๋ฟ ์๋๋ผ ๊ฐ์ข ์ฃผ๋ณ ์์คํ ์ ํธ๋ฆฌํฐ(ex. ํ์ผ๋ณต์ฌ, ์ญ์ ...๋ฑ)๋ฅผ ํฌํจํ ๊ฐ๋
์ด์์ฒด์ ์ ๋ถ๋ฅ
๋์ ์์ ๊ฐ๋ฅ ์ฌ๋ถ
- ๋จ์ผ ์์ (single tasking) : ํ๋ฒ์ ํ๋์ ์์ ๋ง ์ฒ๋ฆฌ. (ex. dos)
- ๋ค์ค ์์ (multi tasking ) : ๋์์ ๋๊ฐ ์ด์ ์์ ์ฒ๋ฆฌ (ex. unix, windows)
์ฌ์ฉ์์ ์
- ๋จ์ผ ์ฌ์ฉ์(single user) (ex. dos, windows)
- ๋ค์ค ์ฌ์ฉ์(multi user) (ex. unix, nt server)
์ฒ๋ฆฌ๋ฐฉ์
์ผ๊ด ์ฒ๋ฆฌ(batch processing)
- ์ผ์ ๋์ ์์ ์ ๋ชจ์ ํ๋ฒ์ ์ฒ๋ฆฌํ๋ค.
- ์์ ์ด ์์ ์ข ๊ต๋ ๋๊น์ง ๊ธฐ๋ค๋ ค์ผํ๋ค.
์๋ถํ (time sharing)
- ์ฌ๋ฌ ์์ ์ ์ํํ ๋, ์ปดํจํฐ ์ฒ๋ฆฌ ๋ฅ๋ ฅ์ ์ผ์ ํ ์๊ฐ ๋จ์๋ก ๋ถํ ํ์ฌ ์ฌ์ฉํจ
- ์ผ๊ด ์ฒ๋ฆฌ ์์คํ ์ ๋นํด ์งง์ ์๋ต ์๊ฐ์ ๊ฐ์ง๋ค.
์ค์๊ฐ(Realtime OS)
- ์ ํด์ง ์๊ฐ ์์ ์ด๋ค ์ผ์ด ๋ฐ๋์ ์ข ๋ฃ๋จ์ด ๋ณด์ฅ๋์ด์ผํ๋ค.
(ex. ์์๋ก, ๋ฏธ์ฌ์ผ, ๋ฐ๋์ฒด ์ฅ๋น ๋ฑ..)
์ปดํจํฐ ์์คํ ์ ๊ตฌ์กฐ
์ปดํจํฐ ๋ด๋ถ : CPU, ๋ฉ๋ชจ๋ฆฌ
์ปดํจํฐ ์ธ๋ถ(์ ์ถ๋ ฅ ๋๋ฐ์ด์ค) : ํ๋๋์คํฌ, ํค๋ณด๋, ๋ง์ฐ์ค, ํ๋ฆฐํฐ, ๋ชจ๋ํฐ
์ด์์ฒด์ ์ ๊ธฐ๋ฅ
์ด๋ค ํ๋ก๊ทธ๋จ์๊ฒ CPU์ฌ์ฉ๊ถ์ ์ค๊น? CPU ์ค์ผ์ค๋ง
ํ์ ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ด๋ป๊ฒ ์ชผ๊ฐ์ด ์ฐ์ง? ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ
๋์คํฌ์ ๋ค์ด์จ ์์ฒญ์ ์์๋๋ก ์ฒ๋ฆฌํ ๊น? ๋์คํฌ ์ค์ผ์ค๋ง
๋น ๋ฅธ CPU์ ๋๋ฆฐ I/O ์ฅ์น๊ฐ ์๋์ฐจ๋ฅผ ์ด๋ป๊ฒ ๊ทน๋ณตํ์ง? ์ธํฐ๋ฝํธ, ์บ์ฑ
ํ๋ก์ธ์ค์ ์ํ
CPU๋ 1๊ฐ๋ฐ์ ์๊ธฐ๋๋ฌธ์ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ๋ค์ด ์๊ฐ์ ์ชผ๊ฐ์ด CPU๋ฅผ ์ฌ์ฉํด์ผํ๋ค.
CPU๋ฅผ ์ฌ์ฉํ๊ธฐ์ํด ํ๋ก๊ทธ๋จ๋ค์ ์ค์ธ์ ๋์ ๋๊ธฐ์ด์ด CPUํ์ด๋ค.
ํ๋ก๊ทธ๋จ A๋ CPUํ์ ์๋ค๊ฐ CPU๋ฅผ ๋ง๋๊ฒ๋๊ณ , ํ๋๋์คํฌ์ ๋ด์ฉ์ ๊ฐ์ ธ์ค๋ ์์ ์ ํ๋ คํ๋ค
ํ์ง๋ง ํ๋๋์คํฌ์ ์์ ์๋๋ CPU์ ๋นํด ๋๋ฌด ๋๋ฆฌ๊ธฐ์ ๋ฐ๋ก ๋์คํฌ ์ ์ถ๋ ฅ ํ๋ก ํ๋ก๊ทธ๋จ์ ๋ณด๋ด๊ฒ๋๋ค.
ํ๋ก๊ทธ๋จ A๊ฐ ํ๋๋์คํฌ ๋ด์ฉ์ ๊ฐ์ ธ์ฌ ๋์ CPU๋ CPUํ์ ๋ค์ ํ๋ก๊ทธ๋จ๋ค์ ์ฐจ๋ก๋๋ก ์ฒ๋ฆฌํด์ค๋ค.
CPU ์ค์ผ์ค๋ง
์ฌ๋ฌ ํ๋ก๊ทธ๋จ๋ค์ด CPU๋ฅผ ์ฌ์ฉํ๊ธฐ์ํด CPUํ์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ ์ํฉ์ด๋ค
์ด๋ค ํ๋ก๊ทธ๋จ์๊ฒ CPU์ฌ์ฉ๊ถ์ ์ฃผ์ด์ผํ ๊น??
First-Come First-Served
ํ์ ๋ค์ด์จ ์์๋๋ก ์ฒ๋ฆฌํ๋ค
๋จ์ : 1๋ฒ์งธ ํ๋ก์ธ์ค๊ฐ ๊ธด ์๊ฐ๋์ ์ด์ฉํ๊ฒ๋๋ฉด, ๋ค์์๋ 2~3๋ฒ์งธ ํ๋ก์ธ์ค์ ๋๊ธฐ์๊ฐ๋ ๊ธธ์ด์ง๊ณ , ํ๊ท ๋๊ธฐ์๊ฐ๋ ๊ธธ์ด์ง๋ค.
Shortest-Job-First
CPU์ฌ์ฉ์๊ฐ์ด ๊ฐ์ฅ ์งง์ ํ๋ก์ธ์ค๋ถํฐ ์คํํ๋ค
์ฅ์ : ํ๊ท ๋๊ธฐ์๊ฐ์ด ์ค์ด๋ค์๋ค.
๋จ์ : CPU๋ฅผ ๊ธธ๊ฒ ์ฌ์ฉํด์ผํ๋ ํ๋ก๊ทธ๋จ์, ์์ ์งง์ ํ๋ก๊ทธ๋จ์ ๋นํด ๊ธฐ๋ค๋ฆฌ๋ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๊ฒ๋๋ค.
๋ํ CPUํ์ ๋ค๋ฅธ ํ๋ก๊ทธ๋จ๋ค์ด ๊ณ์ ๋ค์ด์จ๋ค๋ฉด ๊ฒฐ๊ตญ ๋ ์์์์ ๋ฐ๋ฆฌ๊ฒ๋๋ค.
= ๋ฌดํ์ ์ผ๋ก ๊ธฐ๋ค๋ ค๋ ์ฒ๋ฆฌ๋์ง ์์ ์ ์๋ค!
Round Robin โญ
โญํ์ฌ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ๋ฐฉ์์ด๋ค.
์งง๊ฒ ์ ์ํ CPU์ฌ์ฉ์๊ฐ๋งํผ ์ฌ์ฉํ๋ค
์ฌ์ฉ์๊ฐ์ด ๋๋๋ฉด ์ธํฐ๋ฝํธ๊ฐ ๋ฐ์ํ์ฌ ํ๋ก์ธ์ค๋ CPU๋ฅผ ๋นผ์๊ธฐ๊ณ , CPU ํ์ ์ ์ผ ๋ค๋ก ๋ฐ๋ฆฐ๋ค.
(* CPU๋ฅผ ๋นผ์๋ ์ธํฐ๋ฝํธ๋ ํ๋์จ์ด์ ์ง์์ ๋ฐ์์ผํ๋ค.)
์ฅ์ : ์ด๋ค ํ๋ก์ธ์ค๋ (n-1)*CPU์ฌ์ฉ์๊ฐ ์ด์ ๊ธฐ๋ค๋ฆฌ์ง ์๋๋ค.
๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ
์ปดํจํฐ๋ฅผ ๋ถํ ํ๋ฉด, ํ๋๋์คํฌ์๋ ์คํํ์ผ์ด ์ ์ฅ๋์ด์๊ณ ๋ฉ๋ชจ๋ฆฌ์๋ ์ด์์ฒด์ ๋ง ์๋ ์ํฉ์ด ๋๋ค.
ํ๋๋์คํฌ์ ์คํํ์ผ์ ์คํํ๋ฉด ๊ฐ์๋ฉ๋ชจ๋ฆฌ์ ํ๋ก์ธ์ค๋ฅผ ์ฌ๋ฆฌ๊ณ
ํ๋ก๊ทธ๋จ ํ์ฌ ์คํ์ ํ์ํ ๋ถ๋ถ๋ง ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆฌ๊ฒ๋๋ค.
์๊ฐ์ด ํ๋ฌ ๋ฉ๋ชจ๋ฆฌ์ ๊ณต๊ฐ์ด ์์ด์ง๋๋ฐ, ์ด๋ป๊ฒ ๊ด๋ฆฌํ๋ฉด๋ ๊น?
(ํ์ด์ง : ํ๋ก์ธ์ค๋ฅผ ์์ ํฌ๊ธฐ๋ก ๋๋ ๊ฒ)
๋์คํฌ ์ค์ผ์ค๋ง
ํ์ํ๊ณ ์ํ๋ ์์น๊ฐ ๋์คํฌ ํ์ ๋ค์ด์จ๋ค. ํ๋๋์คํฌ๋ ์ํ์ ํ์ํ์ฌ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ฌ ์ ์๋ค.
๋์คํฌ ํ์ 1, 100, 2, 99...๊ฐ ๋ค์ด์๋ค๋ฉด ์ฐจ๋ก๋๋ก ์ฒ๋ฆฌํ๋ ๊ฒ๋ณด๋ค 1, 2, ...99, 100 ์ด๋ ๊ฒ ์์๋ฅผ ๋ฐ๊พธ์ด ์ฒ๋ฆฌํ๋ ๊ฒ์ด ํจ์จ์ด ๋ ์ข๋ค.
First-Come First-Served
ํ์ ์์๋๋ก ์ฒ๋ฆฌ
๋จ์ : ํค๋์ ํ์์ด ๋นํจ์จ์ ์ด๋ค.
Shortest Seek Time First
ํ์ฌ ์์น์์ ๊ฐ์ฅ ๊ฐ๊น์ด ์์น๋ฅผ ํ์ํ๋ค
์ฅ์ : FCFS๋ณด๋ค๋ ํ์์ ํจ์จ์ฑ์ด ์ข๋ค
๋จ์ : ๋์คํฌํ์ ์ํฉ์ ๊ณ์ ๋ณํํ๊ธฐ๋๋ฌธ์ ํ์ฌ ์์น์์ ๊ฐ๊น์ด ๊ฑฐ๋ฆฌ์ ์๋ ์์น๋ง ๊ณ์ ์ถ๊ฐ๋๋ค๋ฉด,
ํ์ฌ ์์น์์ ๋จผ ๊ฑฐ๋ฆฌ์ ์๋ ์์น๋ ๊ณ์ ํ์ํ์ง ๋ชปํ ์ ์๋ค. (๊ธฐ์ํ์)
SCAN
ํค๋๋ ๋์คํฌํ์ ์์น๋ฅผ ์ ๊ฒฝ์ฐ์ง ์๊ณ ๊ทธ์ ๋์คํฌ์ ์ ๋์ ํ์ํ๋ค.
ํค๋๊ฐ ๋์คํฌํ์ ์์น์ ๋๋ฌํ๋ฉด ์์ฒญ์ ์ฒ๋ฆฌํ๋ค.
์ฐธ๊ณ http://www.kocw.net/home/search/kemView.do?kemId=1226304
'๐ก Computer Science' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก์ธ์ค? ์ค๋ ๋? (0) | 2022.02.17 |
---|---|
[JWT] JSON Web Token์ ๊ตฌ์กฐ, ์ฅ์ , ํ๊ณ (0) | 2022.02.03 |
์ ๋ณด๋ณด์์ 3๋ ์์(๊ธฐ๋ฐ์ฑ, ๋ฌด๊ฒฐ์ฑ, ๊ฐ์ฉ์ฑ)์ RSA ์ํธํ ๋ฐฉ์ (0) | 2022.02.02 |