You are on page 1of 4

1/4

운영체제[43반] 기말시험 (2021학년도 1학기, 2021/06/03)

☆ 답안지의 각 페이지 상단에 본인 소속 학과명, 학번, 이름을 정자체로 기재하세요.


☆ 답안 역시 누구나 알아볼 수 있도록 정자체로 작성하기 바랍니다.
☆ 시험문제는 총 4페이지 5개 문항입니다.

⑴ 아래와 같은 parameter를 갖는 demand paging system에서 한 프로세스 P의 residence


PMT(page map table)가 오른쪽 표에서와 같다고 가정하고 물음에 답하시오. p# pf#
bit
이 시스템의 main memory는 byte-addressable인 것으로 가정한다. 0 0 4
(1KB = 1,024Bytes) 1 1 8
2 1 3
■ Physical memory size: 2GBytes 3 1 2
■ Logical(Virtual) memory size: 4GBytes 4 0 6
■ Page size: 2KBytes 5 0 5
... ... ...
① 이 시스템에서 physical address에 필요한 최소 bit 수는 얼마인가?
② 이 시스템에서 logical(virtual) address에 필요한 최소 bit 수는 얼마인가?
③ 이 시스템의 page frame 크기는 얼마인가?
④ 이 시스템의 physical address에서 page frame을 지정하기 위해 몇 bit가 사용되는가?
⑤ 이 시스템의 virtual address에서 page number를 지정하기 위해 몇 bit가 사용되는가?
⑥ 이 시스템의 virtual address에서 displacement(offset)을 위해 몇 bit가 사용되는가?
⑦ 이 시스템의 process가 갖는 PMT의 entry 개수는 최대 몇 개인가?
⑧ 이 시스템에서 inverted page table을 사용할 경우 이 table의 entry 개수는 몇 개인가?
⑨ 프로세스 P가 virtual address 10,000번지에 접근했을 때 이에 대한 real address는? 질문에 답할 수 없
는 경우에는 어떤 현상이 발생하는지 설명하시오.
⑩ 프로세스 P가 virtual address 5,000번지에 접근했을 때 이에 대한 real address는? 질문에 답할 수 없는
경우에는 어떤 현상이 발생하는지 설명하시오.


2/4

⑵ 64-bit 가상주소공간을 가지는 시스템에서 페이징 기법을 사용하여 메모리를 관리한다고 가정한다. 페이지
크기가 4KBytes 이고, 페이지 테이블의 하나의 엔트리 크기가 4Bytes 라고 할 때, 다음 물음에 답하시오.
(단, 1KB = 1,024Bytes)
① Hierarchical paging 기법을 사용하되, 최상위(top-level) 페이지 테이블이 하나의 페이지 내에 저장되도
록 할 때 페이지 테이블의 깊이(level 수)가 최소 얼마가 되어야 하는지 구하시오.
② 이 시스템이 TLB(Translation Look-aside Buffer)를 사용한다고 가정하고, TLB 접근 시간이 10ns, 메모리
(주기억장치) 접근시간이 200ns 라고 가정하자. 메모리 데이터에 대한 평균 접근시간(effective access
time)이 330ns 이하가 되도록 하기 위한 TLB 평균 hit ratio를 구하시오. (단, 전체 페이지 테이블은 메
모리에 존재한다고 가정하며, TLB 갱신시간은 무시한다.)

⑶ 다음의 page reference string ω에 대해 아래의 5가지 page replacement 기법을 사용했을 때 발생하는
page fault 횟수를 각각 구하시오. 단, ① ~ ④ 문항의 4가지 기법에 대해서는 3개의 page frame이 할당되
었다고 가정하며, 초기에 3개의 페이지 프레임들이 모두 비어 있음을 가정한다. 또한, ⑤ 문항의 WS 기법
에 대해서는 window size 3을 가정하며, 초기 페이지 프레임 할당량은 0으로 가정한다.
■ 아래 페이지 참조열에서 지수 표현은 해당 부분참조열(substring)의 반복 횟수를 의미한다.

즉,   은 부분참조열 (12)가 100번 반복(121212․․․12) 참조됨을 의미한다.)
■ LFU 기법의 경우 같은 참조 횟수를 갖는 교체대상 페이지들이 존재할 경우 이들에 대해서는 LRU 기법을
따르는 것으로 한다.

      (12가 100회 반복된 후 3456이 200회 반복, 그리고 그 후 789가 400회 반복)

① FIFO(First In First Out)


② LRU(Least Recently Used)
③ MRU(Most Recently Used)
④ LFU(Least Frequently Used)
⑤ WS(Working Set)


3/4

⑷ 오른쪽 표에 보인 특성을 갖는 hard disk storage를 Parameter Value


가정하고 물음에 답하시오. 단, 모든 track의 sector Average seek time 6 ms
개수는 같다고 가정하며, 데이터를 읽고자 하는 첫 Rotational rate 12,000 rpm
번째 sector에 disk head를 위치시키는 초기 과정에 # of platters 8
Average seek time + Average latency time이 필요 # of sectors per track 16,384
하다고 가정한다. Sector size 512 Bytes
Disk capacity 512 GBytes

① 이 hard disk storage의 총 cylinder 개수는 몇 개인가?

② 이 hard disk storage에 sequentially contiguous 하게 저장된 4MB 파일을 처음부터 모두 읽는데 소요
되는 최소 시간은 얼마인가? (ms 단위로 답하시오)

③ 이 hard disk storage에 randomly discontiguous 하게 저장된 4MB 파일을 처음부터 모두 읽는데 소요
되는 시간은 얼마인가? (ms 단위로 답하시오)
4/4

⑸ 오른쪽 그림은 Linux ext2 file system의 disk layout을


보여주고 있다. 이 시스템의 block size가 4KBytes,
inode size가 256Bytes라 가정하고 아래 물음에 답하시
오(1KBytes = 1,024Bytes).

① 이 시스템의 각 block group의 data block 개수는 최대 몇 개인가?

② 각 file에 대해 file data를 해당 inode와 함께 한 block group에 저장한다고 가정할 때 이 시스템의 한


block group에 저장될 수 있는 파일의 최대 개수는 몇 개인가?

③ 이 시스템의 각 block group의 inode tables 영역에 필요한 block 개수는 최대 몇 개인가?

④ 이 시스템의 inode에서는 file data block pointer 15개(12개의 direct pointers, 각 1개씩의
single/double/triple indirect pointer)를 사용한다. 32-bit block pointer를 사용한다고 가정하고, 이 시스
템에 저장될 수 있는 파일의 최대 크기는 얼마인가?

⑤ 이 시스템에서 크기가 60,000Bytes인 파일을 처음부터 끝까지 순차적으로 읽는다고 가정할 때 접근해야
하는 스토리지 block의 개수는 몇 개인가? 단, 해당 파일의 inode는 미리 주기억장치에 load 되어 있고,
indirect block 및 data block들은 주기억장치에 적재되지 않은 상황을 가정한다.

⑥ 이 시스템에서 어떤 파일의 offset 100,000부터 4,000Bytes의 데이터를 읽을 때 접근해야 하는 스토리


지 block의 개수는 몇 개인가? 단, 해당 파일의 inode는 미리 주기억장치에 load 되어 있고, indirect
block 및 data block들은 주기억장치에 적재되지 않은 상황을 가정한다.

끝. 수고했습니다.

You might also like