링커, 로더, 실행 파일
프로세스의 힙과 스택을 사이에 넓은 빈 공간을 두고 서로 반대 방향으로 늘어나도록 배치할 때의 이점으로 올바른 것은?
- A어느 쪽이 얼마나 쓸지 미리 알 수 없어도 빈 공간을 양쪽이 유연하게 나누어 쓸 수 있다
- B힙과 스택이 같은 주소를 동시에 쓸 수 있으므로 메모리가 두 배가 된다
- C스택이 넘치는 일이 절대 없어진다
정답과 해설 보기
정답: A. 어느 쪽이 얼마나 쓸지 미리 알 수 없어도 빈 공간을 양쪽이 유연하게 나누어 쓸 수 있다
힙은 주소가 큰 쪽으로, 스택은 작은 쪽으로 늘어나므로, 사이의 빈 공간은 힙을 많이 쓰는 프로그램에도 스택을 많이 쓰는 프로그램에도 사용할 수 있습니다. 각각에 고정된 크기를 할당하면 한쪽이 남아도 다른 쪽이 넘칠 수 있습니다. 다만 스택에는 상한이 설정되어 있는 경우가 많아, 너무 깊은 재귀는 상한을 넘어 스택 오버플로가 됩니다.
- A. 올바릅니다. 가상 주소 공간을 효율적으로 사용할 수 있습니다.
- B. 같은 주소를 동시에 사용할 수는 없습니다.
- C. 깊은 재귀 등에서는 스택이 넘칩니다.