스택은 주로 함수 호출과 관련된 작업에서 사용되며, 함수 호출 시에 현재 실행 중인 함수의 상태를 저장하고, 함수가 종료되었을 때 저장된 상태를 복원하기 위해 사용됩니다. 또한, 인터럽트가 발생할 경우에도 현재 프로그램의 상태를 저장하고, 인터럽트 서비스 루틴을 실행한 후 다시 원래 프로그램으로 복귀할 수 있도록 상태를 복원하는 데 사용됩니다. 이러한 과정에서 스택이 사용되므로, 인터럽트가 발생하여 서비스 프로그램의 수행이 필요할 때 스택이 사용됩니다. 따라서 선택 4가 맞습니다.