티스토리 뷰
지난 포스트에서 말한 인터럽트를 사용자가 정의할 수도 있지만 이걸 효율적으로 제어할 수 있는 장치가 바로 Programmable Interrupt Controller(PIC)이고, 여기서 나오는 출력에는 IRQ 몇번이라는 이름이 붙어있다. 보통 컴퓨터가 고장났을 때 오류정보속에 포함되어있는 IRQ에 대한 정보를 확인해보면 어느 부분에서 문제를 일으키는 지를 확인할 수 있다. 일일이 컴퓨터를 분해해보는게 아닌 것이다.
인터럽트나 예외를 처리하고 난 후에는 이전에 수행하던 상태로 돌아가야 하기 때문에 애초에 인터럽트에 진입할 때부터 그 때의 상태를 저장해야 하는데 이걸 context라고 한다. 그래서 초기 인터럽트 발생시에는 context를 저장하고 핸들러를 수행 후에 다시 context를 load 하는 일련의 과정을 거치게 된다. 책에서는 이 과정을 Interrput Service Routine(ISR)로 표현하고 그중 핸들러 부분은 c언어로 구현했다.
위의 이미지는 ISR중 32번으로 정의한 Real Time Clock 에 대한 인터럽트가 걸리는지를 확인해보고 있고, 실제로 테스트 해보면 매 프레임마다 RTC가 발생하기 때문에 숫자가 갱신 되는 것을 확인할 수 있었다.
'Study > OS' 카테고리의 다른 글
[Site] osdev.org (0) | 2013.01.25 |
---|---|
[OS] Mint64OS 15절 Console Shell 생성 (0) | 2013.01.25 |
[OS] Mint64OS 14절 Queue를 이용한 키보드 입력 (0) | 2013.01.24 |
[OS] Mint64OS 12절 Interrput 처리를 위한 테이블 삽입 (0) | 2013.01.23 |
[OS] Mint64OS 11절 Keyboard Device Driver (0) | 2013.01.22 |
[OS] Mint64OS Read CPUID (0) | 2013.01.18 |
[OS] Mint64OS 9절 Enable Paging (0) | 2013.01.18 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- PowerPoint
- Variance
- arduino
- 강화학습
- reward
- ai
- Expression Blend 4
- Kinect for windows
- SketchFlow
- processing
- Pipeline
- Off-policy
- Policy Gradient
- 한빛미디어
- Windows Phone 7
- Kinect SDK
- 파이썬
- bias
- RL
- Distribution
- Offline RL
- End-To-End
- Gan
- DepthStream
- ColorStream
- Kinect
- TensorFlow Lite
- dynamic programming
- windows 8
- 딥러닝
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함