2015년07월19일 32번
[임의구분] 다음 중 스택이 사용되는 경우는 언제인가?
- ① 스풀을 실행할 때
- ② DMA 요구가 받아들여졌을 때
- ③ 브랜치 명령이나 무조건 분기 명령이 실행될 대
- ④ 인터럽트가 발생하여 서비스 프로그램의 수행이 필요할 때
(정답률: 53%)
문제 해설
스택은 함수 호출과 반환에 사용되는 자료구조로, 함수 호출 시 호출한 함수의 정보를 저장하고 반환 시 저장된 정보를 꺼내 사용합니다. 인터럽트가 발생하여 서비스 프로그램의 수행이 필요할 때는 현재 실행 중인 프로그램의 상태를 저장하고 인터럽트 처리를 위한 서비스 프로그램을 실행해야 합니다. 이때 스택을 사용하여 현재 실행 중인 프로그램의 상태를 저장하고, 서비스 프로그램을 실행한 후 다시 스택에서 저장된 상태를 꺼내 복원합니다. 따라서 인터럽트가 발생하여 서비스 프로그램의 수행이 필요할 때 스택이 사용됩니다.