-
[Operating System] ๋ฒํผ, ์บ์, ์ธํฐ๋ฝํธOperating System 2020. 9. 3. 00:51๋ฐ์ํ
- ์ด ๊ธ์ '์ฝ๊ฒ ๋ฐฐ์ฐ๋ ์ด์์ฒด์ ' ์ฑ ์ ์ฐธ๊ณ ํ์ฌ ์์ฑํ์์ต๋๋ค.
์์คํ ๋ฒ์ค์ CPU ๋ด๋ถ ๋ฒ์ค
- ์์คํ ๋ฒ์ค : ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ๋ณ ์ฅ์น๋ฅผ ์ฐ๊ฒฐํ๋ ๋ฒ์ค Front side Bus
- CPU ๋ด๋ถ ๋ฒ์ค : CPU ๋ด๋ถ์ ์๋ ์ฅ์น(Register, Control Unit, ALU) ๋ฅผ ์ฐ๊ฒฐํ๋ ๋ฒ์ค๋ก Back Side Bus
๋ฐ๋ผ์ ๋ฉ๋ชจ๋ฆฌ ์๋๋ ์์คํ ๋ฒ์ค ์๋์ ๊ฐ๊ณ CPU ์๋๋ CPU ๋ด๋ถ ๋ฒ์ค ์๋์ ๊ฐ์๋ฐ, CPU ๋ด๋ถ ๋ฒ์ค์ ์๋๊ฐ ์์คํ ๋ฒ์ค์ ์๋๋ณด๋ค ๋น ๋ฅด๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋น๋กฏํ ์ฃผ๋ณ์ฅ์น์ ์๋๊ฐ CPU ์๋๋ฅผ ๋ฐ๋ผ๊ฐ์ง ๋ชปํ๋ค. ์ด๋ฌํ ์ฅ์น ๊ฐ์ ์๋ ์ฐจ์ด๋ฅผ ๊ฐ์ ํ๊ณ ์์คํ ์์ ์๋๋ฅผ ์ฌ๋ฆฌ๊ธฐ ์ํ ๊ฐ๋ฐ๋ ๊ธฐ์ ์ ์์์ผ ํ๋ค.
๋ฒํผ
- ๋ฒํผ(Buffer)๋ ์๋์ ์ฐจ์ด๊ฐ ์๋ ๋ ์ฅ์น ์ฌ์ด์์ ๊ทธ ์ฐจ์ด๋ฅผ ์ํํ๋ ์ญํ ์ ํ๋ค.
- ๋๋ฆฐ ์ ์ถ๋ ฅ์ฅ์น์์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ฉ ์ ์กํ๋ฉด ์์ ๋์ ๋นํด ์ ์ก๋๋ ์์ด ๋งค์ฐ ์ ์ง๋ง, ์์๋ก ์ผ์ ๋์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์ ํ๊บผ๋ฒ์ ์ ์กํ๋ฉด ์ ์ ์์ ๋์ผ๋ก ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธธ ์ ์๋ค.
- ์ํํธ์จ์ด์ ์ผ๋ก ์ฃผ๋ก ์ฐ์ด๋ ๊ณณ์ ๋์์ ์คํธ๋ฆฌ๋ฐ
ex) ๋คํธ์ํฌ์์ ๋ฐ์ดํฐ ๋ค์ด์ฌ ๋ ์ผ์ ๋ถ๋ถ์ ๋ฒํผ์ ๋ฃ์ ํ ์คํ
์คํ
- ๋ฒํผ์ ๋น์ทํ ์ฉ์ด๋ก ์คํ์ CPU์ ์ ์ถ๋ ฅ์ฅ์น๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ๋์ํ๋๋ก ๊ณ ์๋ ์ํํธ์จ์ด์ ์ธ ๋ฒํผ
- ๋ํ์ ์ธ ์๋ก ํ๋ฆฐํฐ์ ์ฌ์ฉ๋๋ ์คํ๋ฌ
- ์คํ๋ฌ๋ ์ธ์ํ ๋ด์ฉ์ ์์ฐจ์ ์ผ๋ก ์ถ๋ ฅํ๋ ์ํํธ์จ์ด๋ก ์ถ๋ ฅ ๋ช
๋ น ๋ด๋ฆฐ ํ๋ก๊ทธ๋จ๊ณผ ๋
๋ฆฝ์ ์ผ๋ก ๋์
์บ์
์บ์๋ ๋ฉ๋ชจ๋ฆฌ์ CPU ๊ฐ์ ์๋ ์ฐจ์ด๋ฅผ ์ํํ๊ธฐ ์ํด ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ๋ฏธ๋ฆฌ ๊ฐ์ ธ์ ์ ์ฅํด๋๋ ์์ ์ฅ์์ด๋ค.
ํ์ํ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์ ํ๊บผ๋ฒ์ ์ ๋ฌํ๋ ๋ฒํผ์ ์ผ์ข ์ผ๋ก CPU๊ฐ ์์ผ๋ก ์ฌ์ฉํ ๊ฒ์ผ๋ก ์์๋๋ ๋ฐ์ดํฐ๋ฅผ ๋ฏธ๋ฆฌ ๊ฐ์ ธ๋ค ๋๋๋ค. ๋ฏธ๋ฆฌ ๊ฐ์ ธ๋๋ ์์ ์ Prefetch๋ผ๊ณ ๋ถ๋ฅธ๋ค.
- ์บ์๋ CPU ์์ ์์ผ๋ฉฐ CPU ๋ด๋ถ ๋ฒ์ค์ ์๋๋ก ์๋ํ๋ค. ๋ฐ๋ผ์ ์์คํ ๋ฒ์ค์์ ์๋ ์ฐจ์ด๋ฅผ ์ํํด์ค๋ค.
- ์บ์๋ ๋ฉ๋ชจ๋ฆฌ ๋ด์ฉ ์ค ์ผ๋ถ๋ฅผ ๋ฏธ๋ฆฌ ๊ฐ์ ธ์ค๊ณ , CPU๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ ๋ ์บ์๋ฅผ ๋จผ์ ๋ฐฉ๋ฌธํ๋ค.
- ์บ์์ ์ํ๋ ๋ฐ์ดํฐ๊ฐ ์์ ๊ฒฝ์ฐ๋ฅผ ์บ์ ํํธ(cache hit)๋ผ๊ณ ํ๋ฉฐ ๊ทธ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ค.
- ์บ์์ ์ํ๋ ๋ฐ์ดํฐ๊ฐ ์์ ๊ฒฝ์ฐ๋ฅผ ์บ์ ๋ฏธ์ค(cache miss)๋ผ๊ณ ํ๋ฉฐ ๋ฉ๋ชจ๋ฆฌ๋ก ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๋๋ค.
- ์บ์๊ฐ ์ ์ค๋๋ ๋น์จ์ ์บ์ ์ ์ค๋ฅ ์ด๋ผ๊ณ ํ๋ฉฐ, ์ผ๋ฐ์ ์ธ ์ปดํจํฐ์ ์บ์ ์ ์ค๋ฅ ์ 90%์ด๋ค.
์ฆ์ ์ฐ๊ธฐ์ ์ง์ฐ ์ฐ๊ธฐ
์บ์๋ ๋ฉ๋ชจ๋ฆฌ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์์๋ก ๊ฐ์ ธ์จ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์บ์์ ์๋ ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ๋๋ฉด ๋ฉ๋ชจ๋ฆฌ์ ์๋ ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํด์ผ ํ๋ค.
์ฆ์ ์ฐ๊ธฐ
- ์บ์์ ์๋ ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ๋๋ฉด ์ฆ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ํ๋ ๋ฐฉ์
- ๋ฉ๋ชจ๋ฆฌ์์ ๋น๋ฒํ ๋ฐ์ดํฐ ์ ์ก์ผ๋ก ์์คํ ์ฑ๋ฅ ๋๋ ค์ง
- ๋ฉ๋ชจ๋ฆฌ ์ต์ ๊ฐ ์ ์ง๋ก ์ธํด ๊ธ์์ค๋ฌ์ด ์ ์ ์๋ ๋ฐ์ดํฐ ์์ค ์ํ ์์
์ง์ฐ ์ฐ๊ธฐ
- ์ฆ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ณ๊ฒฝํ๋ ๊ฒ์ด ์๋ ๋ณ๊ฒฝ๋ ๋ด์ฉ์ ๋ชจ์์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ฐ์ํ๋ ๋ฐฉ์ ( copy back)
- ๋ฉ๋ชจ๋ฆฌ์์ ๋ฐ์ดํฐ ์ ์ก ํ์๊ฐ ์ค์ด ์์คํ ์ฑ๋ฅ ํฅ์
- ๋ฉ๋ชจ๋ฆฌ์ ์บ์๋ ๋ฐ์ดํฐ ์ฌ์ด ๋ถ์ผ์น ๋ฐ์
์ธํฐ๋ฝํธ
ํด๋ง ๋ฐฉ์ : CPU๊ฐ ์ ์ถ๋ ฅ์ฅ์น์ ์ํ๋ฅผ ์ฃผ๊ธฐ์ ์ผ๋ก ๊ฒ์ฌํ์ฌ ์ผ์ ํ ์กฐ๊ฑด์ ๋ง์กฑํ ๋ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌ
์ด๊ธฐ์ ์ปดํจํฐ ์์คํ ์ ์ฃผ๋ณ์ฅ์น๊ฐ ๋ง์ด ์์ CPU๊ฐ ์ง์ ๊ด์ฌํด์ผ ํ๋ฏ๋ก ์์ ํจ์จ์ด ๋จ์ด์ง
์ธํฐ๋ฝํธ ๋ฐฉ์ : ์ค๋๋ ์ปดํจํฐ์๋ ๋ง์ ์ฃผ๋ณ์ฅ์น๊ฐ ์์ด CPU์ ์์ ๊ณผ ์ ์ฅ์ฅ์น์ ๋ฐ์ดํฐ ์ด๋์ ๋ ๋ฆฝ์ ์ผ๋ก ์ด์
์ธํฐ๋ฝํธ ๋ฐฉ์์ ๋์ ๊ณผ์
- CPU๊ฐ ์ ์ถ๋ ฅ ๊ด๋ฆฌ์์๊ฒ ์ ์ถ๋ ฅ ๋ช ๋ น ๋ณด๋ธ๋ค.
- ์ ์ถ๋ ฅ ๊ด๋ฆฌ์๋ ๋ช ๋ น๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ ๊ฐ์ ธ๋ค ๋๊ฑฐ๋ ๋ฉ๋ชจ๋ฆฌ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ์ฅ์น๋ก ์ฎ๊ธด๋ค.
- ๋ฐ์ดํฐ ์ ์ก ์๋ฃ ์ ์ ์ถ๋ ฅ ๊ด๋ฆฌ์๋ ์๋ฃ ์ ํธ(์ธํฐ๋ฝํธ) ๋ฅผ CPU์ ๋ณด๋ธ๋ค.
์ธํฐ๋ฝํธ ๋ฐฉ์์์๋ ๋ง์ ์ฃผ๋ณ์ฅ์น ์ค ์ด๋ค ๊ฒ์ด ์์ ์ด ๋๋ฌ๋์ง๋ฅผ CPU์ ์๋ ค์ฃผ๊ธฐ ์ํด ์ธํฐ๋ฝํธ ๋ฒํธ ์ฌ์ฉ, ์ด์์ฒด์ ๋ง๋ค ๋ฒํธ๋ ๋ค๋ฅด๋ค.
์ง์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ
- ๋ช ๋ น ๋ฐ์ ์ ์ถ๋ ฅ ๊ด๋ฆฌ์๋ CPU๊ฐ ์์ฒญํ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ๊ฐ์ ธ๋ค ๋์์ผ ํ๋๋ฐ ๋ฌธ์ ๋ฐ์
- ๋ฉ๋ชจ๋ฆฌ๋ CPU๋ง ์ ๊ทผ ๊ถํ ๊ฐ์ง ๊ณต๊ฐ์ด๋ผ ์ ์ถ๋ ฅ ๊ด๋ฆฌ์๋ ์ ๊ทผ ๋ถ๊ฐ
- ๋ฐ๋ผ์ ์ ์ถ๋ ฅ ๊ด๋ฆฌ์์๊ฒ CPU์ ํ๋ฝ ์์ด ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ ์ ์๋ ๊ถํ์ ์ง์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ(DMA)๋ผ๊ณ ํ๋ค.
- ์ถ๊ฐ๋ก ๊ถ๊ธํ ์ ์ด๋ ์์ ํ ๋ถ๋ถ ์์ผ๋ฉด ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์ธ์.
๋ฐ์ํ'Operating System' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Operating System] ํ๋ก์ธ์ค์ ๊ฐ์, ์ํ (0) 2020.09.09 [Operating System] ๋ณ๋ ฌ์ฒ๋ฆฌ, ํ์ดํ๋ผ์ธ, ์ํผ์ค์นผ๋ผ (2) 2020.09.03 [Operating System] ๋ฉ๋ชจ๋ฆฌ์ ์ข ๋ฅ์ ๋ถํ (0) 2020.09.02 [Operating System] CPU์ ๊ตฌ์ฑ๊ณผ ๋์, ํฐ๋ ธ์ด๋ง ๊ตฌ์กฐ (0) 2020.09.02 [Operating System] ์ด์์ฒด์ ์ ๊ตฌ์กฐ (8) 2020.09.01