๐interrupt(์ธํฐ๋ฝํธ)
- ์์ํ์ง ๋ชปํ, ์ธ๋ถ์์ ๋ฐ์ํ ์ด๋ฒคํธ
- ์ธํฐ๋ฝํธ ์ข
๋ฅ
- clock
- console
- program check
- I/O ๋ฑ
๐interrupt ์ฒ๋ฆฌ ๊ณผ์
- ์ธํฐ๋ฝํธ ๋ฐ์
- ํ๋ก์ธ์ค ์ค๋จ(์ปค๋ ๊ฐ์
)
- ์ธํฐ๋ฝํธ ์ฒ๋ฆฌ
3-1. ์ธํฐ๋ฝํธ ๋ฐ์ ์ฅ์, ์์ธ ํ์
(interrupt handling)
3-2. ์ธํฐ๋ฝํธ ์๋น์ค ์ฌ๋ถ ๊ฒฐ์ (interrupt handling)
3-3. ์ธํฐ๋ฝํธ ์๋น์ค ๋ฃจํด ํธ์ถ(interrupt service)
๐context์ ๊ดํด
๐context
- ํ๋ก์ธ์ค์ ๊ด๋ จ๋ ์ ๋ณด๋ค์ ์งํฉ
- cpu register context - cpu ๋ด๋ถ์ ์์น
- code & data, stack, PCB - memory์ ์์น
๐context saving
- ํ์ฌ ํ๋ก์ธ์ค์ register context๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ
- ์ธํฐ๋ฝํธ ๋ฐ์์ cpu์์ ์ซ๊ฒจ๋๊ณ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํด๋๋ ๊ฒ์
๐context restoring
- ๋ฉ๋ชจ๋ฆฌ์ register context๋ฅผ ํ๋ก์ธ์ค๋ก ๋ณต๊ตฌ
๐context switching = process switching
- ์์ saving, restoring ๊ณผ์ ์ ํฉ์ณ์ ๋ถ๋ฅด๋ ๋ง
- ์ปค๋์ ๊ฐ์
์ผ๋ก ์ด๋ฃจ์ด์ง
๐context switching overhead
- context switching์ ์๋ชจ๋๋ ๋ฉ๋ชจ๋ฆฌ์ ์๊ฐ์ ์๋ฏธ(๋น์ฉ, ์์)
- os์ ์ฑ๋ฅ์ ํฐ ์ํฅ์ ์ค๋ค
- ๋ถํ์ํ context switching์ ์ค์ด๋ ๊ฒ์ด ์ค์
- ํด๊ฒฐ๋ฐฉ๋ฒ thread ์ฌ์ฉ
์ธํฐ๋ฝํธ ๋ฐ์ ํ๋ก์ฐ
๐ฎ์ถ์ฒ : https://www.youtube.com/watch?v=hzXVQIlSSos&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN