우선 순위 인터럽트를 사용하면 컴퓨터에서 많은 프로그램을 동시에 실행할 수 있습니다.
이미지 크레디트: Jupiterimages/Photos.com/Getty Images
토스터 오븐을 실행하는 컴퓨터와 같은 일부 컴퓨터는 한 번에 하나의 작업을 수행하지만 데스크탑 PC, 스마트폰 및 메인프레임에는 여러 프로세스가 동시에 작동합니다. 컴퓨터는 한 프로그램이 일시적으로 다른 프로그램보다 우선권을 얻는 메커니즘인 시스템 인터럽트를 통해 이를 관리합니다. 중앙 처리 장치는 미리 결정된 작업 계층에 따라 다양한 종류의 인터럽트를 허용합니다.
여러 프로그램
CPU는 주어진 순간에 소수만 실행되지만 최신 PC, 스마트폰 또는 서버는 메모리에 여러 프로그램을 보유합니다. 대부분은 유휴 상태입니다. 프로그램에는 워드 프로세서, 스프레드시트 및 이메일과 같은 응용 프로그램, 다음과 같은 유틸리티 기능이 포함됩니다. 메모리 모니터와 인쇄 스풀러, 컴퓨터의 네트워크 카드, 키보드 및 스피커. 중요한 프로그램이 서비스를 필요로 하면 CPU에 인터럽트를 발생시켜 긴급한 작업을 처리하기 위해 진행 중인 다른 작업을 중지합니다. CPU는 다른 작업보다 우선 순위가 높은 경우에만 인터럽트를 처리합니다.
오늘의 비디오
하드웨어 인터럽트
하드 드라이브, 네트워크 카드, 프린터 및 기타 장치는 CPU의 주의를 끌기 위해 하드웨어 인터럽트를 발생시킵니다. 예를 들어, 프로그램은 하드 드라이브에서 데이터를 요청합니다. 이 작업은 약 10ms가 걸리지만 CPU가 중간에 다른 작업을 수행하는 데는 오랜 시간이 걸립니다. 하드 드라이브가 데이터를 찾으면 하드웨어 인터럽트를 발생시켜 CPU에 일시적으로 하던 일을 중지하고 데이터를 요청하는 프로그램에 전달하도록 지시합니다.
소프트웨어 인터럽트
프로그램은 컴퓨터의 운영 체제를 통해 특별한 요청을 처리하기 위해 소프트웨어 인터럽트를 발행합니다. 예를 들어, 워드 프로세서에서 날짜를 페이지 머리글에 붙여넣고 싶습니다. 워드 프로세서는 Microsoft Windows에서 날짜를 요청하는 소프트웨어 인터럽트를 발행합니다. Windows가 시스템 달력에서 날짜를 검색할 때 워드 프로세서가 잠시 기다립니다. 날짜가 준비되면 Windows는 워드 프로세서에 제어를 반환합니다. 소프트웨어 인터럽트는 상대적으로 낮은 우선 순위를 갖습니다. 날짜를 가져오는 동안 CPU가 하드 드라이브에서 요청을 받으면 CPU는 먼저 하드 드라이브 인터럽트를 처리한 다음 날짜 검색을 완료합니다.
CPU 트랩
운영 체제는 긴급 상황을 위해 우선 순위가 매우 높은 여러 인터럽트를 예약합니다. 예를 들어 프로그램의 데이터가 손상되어 충돌이 발생합니다. 운영 체제는 프로그램을 중지하고 화면에 경고 메시지를 표시하여 무슨 일이 일어났는지 알려주는 CPU 트랩을 발행합니다. 더 극단적인 경우에는 운영 체제 자체에 심각한 문제가 발생합니다. 진단 메시지를 표시하고 모든 처리를 중지하는 또 다른 CPU 트랩을 발행합니다.