Monolithic Kernel
์ด์์ฒด์ ์ ์ฃผ์๊ธฐ๋ฅ๋ค์ด ๋ชจ๋ ์ปค๋ ๋ด๋ถ์ ๊ตฌํ๋์ด ์๋ ๊ฒ์ Monolithic Kernel์ด๋ผ๊ณ ํ๋ค.
๋ํ ์ปค๋ ๋ชจ๋๋ก ์คํ๋๋๋ฐ, ์ปค๋ ๋ชจ๋๋ ์ปดํจํฐ๊ฐ ์ด์ ํ๋ก๊ทธ๋จ ์ฝ๋๋ฅผ ์คํํ๋ ๊ฒ์ด ์๋๋ผ ์ด์์ฒด์ ์ ์ฝ๋๋ฅผ ์คํํ๋ ์ํฉ์ ๋งํ๋ค.
์ด๋ฌํ Monolothic Kernel์ ์ด์์ฒด์ ์คํ ์๋๊ฐ ์ผ๋ฐ์ ์ผ๋ก ๋น ๋ฅธ ํธ์ด๋ค.
Micro Kernel
๋ช๋ช ๊ฐ์ ์ค์ํ ๊ธฐ๋ฅ์ ์ ์ธํ๊ณ , ๋๋จธ์ง ์ด์์ฒด์ ๊ธฐ๋ฅ์ด ์ปค๋ ์ธ๋ถ์์ ์๋ํ๋ ๊ฒ์ Micro Kernel์ด๋ผ๊ณ ํ๋ค.
์ฌ๊ธฐ์ ๊ผญ ์ปค๋์๋ง ์์ด์ผ ํ๋ ์ค์ํ ๊ธฐ๋ฅ๋ค์ ํ๋์จ์ด๋ฅผ ์ง์ ์ ์ดํด์ผ ํ๋ ์ฝ๋๋ ํ๋ก์ธ์ค ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ๋ณดํธํ๊ฑฐ๋, ํ๋ก์ธ์ค๋ค ๊ฐ์ ๊ธฐ๋ณธ์ ์ธ ํต์ ๊ธฐ๋ฅ, ์ค์ผ์ค๋ง ๊ธฐ๋ฅ๋ค์ด ์๋ค.
๊ทธ ์ด์ธ์ ๊ธฐ๋ฅ์ ์ปค๋ ๋ฐ์ผ๋ก ๋นผ๋ด์ด ์ฌ์ฉํ๋ค.
Micro Kernel์ ์ฅ/๋จ์
๊ธฐ๋ณธ์ ์ผ๋ก Micro Kernel์ ๊ผญ ํ์ํ ๊ธฐ๋ฅ์ผ๋ก ์ด์์ฒด์ ๋ฅผ ์ปค์คํฐ๋ง์ด์งํ๊ธฐ ์ข๋ค. ๊ทธ ์ด์ธ์๋ Micro Kernel์ ๋ค์๊ณผ ๊ฐ์ ์ฅ์ ์ ์ง๋๋ค.
- ํ๋ก์ธ์ค์ ์์ฒญ์ ๋ํด ์ผ๊ด๋ ์๋ต์ ํ๋ค.
- ์ปค๋ ๋ชจ๋, ์ ์ ๋ชจ๋๋ฅผ ๋๋ ํ์๊ฐ ์๋ค.
- ๋ชจ๋ ์๋น์ค๊ฐ ๋ฉ์ธ์ง ์ ๋ฌ์ ํตํด ์ ๊ณต๋๋ค.
- ํ์ฅ์ฑ(Extensibility)์ด ์ข๋ค.
- ์๋ก์ด ์๋น์ค๋ฅผ ์ถ๊ฐํ๊ธฐ ์ข๋ค.
- monolothic์ ์ฝ๋ ์์ ์ด ์ด๋ ต๋ค. ๋ด๋ถ ์ฝ๋๋ฅผ ๋ฐ๊พธ๋ฉด, ์ปค๋ ์ ์ฒด๋ฅผ ์๋ก ์ปดํ์ผํ๊ณ ์์คํ ์ ์ฌ๋ถํ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
- ์ ์ฐ์ฑ(Flexibility)์ด ์ข๋ค.
- ์ด์์ฑ(Portability)์ด ์ข๋ค.
- ์ ๋ขฐ์ฑ(Reliability)์ด ์ข๋ค.
- ์์ ๋ง์ดํฌ๋ก ์ปค๋์ด ์๊ฒฉํ๊ฒ ํ ์คํธ ๋ ์ ์๋ค.
- ๋ถ์ฐ๋ ์์คํ ์ง์์ด ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง, Micro Kernel์ ์๋์ ๊ฐ์ ๋จ์ ๋ ์ง๋๋ค.
- ์ฑ๋ฅ ์ ํ(Performance)
- monolothic kernel๋ณด๋ค ๋๋ฆฌ๋ค.
- ์๋ฒ์ฉ ์ปดํจํฐ๋ก๋ ์ ํฉํ์ง ์๋ค.
- ์ด๋ ์ปค๋ ๋ฐ์ ์ด์์ฒด์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋, ๋ง์ดํฌ๋ก ์ปค๋์ ๊ฑฐ์ณ๊ฐ๋ฉฐ ์ฌ์ฉํด์ผํ๊ธฐ ๋๋ฌธ์ด๋ค.
Example Operating Systems
UNIX, Linux, Windows, Android, IOS ๋ฑ์ด ์๊ณ ,
Real-time OS๋ ์ด๋ค ์ผ์ ์ ํด์ง ์๊ฐ ์ด๋ด์ ์คํํ ์ ์๋ ์ด์ ์ฒด์ ์ด๋ค.
Unix
Unix๋ high level ์ธ์ด์ธ C์ธ์ด๋ก ๋ง๋ค์ด ์ก๋ค. ๊ทธ๋์ ํ๋์จ์ด๊ฐ ๊ณ ์ฌ์์ด ๋๋๋ผ๋ ํฌํ ํ๊ธฐ๊ฐ ์ฌ์ ๋ค.
์๊ฐ์ด ์ง๋๊ณ ๊ทธ ์์ ์์ด๋ ํ์ผ ์์คํ , ์๋ํฐ ๋ฑ์ด ์ถ๊ฐ๋์๋ค. ํ์ง๋ง, ์ด๋ ๊ฒ ์ข์ ๊ธฐ๋ฅ์ ๊ฐ์ง Unix ์ด์์ฒด์ ๋ ๊ทธ ๋น์์ ๋ฒ์ผ๋ก ์ธํด ์ผ๋ฐ ์ฌ๋๋ค์๊ฒ๋ ์ ๋๋ก ๋ฐฐํฌ๋์ง ์์๋ค.
๊ทธ ๋์ , ์ฐ๊ตฌ์๋ ํ๊ต ๋ฑ์ ๋ฌด๋ฃ๋ก ๋ฐฐํฌ๋์๊ณ , ๊ทธ ๊ณผ์ ์์์ ๋์ฑ ๋ ์ข์ ๊ธฐ๋ฅ๋ค์ ์ถ๊ฐํ๊ฒ ๋์๋ค. ๊ทธ ์ค์์ ์ ๋ช ํ ๊ฒ์ด ๋ฐ๋ก ๋ฒํด๋ฆฌ ๋ํ์์ ๋ง๋ BSD ๋ฑ์ด ์๋ค.
์ด์ ์ ๋ฐฐ์ ๋ฏ์ด System Call์ ์์ฉ ํ๋ก๊ทธ๋จ์ด ์ด์ ์ฒด์ ์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋๋ก ์ ์ํด ๋์ ํจ์์ด๋ฉฐ Kernel๊ณผ ์์ฉ ํ๋ก๊ทธ๋จ ์ฌ์ด์ ์์์ ์ ์ ์๋ค.
Linux
Linux๋ PC์ฉ Unix์ด๋ค. ์ด์ ๊น์ง๋ PC์์ Dos๋ ์ด๊ธฐ Windows๋ฅผ ์ฌ์ฉํ๊ณ ์๋ ๋์๋ค.
๋จ, Linux๋ ๋น ๋ฅธ ์ฑ๋ฅ์ ์ฐ์ ์ ํ๊ธฐ ๋๋ฌธ์ Micro Kernel์ด ์๋, Monolothic Kernel ๋ฐฉ์์ ์ฑํํ๋ค.
Windows
Windows๋ ์์ Linux์๋ ๋ฌ๋ฆฌ, Micro Kernel์ ๋ฐ๋ฅด๋ฉฐ User Mode Process๋ฅผ ๊ฐ์ง๋ค.
๋ฐ๋ผ์ ์๋๋ผ๋ฉด ์ปค๋ ๋ด๋ถ์์ ์คํ๋์ด์ผ ํ๋ ํ๋ก์ธ์ค๋ค์ด ์ปค๋ ๋ฐ์์ ์ดํ๋ฆฌ์ผ์ด์ ์ฒ๋ผ ์คํ๋ ์ ์๋ค. ๊ทธ ์ข ๋ฅ๋ ๋ค์๊ณผ ๊ฐ๋ค.
- System support processes
- ์์คํ ์ ๊ด๋ฆฌํ๊ธฐ ์ํ ๊ฒ. ์๋ฅผ๋ค์ด ์ธ์ ๋งค๋์ ๋ ์ธ์ฆ ์์คํ , ์๋น์ค ๋งค๋์ , ๋ก๊ทธ์ธ ํ๋ก์ธ์ค ๋ฑ
- Service processes
- ํ๋ฆฐํฐ ์คํ๋ฌ, ์ด๋ฒคํธ ๋ก๊ฑฐ, ๋๋ฐ์ด์ค, ๋คํธ์ํฌ ์๋น์ค
- Applications
- ์์คํ ์ฌ์ฉ์ ์ํ Excutables(exes)๋ DLLs
- Environment subsystems
'๐ Knowledge > ์ด์์ฒด์ (OS)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ด์์ฒด์ ] ํ๋ก์ธ์ค ์ํ๋ ์์๋ณด๊ธฐ (1) | 2024.03.09 |
---|---|
[์ด์์ฒด์ ] ํ๋ก์ธ์ค์ ๊ธฐ๋ณธ ๊ฐ๋ ์์๋ณด๊ธฐ (0) | 2024.03.09 |
[์ด์์ฒด์ ] ๋ถ์ฐ ์์คํ ๊ณผ System Call์ด๋? (1) | 2024.03.05 |
[์ด์์ฒด์ ] ๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ๊ณผ Time Sharing (1) | 2024.03.05 |
[์ด์์ฒด์ ] ์ด์์ฒด์ ๋ ๋ฌด์์ผ๊น (1) | 2024.03.04 |