ํฐ๋ ธ์ด๋ง ๊ตฌ์กฐ(Von Neumann architecture)
ํฐ๋ ธ์ด๋ง ๊ตฌ์กฐ(Von Neumann architecture)๋ ํ๋ ์ปดํจํฐ ์ํคํ ์ฒ์ ์ค์ํ ๊ฐ๋ ์ค ํ๋๋ก, ์ปดํจํฐ ์์คํ ์ ์ค๊ณ์ ๋์ ์๋ฆฌ๋ฅผ ์ค๋ช ํ๋ ๊ธฐ๋ณธ์ ์ธ ํ๋ ์์ํฌ์ ๋๋ค. ์ด ์ํคํ ์ฒ๋ ์ปดํจํฐ ํ๋์จ์ด์ ์ํํธ์จ์ด๊ฐ ์ํธ์์ฉํ๋ ๋ฐฉ์์ ์ ์ํ๋ฉฐ, ๋๋ถ๋ถ์ ์ผ๋ฐ์ ์ธ ์ปดํจํฐ ์์คํ ์ด ์ด๋ฌํ ์ํคํ ์ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ค๊ณ๋์ด ์์ต๋๋ค. ํฐ๋ ธ์ด๋ง ๊ตฌ์กฐ์ ์ฃผ์ ํน์ง์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1. ์ค์ ์ฒ๋ฆฌ ์ฅ์น(Central Processing Unit, CPU): ํฐ๋
ธ์ด๋ง ๊ตฌ์กฐ์ ํต์ฌ์ CPU๋ก, ์ด๋ ํ๋ก๊ทธ๋จ์ ๋ช
๋ น์ด๋ฅผ ์คํํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ์ญํ ์ ํฉ๋๋ค.
2. ๋ฉ๋ชจ๋ฆฌ(Memory): ํฐ๋
ธ์ด๋ง ๊ตฌ์กฐ์์๋ ๋ฐ์ดํฐ์ ํ๋ก๊ทธ๋จ ๋ช
๋ น์ด๊ฐ ๋์ผํ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ฉ๋๋ค. ์ด ๋ฉ๋ชจ๋ฆฌ๋ ์ฃผ ๊ธฐ์ต์ฅ์น(RAM, Random Access Memory)๋ก ์๋ ค์ ธ ์์ผ๋ฉฐ, CPU๋ ๋ฉ๋ชจ๋ฆฌ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ฐ๋ฉฐ ํ๋ก๊ทธ๋จ ๋ช
๋ น์ด๋ฅผ ๊ฐ์ ธ์ ์คํํฉ๋๋ค.
3. ๋ช
๋ น์ด์ ๋ฐ์ดํฐ์ ๊ตฌ๋ถ: ํ๋ก๊ทธ๋จ ๋ช
๋ น์ด์ ๋ฐ์ดํฐ๋ ๋์ผํ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋์ง๋ง, CPU๋ ๋ช
๋ น์ด์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ๋ถํ์ฌ ์ฒ๋ฆฌํฉ๋๋ค. ์ด๊ฒ์ ๋ช
๋ น์ด์ ๋ฐ์ดํฐ๋ฅผ ๋ช
ํํ๊ฒ ๊ตฌ๋ถํ๋ ํ๋ก๊ทธ๋จ ์นด์ดํฐ(Program Counter, PC)๋ผ๋ ๋ ์ง์คํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌ์ฑ๋ฉ๋๋ค.
4. ๋ช
๋ น์ด ์งํฉ ๊ตฌ์กฐ: ํฐ๋
ธ์ด๋ง ์ปดํจํฐ๋ ์ผ๋ จ์ ๋ช
๋ น์ด๋ฅผ ์คํํ๋ ๋ฐ ์ฌ์ฉ๋๋ฉฐ, ์ด๋ฌํ ๋ช
๋ น์ด๋ค์ CPU์์ ์ง์ํ๋ ์ผ์ ํ ๋ช
๋ น์ด ์งํฉ์ ๋ฐ๋ผ ๋์ํฉ๋๋ค. ์ด ๋ช
๋ น์ด ์งํฉ์ ๊ธฐ๋ณธ์ ์ผ๋ก CPU์ ๋ช
๋ น์ด ์ธํธ๋ก ๊ตฌ์ฑ๋๋ฉฐ, ์ฐ์ ์ฐ์ฐ, ๋
ผ๋ฆฌ ์ฐ์ฐ, ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ์ํํ ์ ์์ต๋๋ค.
5. ์ํ์
ํ ์ฒ๋ฆฌ: ๋ช
๋ น์ด๋ ์์ฐจ์ ์ผ๋ก ์คํ๋๋ฉฐ, ํ๋ก๊ทธ๋จ ์นด์ดํฐ๋ ๋ค์์ ์คํํ ๋ช
๋ น์ด์ ์ฃผ์๋ฅผ ๊ฐ๋ฆฌํค๋ฏ๋ก, ๋ช
๋ น์ด์ ์คํ์ ํ๋์ฉ ์งํ๋ฉ๋๋ค.
์ค๋ ๋ ์ ๋๋ถ๋ถ ์ปดํจํฐ๋ ํฐ๋ ธ์ด๋ง ๊ตฌ์กฐ์ ๋๋ค. CPU, ๋ฉ๋ชจ๋ฆฌ, ์ ์ฅ์ฅ์น, ์ ์ถ๋ ฅ ์ฅ์น๊ฐ ๋ฒ์ค๋ก ์ฐ๊ฒฐ๋์ด์๋ ๊ตฌ์กฐ์ ๋๋ค. ์ฌ๊ธฐ์ ๊ฐ์ฅ ์ค์ํ ํน์ง์ "๋ชจ๋ ํ๋ก๊ทธ๋จ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์์ผ ์คํํ ์ ์๋ค." ์ ๋๋ค.
์ปดํจํฐ๋ฅผ ์ฃผ๋ฐฉ์ ๋น์ ํ๋ฉด, ์ํ๋ CPU, ์ํ๊ฐ ์ฐ๋ ๋๋ง๋ ๋ฉ๋ชจ๋ฆฌ, ์ฃผ๋ฐฉ ์ฐฝ๊ณ ๋ ์ ์ฅ์ฅ์น์ ๋๋ค. ์๋ฆฌ ๋ฐฉ๋ฒ์ ๊ฒฐ์ ํ๋ ๊ฒ์ CPU๊ฐ ์์ ์ ์งํํ๋ ๊ฒ(ํ๋ก์ธ์ค ๊ด๋ฆฌ), ๋๋ง ์ ์ฌ๋ฃ๋ฅผ ์ ๋ฆฌํ๋ ๊ฒ์ ํ๋ก๊ทธ๋จ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ ๊ฒ(๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ)์ ๋น์ ํ ์ ์์ต๋๋ค. ๋๋ง์ ํฌ๊ธฐ๋ RAM์ ํฌ๊ธฐ์ ๋น์ ํ ์ ์์ด์, ๋๋ง๊ฐ ์์ผ๋ฉด ์๊ฐ์ด ์ค๋๊ฑธ๋ฆด ์ ๋ฐ์ ์์ต๋๋ค.
ํฐ๋
ธ์ด๋ง ๊ตฌ์กฐ๋ John von Neumann์ด 1940๋
๋์ ์ ์ํ ๊ฐ๋
์ผ๋ก, ์ด์ ์ ์ปดํจํฐ ์ํคํ
์ฒ์๋ ๋์กฐ์ ์ผ๋ก ๋ช
๋ น์ด์ ๋ฐ์ดํฐ๋ฅผ ๋์ผํ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํ๊ณ ์ฌ์ฉํ๋ ์ ์์ ํ๋ช
์ ์ด์์ต๋๋ค. ์ด๋ฌํ ์ํคํ
์ฒ๋ ํ๋ ์ปดํจํฐ ์์คํ
์ ๊ธฐ์ด๋ฅผ ์ด๋ฃจ๋ฉฐ, ํ๋ก๊ทธ๋๋จธ๋ค์ด ์ํํธ์จ์ด๋ฅผ ๊ฐ๋ฐํ๊ณ ์คํํ ๋ ์ฌ์ฉํ๋ ๊ธฐ๋ณธ์ ์ธ ๋ชจ๋ธ์ด ๋ฉ๋๋ค.
'์ด์์ฒด์ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ด์ค๋ชจ๋(Dual Mode)์ ์์คํ ํธ์ถ(System Call) (0) | 2023.10.28 |
---|---|
์ปค๋(Kernel)๊ณผ ์ธํฐํ์ด์ค(Interface) (0) | 2023.09.12 |
ํ๋ก์ธ์ค ์ ์ด ๋ธ๋ก(PCB, Process Control Block) (0) | 2023.08.30 |
IPC(Inter-Process Communication, ํ๋ก์ธ์ค ๊ฐ ํต์ ) (0) | 2023.08.29 |
Context Switching(๋ฌธ๋งฅ ๊ตํ) (0) | 2023.08.28 |
๋๊ธ