인터럽트(Interrupt)란?
인터럽트란 프로그램 실행중에 입출력장치나 예외상황이 발생하여 처리가 필요할 때
cpu에게 알려서 진행중인 작업을 중단하고 해당 문제를 먼저 처리할 수 있도록 하는과정을 말한다
인터럽트의 종류
하드웨어 인터럽트
전류공급의 문제나 입출력 요청이 있는것과 같은 하드웨어적인 오류로 인한 인터럽트를 말한다
소프트웨어 인터럽트(트랩)
프로그램상의 오류나 예외발생 또는 의도적으로 발생시킨 인터럽트를 말한다
인터럽트가 이루어지는 과정
인터럽트 발생시 CPU는 현재 실행중인 프로그램의 상태를 레지스터 메모리에 저장한다
인터럽트의 원인이 무엇인가를 찾아낸 다음 인터럽트 처리 루틴을 실행시킨다
저장해놓은 원래 상태를 복구시킨다
'Study > reversing' 카테고리의 다른 글
prob1.c 핸드레이 (0) | 2017.09.19 |
---|---|
abex Crackme 1번 Line By Line (0) | 2017.09.19 |
코드의 흐름을 변경하는 어셈블리어 명령에 대해 알아보자 (0) | 2017.08.24 |
함수의 호출 : 스택 프레임과 규약 그리고 프롤로그&에필로그 (0) | 2017.08.24 |
브레이크 포인트(Break Point)를 알아보자 (0) | 2017.08.24 |