5. 가상 메모리, 페이지 테이블, TLB

난이도 중 해설 보기 →
문제

문제 5 — 가상 메모리, 페이지 테이블, TLB

면접 질문

  1. "가상 메모리(virtual memory)"가 무엇이고, 운영체제가 가상 주소 공간을 제공함으로써 얻는 이점(격리, 연속성 착시, 메모리 초과 사용 등)을 설명해보세요.

  2. 가상 주소가 물리 주소로 변환되는 과정을 설명해보세요. 페이지(page)와 프레임(frame)의 관계, 페이지 테이블(page table)의 역할, 그리고 일반적인 페이지 크기를 말해보세요.

  3. TLB(Translation Lookaside Buffer)란 무엇이며 왜 필요한가요? TLB 미스가 나면 어떤 일이 벌어지고(페이지 워크), 멀티레벨 페이지 테이블에서 그 비용이 왜 커지나요?

응용 시나리오

게임 서버에서 거대한 맵 데이터(수 GB)를 통째로 메모리에 올려 두고, 플레이어들이 여기저기 흩어진 좌표의 타일 정보를 무작위(random access)로 자주 조회합니다. 그런데 이 조회 루프가 예상보다 느리고, 프로파일러는 "메모리 대역폭은 한가한데 주소 변환/페이지 관련 비용이 크다"고 가리킵니다.

  • 왜 무작위 접근이 TLB 관점에서 불리한지, 그리고 TLB 미스가 어떻게 성능을 갉아먹는지 설명해보세요.
  • "huge page(대용량 페이지)"를 도입하면 무엇이 어떻게 개선되는지, 어떤 트레이드오프가 있는지 논해보세요.
  • 데이터 배치(접근 패턴을 지역화)나 접근 순서를 바꿔 TLB·캐시 효율을 올리는 방법을 제안해보세요.
답안 작성
내 답안 · 자동 저장

직접 답을 작성한 뒤, 위 해설 보기에서 모범답안과 대조하세요.