1) 객관식 (1–18)
- 컴파일러가 일차적으로 번역하여 만든 파일은?
정답: ② 목적 코드
해설: 소스 → (컴파일) → 목적 코드 → (링크) → 실행 파일. - 컴파일에서 오류를 점검하였으나 라이브러리에 속한 파일은 비어 있는 상태로 만들어지는 것은?
정답: ② 목적 코드
해설: 컴파일 단계에선 참조만 남고, 구체 심볼 결합은 연결(링크) 단계에서 처리됩니다. - DLL(Dynamic Link Library/Loader)와 가장 연관이 깊은 것은?
정답: ④ 동적 라이브러리
해설: 실행 시점(또는 로드 시점)에 연결되는 라이브러리. - 메모리 유닛(MMU)이 물리 주소로 변환하는 것은?
정답: ③ 논리 주소
해설: CPU가 내는 논리(가상) 주소 → MMU → 물리 주소. - 논리 주소 공간의 74번지에 접근하려고 한다. 해당 프로세스가 물리 주소 124번지에 올라와 있다면 물리 주소 몇 번지에 접근하면 되는가?
정답: ④ 198
해설: 124 + 74 = 198. - 논리 주소 공간은 몇 번지부터 시작하는가?
정답: ③ 0
해설: 대부분 체계에서 논리 공간 시작은 0. - 물리 메모리의 크기보다 더 큰 프로세스를 실행할 수 있게 하는 기법은?
정답: ① 메모리 오버레이
해설: 고전적 방식. (현대적으론 VM의 페이징/세그먼트도 가능하지만, 본 문맥은 오버레이를 지칭.) - 메모리에서 쫓겨난 데이터가 옮겨가는 곳은?
정답: ④ 스왑
해설: 스왑 영역(백킹 스토어). - 저장장치에 존재하지만 ‘메모리 관리자’가 관리하는 곳은?
정답: ④ 스왑
해설: 스왑 공간은 OS 메모리 관리의 관할. - 가변 분할 방식과 가장 거리가 먼 것은?
정답: ③ 내부 단편화
해설: 가변 분할은 외부 단편화가 문제이고, 내부 단편화는 고정 분할/페이징 쪽 이슈. - 가변 분할 방식에서 서로 떨어져 있는 빈 메모리 영역을 하나로 통합하는 작업은?
정답: ① 조각 모음(Compaction) - 고정 분할 방식과 가장 거리가 먼 것은?
정답: ② 외부 단편화 - 가변 분할 방식에서 발생하는 것으로 작은 조각의 빈 메모리를 가리키는 것은?
정답: ② 외부 단편화 - 가변 분할 방식의 메모리 배치 방식 중 메모리에서 적재 가능한 공간을 순서대로 찾다가 첫 번째로 발견한 공간에 프로세스를 배치하는 것은?
정답: ③ 최초 배치 - 가변 분할 방식의 메모리 배치 방식 중 메모리의 빈 공간을 모두 확인한 후 크기가 가장 비슷한곳에 프로세스를 배치하는 것은?
정답: ② 최적 배치 - 가변 분할 방식의 메모리 배치 방식 중 빈 공간을 모두 확인한 후 가장 큰 공간에 프로세스를 배치하는 것은?
정답: ① 최악 배치 - 세그먼테이션의 특징과 가장 거리가 먼 것은?
정답: ③ 내부 단편화
해설: 세그먼트는 외부 단편화 우려가 큼. 내부 단편화는 페이징에서 흔함. - 페이징 메모리 관리 기법의 특징과가장 거리가 먼 것은?
정답: ② 외부 단편화
해설: 페이징은 내부 단편화가 생기고, 비연속 할당이 가능하여 외부 단편화는 회피.
2) 빈칸 채우기 (19–36)
- (캐시)는 미리 가져오기(prefetch)의 특징을 가진 저장장치다.
- (스왑)는 CPU 안에 존재하는 것으로 메모리에 접근하기 전에 먼저 살펴보는 저장장치다.
- (목적 코드)는 컴파일러가 일차적으로 번역하여 만든 파일이다.
- (링커)에서는 각자 만든 소스코드를 컴파일해서 만들어진 목적 코드를 주고받아서 다시 컴파일한다.
- (동적 라이브러리, DLL)은 실행할 때 함수 코드가 삽입되는 라이브러리이다.
- 메모리 관리 유닛은 (논리 주소)를 물리 주소로 변환한다.
- 물리 메모리 주소 (0)번지부터 시작한다.
- (메모리 오버레이)는 물리 메모리의 크기보다 더 큰 프로세스를 실행할 수 있게 하는 기법이다.
- (스왑)은 메모리에서 쫓겨난 데이터들이 옮겨가는 곳이다.
- (스왑인)은 데이터가 스왑 영역에서 메모리로 올라오는 것을 말한다.
- (스왑 아웃)은 데이터가 메모리에서 스왑 영역으로 옮겨 가는 것을 말한다.
- (스왑 영역)은 저장장치에 존재하지만 메모리 관리자가 관리한다.
- (외부 단편화)는 가변 분할 방식에서 발생하는 단편화다
- (내부 단편화)는 고정 분할 방식에서 발생하는 단편화다.
- 가변 분할 방식의 메모리 배치 방식 중 (최초 배치)는 메모리에서 적재 가능한 공간을 순서대로 찾다가 첫 번째로 발견한 공간에 프로세스를 배치하는 방법이다.
- 가변 분할 방식의 메모리 배치 방식 중 (최적 배치)는 메모리의 빈 공간을 모두 확인한 후 크
기가 가장 비슷한 곳에 프로세스를 배치하는 방법이다. - 가변 분할 방식의메모리 배치방식중 (최악 배치)는 공간을 모두 확인한 후 가장 큰 공간에
프로세스를 배치하는 방법이다. - 세그먼테이션 메모리 관리 방식은 프로세스를 하나의 덩어리로 취급하기 때문에 (연속)할당 방식이다.
3) 서술형 (37–41)
37. 컴파일 과정
소스 코드가 어휘/구문 분석을 거쳐 중간 표현으로 변환되고, 최적화 후 목적 코드가 생성됩니다. 그다음 여러 목적 코드와 라이브러리를 연결(링크)하여 실행 파일을 만듭니다. 동적 연결을 쓰면 일부 심볼은 실행(로딩) 시점에 해결됩니다.
38. 동적 라이브러리(DLL)
프로그램과 분리 배포되며, 로드/실행 시점에 결합됩니다. 장점은 메모리 공유(여러 프로세스가 동일 DLL 코드 공유), 업데이트 용이성, 실행 파일 크기 축소. 단점은 런타임 의존성, 버전 충돌(일명 DLL Hell) 가능성.
39. 메모리 오버레이
메모리가 부족할 때 프로그램을 기능적 단위로 분할하여, 동시에 필요하지 않은 부분을 교대로 적재/해제하는 고전 기법입니다. 개발자가 수동으로 영역을 설계해야 하는 번거로움이 있으나, 물리 메모리보다 큰 프로그램 실행이 가능해집니다.
40. 스왑(Swap)
프로세스/페이지 등을 보조기억장치의 스왑 영역과 주기억장치 사이에서 입·출력(swap-in/out) 하는 기법입니다. 메모리 압박을 완화하고 다중 프로그래밍 수준을 높이지만, 과도하면 스래싱으로 성능이 급락합니다.
41. 가변 분할 방식
프로세스 크기에 맞춰 동적 크기의 연속 영역을 할당합니다. 장점은 내부 단편화 감소, 단점은 시간이 지날수록 외부 단편화가 누적되므로 조각 모음(compaction) 이 필요할 수 있습니다. 배치 전략은 최초/최적/최악 배치가 대표적입니다.
출처 : 조성호 , 『IT CookBook, 쉽게 배우는 운영체제(2판)』한빛아카데미(2023).
'COMPUTER SCIENCE > OS' 카테고리의 다른 글
| [쉽게 배우는 운영체제 2판] 8장 연습문제 (0) | 2025.05.23 |
|---|---|
| [쉽게 배우는 운영체제 2판]8. 가상 메모리의 기초 (0) | 2025.05.23 |
| [쉽게 배우는 운영체제 2판] 7. 물리 메모리 관리 (0) | 2025.05.21 |
| [쉽게 배우는 운영체제 2판] 6장 연습문제 (0) | 2025.04.16 |
| [쉽게 배우는 운영체제 2판] 6. 교착 상태 (0) | 2025.04.16 |