2023. 3. 25. 15:52ใComputerScience/OperatingSystem
Interrupt handler
- ์ธํฐ๋ฝํธ๋ฅผ ํด๊ฒฐํ๋ func
- ISR (interrupt service routine)
- ์ธํฐ๋ฝํธ ๋ฐ์! -> ์ด์์ฒด์ ๊ฐ ์ํ๋จ
โญ๏ธ ์ธํฐ๋ฝํธ์ 3๊ฐ์ง ์ข ๋ฅ
1) Interrupt
- Hardware interrupt
- asynchronous - ๋น๋๊ธฐ๋ก ์ฒ๋ฆฌ๋๋ค.
- CPU๋ ์ด ์์ (์ธํฐ๋ฝํธ)๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์๋๋ค -> ๋ค๋ฅธ ์์ ์ํ -> ๋ค์ ๋์์ด == acync
- ex) ํค๋ณด๋ ์ธํฐ๋ฝํธ, timer interrupt
2) Trap
- Software interrupt
- Application process
- Sync ๋๊ธฐ์ ์ผ๋ก ์ฒ๋ฆฌ๋๋ค.
- ex) System Call
-> App์ด ๋์คํฌ์์ ๋ฐ์ดํฐ ์ฝ์ด๋ฌ๋ผ๊ณ OS์๊ฒ ๋์ ์์ฒญ (์บก์ํ, ์ธํฐํ์ด์ค ์ธก๋ฉด)
-> OS๊ฐ ์ฌ ๋ ๊น์ง App์ ๊ธฐ๋ค๋ ค์ผ ํ๋๊น ๋๊ธฐ
3) Fault (Exception)
- ๋น์ ์์ ์ธ ์ํฉ์์ CPU๊ฐ ์๊ธฐ ์์ ์๊ฒ ์ธํฐ๋ฝํธ๋ฅผ ๊ฑด๋ค
- CPU instructions -> interrupt handler (== OS)
- ex) 0์ผ๋ก ๋๋๊ธฐ, ์ฐธ์กฐํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ์ฐธ์กฐ ๋ฑ CPU๊ฐ ์ฒ๋ฆฌํ ์ ์๋ ๋ช ๋ น์ด
'ComputerScience > OperatingSystem' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ด์์ฒด์ ] Synchronization in Swift (0) | 2023.04.17 |
---|---|
[์ด์์ฒด์ ] CFS in Linux (0) | 2023.04.10 |
[์ด์์ฒด์ ] GPGPU for Deep Learning (0) | 2023.04.02 |
[์ด์์ฒด์ ] CPU์ Architecture _ SMP vs NUMA vs Clustered system (0) | 2023.03.25 |
[์ด์์ฒด์ ] ์ปดํจํฐ ๊ตฌ์กฐ ๋ฐ ์ด์์ฒด์ ๊ฐ์ / Kernel / System Call (0) | 2023.03.25 |