2023 국가직9급 정보보호론 19번 해설 — 스택 프레임
정답 ④번출제 쟁점 스택 프레임발문 옳은 것 고르기
문제
함수 P에서 호출한 함수 Q가 자신의 작업을 마치고 다시 함수 P로 돌아가는 과정에서의 스택 버퍼 운용 과정을 순서대로 바르게 나열한 것은? (가) 스택에 저장되어 있는 복귀 주소(return address)를 pop한다. (나) 스택 포인터를 프레임 포인터의 값으로 복원시킨다. (다) 이전 프레임 포인터 값을 pop하여 스택 프레임 포인터를 P의 스택 프레임으로 설정한다. (라) P가 실행했던 함수 호출(function call) 인스트럭션 다음의 인스트럭션을 실행한다
- ① (가) →(나) →(다) →(라)
- ② (가) →(다) →(라) →(나)
- ③ (나) →(가) →(라) →(다)
- ④ (나) →(다) →(가) →(라) ← 정답
선지별 해설
① (가) →(나) →(다) →(라)
이 선지 진술은 틀림(X)
일반적인 함수 에필로그는 스택 포인터 복원, 이전 프레임 포인터 복원, 복귀 주소 사용, 호출 다음 명령 실행 순서로 이해한다.
② (가) →(다) →(라) →(나)
이 선지 진술은 틀림(X)
복귀 주소를 사용하기 전에 현재 함수의 스택 포인터와 이전 프레임 포인터를 복원해야 한다. 그 뒤 호출 지점 다음 명령이 실행된다.
③ (나) →(가) →(라) →(다)
이 선지 진술은 틀림(X)
스택 포인터를 프레임 포인터 값으로 복원한 뒤 이전 프레임 포인터를 먼저 꺼내 호출자의 프레임을 회복한다. 그 다음 복귀 주소를 사용한다.
④ (나) →(다) →(가) →(라)
이 선지 진술은 옳음(O)
현재 함수의 스택 프레임을 먼저 정리한 뒤 복귀 주소로 제어를 옮기고, 호출한 함수의 다음 명령을 실행한다.
핵심 요약 (Q&A)
- Q. 2023 국가직9급 정보보호론 19번의 핵심 쟁점은 무엇인가?
- A. 2023 국가직9급 정보보호론 19번은 스택 프레임에 관한 문항으로, "옳은 것"을 고르는 문제입니다.
- Q. 2023 국가직9급 정보보호론 19번의 정답은?
- A. 정답은 ④번입니다. 현재 함수의 스택 프레임을 먼저 정리한 뒤 복귀 주소로 제어를 옮기고, 호출한 함수의 다음 명령을 실행한다.