달력

02

« 2012/02 »

  •  
  •  
  •  
  • 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
  •  
  •  
  •  
2008/02/19 20:41

인터럽트 사이클 General Tech.2008/02/19 20:41

Interrupt - 컴퓨터에서 프로그램 실행중에 CPU의 정상적인 처리를 방해하는 매커니즘

인터럽트의 예)
1,2,3,4,5,6,7,8,9, 순서로 프로그램을 실행한다고 가정한다.
1,2,3,4,5 까지 실행했는데 중간에 다른 프로그램을 실행한다.
그래서 1,2,3,4,5 -> 다른 프로그램실행 -> 6,7,8,9 순으로 실행되야 한다.
6,7,8,9 로 복귀하기 위해선 서비스 프로그램이 필요하며 우린 이것을 Interrupt Service Routine(ISR)이라 부른다.

인터럽트가 요구되었을 때 CPU의 동작 수행
1. 현재의 명령어 실행을 즉시 중단.
2. 다음에 실행할 명령어의 주소를 Stack에 저장.
3. 인터럽트 서비스 루틴을 호출하기 위해 루틴의 시작 주소를 PC에 적재

t0 : MBR ,- PC (PC의 내용을 MBR로 전송)
t1: MAR <- SP,PC <- ISR의 시작주소 (SP의 내용이 MAR로 전송)
t2: M[MAR] <-MBR (MBR에 저장된 원래의 PC 내용을 스택에 저장)
SP: 스택포인터

'General Tech.' 카테고리의 다른 글

Google Analytics Interface Tutorial  (0) 2008/02/22
Semantic Web Interface  (0) 2008/02/20
인터럽트 사이클  (0) 2008/02/19
간접사이클과 명령어 파이프라이닝  (0) 2008/02/19
명령어 인출 사이클과 실행 사이클  (0) 2008/02/18
SOA란?  (0) 2008/02/17
TAG
Posted by -세티-