반응형

컴퓨터에서 있어서 인터럽션이라는것 굉장히 중요하다고 할 수 있습니다. 오버팅 시스템은 컴퓨터 시스템의 생산성을 제고시킬 수 있도록 하는데 그 목적이 있습니다. 따라서 만일 컴퓨터에 예기치 않은 오류가 발생하더라도 컴퓨터의 작동은 중단되지 않고 계속 업무처리를 할 수 있도록 해야 합니다.

 

인터럽트란?

이와 같이 인터럽트의 정의는 어떤 경우에도 계속 업무를 처리하도록 해주는 것이 바로 인터럽트입니다. 즉 어떤 처리 프로그램의 실행 중에 제어 프로그램의 서비스를 요구하는 예기치 못한 일이 발생하였을 경우에 이러한 상태를 하드웨어로 포착해서 감시 프로그램에게 제어권을 인도하기 위한 기능이 인터럽트입니다. 인터럽트가 발생하여 제어권이 제어 프로그램에 주어지면 제어 프로그램 중 준비된 인터럽트 처리가 됩니다. 이와 같은 시스템 상태의 변화 즉 시시각각으로 변하는 시스템의 상태를 하드웨어가 자동적으로 확인하는데 이 시스템이 변화하는 내용을 기록하는 별한 워드를 프로그램 상황워드라고 합니다. 그리고 인터럽트의 종류에는 다음과 같은것들이 있습니다.

 

1. 기계 착오 인터럽트

기계 착오 인터럽트는 어떤 프로그램 실행중에 착오로 인해서 발생하는것입니다. 기계에 착오가 발생하였을 경우에 인터럽트가 일어나 제어 프로그램에게 제어권이 이양됩니다. 이때 제어프로그램 내의 인터럽트 루틴이 중앙처리 장치의 제어권을 인도받아서 필요한 진단이나 착수 수정의 처리를 수행한 후에 제어권을 다시 처리 프로그램에 되돌려 주는것입니다. 이와 같이 기계의 기능상에 착오로 발생하는 인터럽트를 기계 착오 인터럽트라고 합니다.

 

2. 외부인터럽트

외부 인터럽트는 오퍼레이터가 필요로 의해서 콘솔 위에 있는 인터럽트 키를 누르는 경우가 있습니다. 이러한 동작은 오퍼레이터가 시스템에 어떤 요구나 응답할 때 필요한것입니다. 이와 같이 인터럽트 키를 누름으로써 인터럽트가 발생하여 오퍼레이터가 필요한 내용의 명령을 손으로 조작할수 있습니다. 이처럼 외부로부터의 신호에 의하여 발생하는 인터럽트를 외부 인터럽트라고 합니다.

 

3. 프로그램 인터럽트

프로그램 인터럽트는 프로그램 실행중에 프로그램상의 착오나 예외 상태가 발생하였을 경우에 일어나능 니터럽트입니다 .예를 들면 계산에서 0으로 나눈다고 한다던지 연산의 결과가 오버플로우가 발생하였을 경우입니다. 이러한 경우에도 인터럽트에 의하여 제어 프로그램내의 인터럽트 처리 루틴에 의해서 실행이 됩니다. 즉 프로그램 인터럽트는 프로그램 상의 착오나 예외 상황이 발생하였을 경우에 발생한다고 보시면 됩니다.

 

4. 입출력 인터럽트

중앙 처리장치는 입출력 조작의 개시를 명령하는 것 뿐이며 실제로 입출력 조작을 지시하는것은 채널이라고 보시면 됩니다. 그러므로 채널이 입출력 조작을 함과 동시에 병행해서 중앙처리 장치는 다른 처리를 하게 됩니다. 이때 입출력 조작이 끝나거나 입출력착오가 발생하게 되면 CPU의 서비스가 필요해지므로 채널이 인터럽트 신호를 보내게 됩니다. 다시 말해서 인터럽트라는 수단에 의하여 현재 실행되어 있는 처리 프로그램으로부터 제어프로그램으로 CPU의 제어권이 인도됩니다. 이로 인하여 제어프로그램 중의 입출력 인터럽트 처리 루틴이 실행됩니다. 이와 같이 입출력 조작의 종료나 입출력 착오로 의하여 발생하는 인터럽트를 입출력 인터럽트라고 합니다.

 

5. 제어프로그램 인터럽트

제어 프로그램 호출 인터럽트는 시스템에 의하여 자동적으로 발생하는 인터럽트와는 달리 프로그램 내에서 특정한 서비스를 요구하는 명령으로 인터럽트를 일으키는 경우가 있습니다. 이는 제어프로그램 호출 명령을 실행했을때 발생하게 됩니다. SVC 명령이 끝나서 다른 일로 옮기려고 한다든지 입출력 조작을 요구할 필요가 있을 경우 등입니다.

 

이상으로 인터럽트의 정의와 종류에 대해서 설명해드렸습니다. 여러분들에게 인터럽트가 무엇인지 잘 설명되는 내용이였을면 좋겠습니다.

반응형

'생활정보' 카테고리의 다른 글

IMB 컴퓨터의 역사  (0) 2021.01.25
디지털 카메라의 대중화  (0) 2021.01.25
컴퓨터 인터럽션의 정의와 종류  (0) 2021.01.23
레이어2란? 스위치 사용 이유  (0) 2021.01.22
빅데이터란 무엇인가요?  (0) 2021.01.22
무선네트워크와 IoT의 관계  (0) 2021.01.22
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기

댓글을 달아 주세요

">