1. ์ปดํจํฐ ์์คํ ์ ๊ตฌ์กฐ
- ์ปดํจํฐ ์์คํ ๊ตฌ์กฐ = ๋ด๋ถ์ฅ์น(CPU, ๋ฉ๋ชจ๋ฆฌ) + ์ธ๋ถ์ฅ์น(๋์คํฌ, ํค๋ณด๋, ๋ง์ฐ์ค, ๋ชจ๋ํฐ, ๋คํธ์ํฌ)
- ์ปจํธ๋กค๋ฌ(์ผ์ข ์ ์์ CPU) : ๋ฉ๋ชจ๋ฆฌ ๋ฐ ์ ์ถ๋ ฅ์ฅ์น ๋ฑ ๊ฐ ํ๋์จ์ด ์ฅ์น์ ๋ถ์ด์์ผ๋ฉด์ ์ด๋ค์ ์ ์ด
- ์ด๋ค ํ๋ก๊ทธ๋จ์ด ์ํ๋๋ ค๋ฉด ๊ทธ ํ๋ก๊ทธ๋จ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ ์์ด์ผ ํ๋ค.
์ด์์ฒด์ ์ค ํญ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ ์๋ ๋ถ๋ถ์ ์ปค๋(์ ์ฒด ์ด์์ฒด์ ์ค ํต์ฌ์ ์ธ ๋ถ๋ถ) ์ด๋ผ๊ณ ํ๋ค.
2. CPU์ฐ์ฐ๊ณผ I/O ์ฐ์ฐ
- ์ ์ถ๋ ฅ ์ฅ์น๋ค์ I/O์ฐ์ฐ : ์ ์ถ๋ ฅ ์ปจํธ๋กค๋ฌ๊ฐ ๋ด๋น
- ์ปดํจํฐ ๋ด์์ ์ํ๋๋ ์ฐ์ฐ : ๋ฉ์ธ CPU๊ฐ ๋ด๋น
๐ ์ ์ถ๋ ฅ ์ฅ์น์ ๋ฉ์ธ CPU๋ ๋์์ ์ํ์ด ๊ฐ๋ฅํ๋ค.
- ๋ก์ปฌ๋ฒํผ : ์ปจํธ๋กค๋ฌ๊ฐ ์ฅ์น๋ก๋ถํฐ ๋ค์ด์ค๊ณ ๋๊ฐ๋ ๋ฐ์ดํฐ๋ฅผ ์์๋ก ์ ์ฅํ๊ธฐ ์ํด ๊ฐ์ง๊ณ ์๋ ์์ ๋ฉ๋ชจ๋ฆฌ
- ์ธํฐ๋ฝํธ : ์ปจํธ๋กค๋ฌ๋ค์ด CPU์ ์๋น์ค๊ฐ ํ์ํ ๋ ์ด๋ฅผ ํต๋ณดํ๋ ๋ฐฉ๋ฒ
๐ ๋ก์ปฌ๋ฒํผ๋ก ์ฝ์ด์ค๋ ์์ ์ด ๋๋๋ฉด ์ปจํธ๋กค๋ฌ๋ ์ธํฐ๋ฝํธ๋ฅผ ๋ฐ์์์ผ CPU์๊ฒ ๋ณด๊ณ ํ๊ฒ ๋๋ค.
3. ์ธํฐ๋ฝํธ์ ์ผ๋ฐ์ ๊ธฐ๋ฅ
์ด์์ฒด์ ์ปค๋์๋ ์ธํฐ๋ฝํธ๊ฐ ๋ค์ด์์ ๋ ํด์ผ ํ ์ผ์ด ๋ฏธ๋ฆฌ ๋ค ํ๋ก๊ทธ๋๋ฐ ๋์ด ๊ทธ ์ฝ๋๊ฐ ๋ณด๊ด๋ผ ์๋ค.
- ์ธํฐ๋ฝํธ ๋ฒกํฐ : ํด๋น ์ธํฐ๋ฝํธ ์ฒ๋ฆฌ ๋ฃจํด์ ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์์
- ์ธํฐ๋ฝํธ ์ฒ๋ฆฌ ๋ฃจํด(=์ธํฐ๋ฝํธ ํธ๋ค๋ฌ) : ๋ค์ํ ์ธํฐ๋ฝํธ์ ๋ํด ๊ฐ๊ฐ ์ฒ๋ฆฌํด์ผ ํ ์ ๋ฌด๋ค์ ์ ์ํ๊ณ ์๋ ์ปค๋ํจ์
- ํ๋์จ์ด ์ธํฐ๋ฝํธ : ์ผ๋ฐ์ ์ผ๋ก ๋งํ๋ ์ธํฐ๋ฝํธ, ํ๋์จ์ด๊ฐ ๋ฐ์์ํจ ์ธํฐ๋ฝํธ
- ์ํํธ์จ์ด ์ธํฐ๋ฝํธ(ํธ๋ฉ,Trap)
- Exception : ํ๋ก๊ทธ๋จ์ด ์ค๋ฅ๋ฅผ ๋ฒํ ๊ฒฝ์ฐ
- System call : ํ๋ก๊ทธ๋จ์ด ์ปค๋ํจ์๋ฅผ ํธ์ถํ๋ ๊ฒฝ์ฐ
4. ์ธํฐ๋ฝํธ ํธ๋ค๋ง
์ธํฐ๋ฝํธ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ์ ์ฒ๋ฆฌํด์ผ ํ ์ผ์ ์ ์ฐจ๋ฅผ ์๋ฏธ
- ๋ ์ง์คํฐ : CPU์์ ๋ช ๋ น์ด ์คํ ๋ ๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฑฐ๋ ์ฐ๋ฉด์ ์ฌ์ฉ๋๋ CPU๋ด๋ถ์ ์์๊ธฐ์ต ์ฅ์น
- PCB(Process Control Block) : PCB๋ ๊ฐ๊ฐ์ ํ๋ก๊ทธ๋จ๋ง๋ค ํ๋์ฉ ์กด์ฌํ๋ฉฐ ํด๋น ํ๋ก๊ทธ๋จ์ ์ด๋ ๋ถ๋ถ์ด ์คํ ์ค์ด์๋์ง ์ ์ฅํ๊ณ ์์ (๋ฉ๋ชจ๋ฆฌ ์ฃผ์, ๋ ์ง์คํฐ๊ฐ, ํ๋์จ์ด ์ํ ๋ฑ)
PCB๊ฐ ํ์ํ ์ด์ : ์ธํฐ๋ฝํธ๊ฐ ๋ฐ์ํด ์๋ก์ด ๋ช ๋ น์ ์คํํ๋ฉด ๊ธฐ์กด ๋ ์ง์คํฐ๊ฐ๋ค์ด ์ง์์ง๊ฒ ๋๋ฏ๋ก ์ด๋ค์ ๊ธฐ์ตํ๊ธฐ ์ํด ์ฌ์ฉ
5. ์ ์ถ๋ ฅ ๊ตฌ์กฐ
๋๊ธฐ์ ์ ์ถ๋ ฅ๊ณผ ๋น๋๊ธฐ์ ์ ์ถ๋ ฅ (๋ ๊ฒฝ์ฐ ๋ชจ๋ I/O์ ์๋ฃ๋ ์ธํฐ๋ฝํธ๋ก ์๋ ค์ค)
- ๋๊ธฐ์ ์
์ถ๋ ฅ
:I/O ์์ฒญ ํ ์ ์ถ๋ ฅ ์์ ์ด ์๋ฃ๋ ํ์์ผ ์ ์ด๊ฐ ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ๋์ด๊ฐ- ๊ตฌํ๋ฐฉ๋ฒ 1
:I/O๊ฐ ๋๋ ๋๊น์ง CPU๋ฅผ ๋ญ๋น์ํด
:๋งค์์ ํ๋์ I/O๋ง ์ผ์ด๋ ์ ์์
๐๋๊ธฐํ๊ฐ ์๋์ผ๋ก ์ด๋ฃจ์ด์ง ์ ์๋ค - ๊ตฌํ๋ฐฉ๋ฒ 2
:I/O๊ฐ ์๋ฃ๋ ๋ ๊น์ง ํด๋น ํ๋ก๊ทธ๋จ์๊ฒ์ CPU๋ฅผ ๋นผ์์
:I/O ์ฒ๋ฆฌ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ค์ ๊ทธ ํ๋ก๊ทธ๋จ์ ์ค ์ธ์
:๋ค๋ฅธ ํ๋ก๊ทธ๋จ์๊ฒ CPU๋ฅผ ์ค
๐๋๊ธฐ์ฑ์ ๋ณด์ ํ๊ธฐ ์ํด ์ฅ์น๋ง๋ค ํ๋ฅผ ๋์ด์ผ ํ๋ค
๐์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ
- ๊ตฌํ๋ฐฉ๋ฒ 1
- ๋น๋๊ธฐ์ ์
์ถ๋ ฅ
:I/O๊ฐ ์์๋ ํ ์ ์ถ๋ ฅ ์์ ์ด ๋๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ์ ์ด๊ฐ ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ์ฆ์ ๋์ด๊ฐ
6. DMA(Direct Memory Access)
โ ์์น์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ CPU์ ์ํด์๋ง ์ ๊ทผํ ์ ์๋ค.
โ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ๊ธฐ ์ํด์ ์ธํฐ๋ฝํธ๋ฅผ ๋ฐ์์์ผ์ผ ํ๋๋ฐ, ๋ชจ๋ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ์ฐ์ฐ์ด ์ธํฐ๋ฝํธ๋ฅผ ํตํด CPU๋ฅผ ํธ์ถํ๋ค๋ฉด CPU์ ์ฌ์ฉ ํจ์จ์ฑ์ด ๋จ์ด์ง๋ ๋ฌธ์ ์ ์ด ๋ฐ์ํ๋ค.
โ ์ด๋ฌํ ๋นํจ์จ์ฑ์ ๊ทน๋ณตํ๊ธฐ ์ํด CPU์ธ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ด ๊ฐ๋ฅํ ์ฅ์น๋ฅผ ํ๋ ๋ ๋๋๋ฐ ๋ฐ๋ก ๊ทธ๊ฒ์ด DMA์ด๋ค.
โ CPU์ ์ค์ฌ ์์ด device controller๊ฐ device ์ buffer storage์ ๋ด์ฉ์ ๋ฉ๋ชจ๋ฆฌ์ block๋จ์๋ก ์ง์ ์ ์กํ๋ค.
DMA๋ ๋ฐ์ดํธ(byte)๋จ์๊ฐ ์๋ ๋ธ๋ก(block)์ด๋ผ๋ ํฐ ๋จ์๋ก ์ ๋ณด๋ฅผ ์ ์กํ๋ค.
7. ์ ์ฅ์ฅ์น์ ๊ตฌ์กฐ
- ์ฃผ๊ธฐ์ต์ฅ์น : ๋ฉ๋ชจ๋ฆฌ, ํ๋ฐ์ฑ, RAM
- ๋ณด์กฐ๊ธฐ์ต์ฅ์น : ๋นํ๋ฐ์ฑ
- ํ์ผ์์คํ ์ฉ : ์ ์์ด ๋๊ฐ๋ ์ ์งํด์ผ ํ ์ ๋ณด๋ฅผ ํ์ผ ํํ๋ก ๋ณด์กฐ๊ธฐ์ต์ฅ์น์ ์ ์ฅ
- ์ค์ ์์ญ(swap area)์ฉ : ๋ฉ๋ชจ๋ฆฌ ์ฉ๋์ ํ๊ณ๋ก ๋ฉ๋ชจ๋ฆฌ ์ฐ์ฅ๊ณต๊ฐ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ (ํ๋๋์คํฌ๊ฐ ๋ํ์ ์ผ๋ก ์ฌ์ฉ๋จ)
8. ์ ์ฅ์ฅ์น์ ๊ณ์ธต ๊ตฌ์กฐ
์บ์ฑ๊ธฐ๋ฒ : ์๋์ ์ผ๋ก ์ฉ๋์ด ์ ์ ๋น ๋ฅธ ์ ์ฅ์ฅ์น๋ฅผ ์ด์ฉํด ๋๋ฆฐ ์ ์ฅ์ฅ์น์ ์ฑ๋ฅ์ ํฅ์์ํค๋ ์ด์ฒด์ ๊ธฐ๋ฒ
9. ํ๋์จ์ด์ ๋ณด์
Mode bit
์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ์๋ชป๋ ์ํ์ผ๋ก ๋ค๋ฅธ ํ๋ก๊ทธ๋จ ๋ฐ ์ด์์ฒด์ ์ ํผํด๊ฐ ๊ฐ์ง ์๋๋ก ํ๊ธฐ ์ํ ํ๋์จ์ด์ ๋ณดํธ์ฅ์น
- 1 ์ฌ์ฉ์ ๋ชจ๋ : ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ ์ํ
- 0 ์ปค๋ ๋ชจ๋(=๋ชจ๋ํฐ๋ชจ๋, ์์คํ ๋ชจ๋) : os์ฝ๋ ์ํ
๋ชจ๋ ์ ์ถ๋ ฅ ๋ช ๋ น์ ํน๊ถ๋ช ๋ น์ผ๋ก ๊ท์ ํด์ ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ด ์ง์ ์ ์ถ๋ ฅ์ ํ๋ ๊ฒ์ ์ฐจ๋จํ๋ค
10. ๋ฉ๋ชจ๋ฆฌ ๋ณด์
ํ๋์ ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ด ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ์ฐธ์กฐ ์ฐ์ฐ์ ์๋ชป ์ฌ์ฉํด ๋ค๋ฅธ ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ด๋ ์ด์์ฒด์ ์ปค๋์ด ์์นํ ์์ต์ ์ฐธ์กฐํ๋ ค๋ ์๋๋ฅผ ํ ์ ์๋ค.
์ด๋ฌํ ์ํฉ์ ๋ฐฉ์งํ๊ธฐ ์ํด 2๊ฐ์ ๋ ์ง์คํฐ(๊ธฐ์ค๋ ์ง์คํฐ, ํ๊ณ๋ ์ง์คํฐ)๋ฅผ ์ด์ฉํ๋ค.
์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ ๊ธฐ์ค ๋ ์ง์คํฐ ~ ๊ธฐ์ค ๋ ์ง์คํฐ + ํ๊ณ ๋ ์ง์คํฐ ๊ฐ ์ฌ์ด์ ์ฃผ์ ์์ญ์๋ง ์ ๊ทผํ ์ ์๋ค.
โ ์ ๊ทผํ๋ ค๋ ์ฃผ์๊ฐ ์ ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ฉด ์์ธ์ํฉ ์ธํฐ๋ฝํธ๋ฅผ ๋ฐ์์ํจ๋ค.
- ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ์ฐ์ฐ์ ํน๊ถ๋ช
๋ น์ ์๋๋ค.
- ๋ค๋ง ์ฌ์ฉ์ ํ๋ก๊ทธ๋จ์ด ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ๊ธฐ ์ ํ๋์จ์ด ์ ์ผ๋ก ๊ทธ ์ ๊ทผ์ด ํฉ๋ฒ์ ์ธ์ง ์ฒดํฌํ์ฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ณดํธํ๊ฒ ๋จ.
- ๊ธฐ์ค ๋ ์ง์คํฐ์ ํ๊ณ ๋ ์ง์คํฐ์ ๊ฐ์ ์ธํ ํ๋ ์ฐ์ฐ์ ํน๊ถ๋ช ๋ น์ด๋ค.
11. cpu ๋ณดํธ
ํ์ด๋จธ(timer) : cpu๊ฐ ํ๋์ ํ๋ก๊ทธ๋จ์ ์ํด ๋ ์ ๋๋ ๊ฒ์ ๋ง๊ธฐ ์ํด ์ด์์ฒด์ ๊ฐ ์ฌ์ฉํ๋ ํ๋์จ์ด
ํ์ด๋จธ๋ ์๋ถํ ์์คํ ์์ ํ์ฌ ์๊ฐ์ ๊ณ์ฐํ๊ธฐ ์ํด์๋ ์ฌ์ฉ๋๋ค.
'๐์ปดํจํฐ๊ณผํ:CS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ด์์ฒด์ ]6์ฅ. cpu์ค์ผ์ค๋ง (2) | 2024.01.16 |
---|---|
[์ด์์ฒด์ ]5์ฅ - ํ๋ก์ธ์ค ๊ด๋ฆฌ (1) | 2024.01.05 |
[์ด์์ฒด์ ]4์ฅ-ํ๋ก๊ทธ๋จ์ ๊ตฌ์กฐ์ ์คํ (0) | 2023.06.20 |
[์ด์์ฒด์ ]2์ฅ-์ด์์ฒด์ ๊ฐ์ (0) | 2023.06.20 |
[์ด์์ฒด์ ]1์ฅ-์ปดํจํฐ ๋ฐ ์ ๋ณด๊ธฐ์ ์ ์ญ์ฌ (0) | 2023.06.20 |