์ด์์ฒด์ ์ ๋ํ ์ ์, ์ญํ ์ ๋ํด ์์๋ณธ๋ค.
์ด์์ฒด์ ๋ ์ฌ์ฉ์๊ฐ ์ปดํจํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ํ์ํ ์ํํธ์จ์ด์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ชจ๋ ํ๋ก๊ทธ๋จ์ ์ด์์ฒด์ ์์ ๊ทธ ์์์ ๊ด๋ฆฌํ๋ค.
๋ชฉ์
์ด์์ฒด์ ๋ฅผ ์ฌ์ฉํ๋ ๊ฐ์ฅ ํฐ ๋ชฉ์ ์ ํ๋์จ์ด์ ๊ด๋ฆฌ์ด๋ค. ์ปดํจํฐ๋ฅผ ๋ํ๋ด๋ ๊ฐ์ฅ ์์ง์ ์ธ ์ฅ์น๋ CPU์ด์ง๋ง, ์ถ๊ฐ์ ์ผ๋ก ๋ง์ ์ฅ์น์ ์ํธ์์ฉํ๋ฉฐ ๋์ํ๋ค. ๊ทธ๋ ๊ธฐ์ ์ด๋ฌํ ํ๋์จ์ด๋ฅผ ๊ด๋ฆฌํ๋ ์ํํธ์จ์ด๊ฐ ์์ด์ผ ํจ์จ์ ์ผ๋ก ์ปดํจํฐ๋ฅผ ์ฌ์ฉํ ์ ์๋ค. ํ๋์จ์ด๋ฅผ ์ง์ ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ด ์๋๊ธฐ ๋๋ฌธ์, ์ด๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์ด์์ฒด์ ์ ์ฑ๋ฅ์ด ์ข์์ผ ํ๋ค.
๋๋ฒ์งธ๋ก๋ ์ฌ์ฉ์์๊ฒ ํธ์๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด๋ค. ์ด์์ฒด์ ๊ฐ ์์ ๊ฒฝ์ฐ, ์ฐ๋ฆฌ๋ ํ๋์จ์ด ๋จ์์ ํ๋ ์ฝ๋ฉ์ผ๋ก ์ํ๋ ์์ ์ ์คํํด์ผ ํ๋ค. ์ด๋ ๋งค์ฐ ์์ฐ์ฑ์ด ๋จ์ด์ง๋ ๋ฐฉ๋ฒ์ด๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ด๋ฐ ์์ ๊ด๋ฆฌ ์ธก๋ฉด์ ์๋์ผ๋ก ํด์ฃผ๋ ์ํํธ์จ์ด๋ฅผ ํตํด, ์ํ๋ ์์ ์๋ง ๋ชฐ๋ํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํ๋ค.
์ ๋ฆฌ
์ด์์ฒด์ ๋ ์ปดํจํฐ์ ์ฑ๋ฅ์ ๋ํ๊ณ (performance), ์ฌ์ฉ์์๊ฒ ํธ์์ฑ์ ์ ๊ณต(Convenience)์ ๋ชฉ์ ์ผ๋ก ํ๋ ์ปดํจํฐ ํ๋์จ์ด ๊ด๋ฆฌ ํ๋ก๊ทธ๋จ์ด๋ค.
๋ถํ (Booting)
์ปดํจํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์ ๊ฐ์ฅ ๋จผ์ ํ๋ ํ๋์ ์ ์๋ฒํผ์ ๋๋ฅด๋ ๊ฒ์ด๋ค. ๊ทธ๋ ๋ค๋ฉด, ์ ์์ ๋๋ ์ ๋, ์์ํด์ผ ํ๋ ์์ ๋ค์ด ์์ ๊ฒ์ด๋ค. ์ฐ๋ฆฌ๊ฐ ์ค์ ๋ก ์ฌ์ฉํ ์ ์๋ ์ด์์ฒด์ ๊ฐ ์คํ๋๊ธฐ ์ด์ ์ ๋ค์ํ ์์ ์ ํด์ผํ๋๋ฐ, ์ด ์์ ์ ๋ถํ ์ด๋ผ ํ๋ค.
์ด๋ป๊ฒ ์คํํ ์ ์์๊น?
๊ธฐ๋ณธ์ ์ธ ์ปดํจํฐ ๊ตฌ์กฐ๋ ์์ ๊ฐ๋ค. ์ด ์ํฉ์์ ๋ถํ ์ ํ๋ค๊ณ ์๊ฐํด๋ณด์. ์ปดํจํฐ๋ ์ํ๋ ์์ ์ ์คํํ ๋, Disk, RAM, CPU, RAM, Disk ์์ ๊ณผ์ ์ ๊ฑฐ์น๋ฉฐ ์๋ํ๊ฒ ๋๋ค. ๊ทธ๋ฐ๋ฐ, ๋ถํ ์ ํ๋ ๊ฒฝ์ฐ์๋ ์ด๋ป๊ฒ ํด์ผํ ๊น? ์ฌ์ค Disk๋ ์ปดํจํฐ ์ ์ฅ์์๋ ๋ณด์กฐ ์ฅ์น์ด๋ค. ์ปดํจํฐ๋ผ๊ณ ๋ถ๋ฅผ ์ ์๋ ์ค์ง์ ์ธ ๋ถ๋ถ์ CPU, RAM์ด ์ ๋ถ์ด๊ธฐ ๋๋ฌธ์ ์ฒ์ ๋ถํ ์ ์์ํ๋ฉด CPU ์ ๋ถํ ์ ํ์ํ ์์ ์ ๋๊ฒจ์ค ์ ์๋ค.
๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ์ผ๋ฐ์ ์ผ๋ก ํ๋ก๊ทธ๋จ์ด ๋์ํ๋ ๋ฐฉ์์ธ Disk, RAM, CPU ๊ณผ์ ์ ๊ฑฐ์น ์ ์๊ธฐ ๋๋ฌธ์, ๋ถํ ์ ํํด์ RAM์ ํญ์ ์ ์ฅ๋ ๊ณต๊ฐ์ ํ์๋กํ๊ฒ ๋์๋๋ฐ, ๊ทธ๊ฒ์ด ROM์ด๋ค.
RAM๊ณผ ROM์ ํจ๊ป Main Memory๋ผ ๋ถ๋ฅธ๋ค.
- ROM: ๋นํ๋ฐ์ฑ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์์ ๊ทนํ ์ผ๋ถ๋ฅผ ์ฐจ์งํ๋ค.(์ KB)
- RAM: ํ๋ฐ์ฑ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์ ๋๋ถ๋ถ์ ์ฐจ์งํ๋ฉฐ ์ค์ ํ๋ก๊ทธ๋จ์ด ํ ๋น๋๋ ๊ณณ์ด๋ค.(์ MB ~ ์ GB)
๋ถํ ์ ํ๋ ์์ (์๋ฐํ ์ ์์ ๋ถํ )
- ROM์ ์ ๋ณด๋ฅผ ์ฝ๋๋ค.
- ROM์์ ์๋ POST(Power-On-Self-Test), ๋ถํธ ๋ก๋(Boot-Loader)๋ฅผ ์คํํ๋ค.
POST๋ ์ ์์ด ์ผ์ง๋ฉด ๊ฐ์ฅ ์ฒ์์ ์คํ๋๋ ํ๋ก๊ทธ๋จ์ผ๋ก, ํ์ฌ ์ปดํจํฐ์ ์ํ๋ฅผ ๊ฒ์ฌํ๋ค. ์ด ๊ฒ์๋ ์ฅ์น๊ฐ ์ฐ๊ฒฐ๋์ด ์๋์ง, ๋ฉ์ฉกํ ์ง ๋ฑ์ ์ํ๋ฅผ ๋ปํ๋ค.
๋ถํธ ๋ก๋๋ ํ๋๋์คํฌ์ ์ ์ฅ๋์ด ์๋ ์ด์์ฒด์ ๋ฅผ ์ฐพ์์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ(RAM)์ ๊ฐ์ง๊ณ ์จ๋ค. ์ด๋ฌํ ๋ถํธ ๋ก๋์ ๊ณผ์ ์ ๋ถํ ์ด๋ผ๊ณ ํ๋ค.
์ด๋ ๊ฒ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์จ OS๋ ์ปดํจํฐ๋ฅผ ์ข ๋ฃํ๊ธฐ ์ ๊น์ง ๊ณ์ ๋ฉ๋ชจ๋ฆฌ์ ์์ฃผํ๋ค.
๊ตฌ์กฐ
์ด์์ฒด์ ๋ ํฌ๊ฒ ์ปค๋(Kernel)๊ณผ ๋ช ๋ น์ด ํด์๊ธฐ(Command interpreter, shell)๋ก ๋๋๋ค.
์ปค๋(Kernel)์ ์ด์์ฒด์ ์ ํต์ฌ์ธ ํ๋์จ์ด๋ฅผ ๋ค๋ฃจ๋ ์ฝ๋๋ฅผ ๋งํ๋ค. ์ด ๋ถ๋ถ์ด ํต์ฌ์ด ๋๋ฌธ์, Kernel์ ๋ฐ๋ผ ์ด์์ฒด์ ๊ฐ ๋ฌ๋ผ์ง๋ค. ์๋ฅผ ๋ค์ด ํ๋๋ผ, ์ฐ๋ถํฌ ๋ฑ์ด ๋ฆฌ๋ ์ค ์ด์์ฒด์ ๋ผ ๋ถ๋ฅด๋ ๊ฒ์, ์ด ์ด์์ฒด์ ๊ฐ ๋ฆฌ๋ ์ค Kernel์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ด๋ค.
๋ช ๋ น์ด ํด์๊ธฐ(Command interpreter, shell)๋ ์ด ์ปค๋๋ก ๋ง๋ค์ด์ง ์ฝ๋๋ฅผ ๋์ํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ๋ถ๋ถ์ด๋ค. Interface๋ผ๊ณ ๋ณผ ์ ์๋ค. GUI(Graphical User Interface)๋ CLI(Command Line Interface) ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ด์์ฒด์ ์ ๋ช ๋ น์ ์์ฒญํ ์ ์๋ค.
์์น
์ฌ์ฉ์ ํ๋ก๊ทธ๋จ(Application)์ ํน์ ์ด์์ฒด์ ์ ๋ง์ถฐ์ ๋ง๋ ๋ค. ๊ทธ๋ฌ๋ฏ๋ก ํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋ก ๋ค๋ฅธ ์ด์์ฒด์ ์์ ์ํํ ์ ์๋ค. (ํ๋์จ์ด๊ฐ ๊ฐ์ ๊ฒ์ ์ ํ ์๊ด์ด ์๋ค.) ์๋ฅผ ๋ค๋ฉด Windows์์ ์ํํ๋ ํ๋ก๊ทธ๋จ์ ๊ทธ๋๋ก Linux์ ์ฎ๊ธฐ๋ฉด ์ํ๋์ง ์๋๋ค. ์ด์ ๊ธ์์ ๋ณด์๋ฏ์ด ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ์์์ OS๋ฅผ ํตํด ์์ฒญํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํด๋น ์ด์์ฒด์ ์ Interface(Kernel๋ฅผ ๋ฐ๋ผ์ผ ํ๊ณ , ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ด์์ฒด์ ๊ฐ ๋ค๋ฅผ ๊ฒฝ์ฐ ๋์ํ ์ ์๋ค.
์ถ๊ฐ์ ์ผ๋ก ๊ตญ๊ฐ์ ๋น์ ํ์ฌ ์๊ฐํด ๋ณผ ์๋ ์๋ค.
Reference
- KOCW ์ํฌ์ฌ ๊ต์๋ - ์ด์์ฒด์
- ์ํฌ์ฌ ๊ต์๋ ๋ธ๋ก๊ทธ(์ํ ๊ธฐ์ถ ๋ฌธ์ )
- codemcd ๋์ ์ ๋ฆฌ๊ธ
- Operating System Concepts, 9th Edition - Abraham Silberschatz