Software Courses/Operating System

[Memory] Other considerations

김 정 환 2020. 12. 13. 12:26
반응형

Page size

    - 적당한 크기가 좋음

page가 작을 경우 page가 클 경우
page table이 큼
: page 수가 많아서
page table이 작음
: page 수가 작아서 
내부 단편화 감소
: 프로그램을 잘랐을 때 꼬투리가 적게 생성
내부 단편화 증가
: 프로그램을 잘랐을 떄 꼬투리가 많이 생성
I/O 시간 증가
: 많은 page를 읽기 때문에
I/O 시간 감소
: 적은 page를 읽기 때문에
Locality 향상
: 사용하지 않는 영역을 적게 포함하여 가져오기 때문에
Locality 저하
: 사용하지 않는 영역을 많이 포함해서 가져오기 때문에
page fault 증가
: page를 여러 번 가져오기 때문에
page fault 감소
: page를 여러 번 가져오지 않기 때문에

 

    - 최근 경향 : page size가 증가하는 추세

        * why? CPU와 memory의 성능 향상으로 disk와의 gap이 점차 커지고 있습니다. 이때, page size가 작으면 데이터 전송에 병목 현상이 발생하기 때문에 I/O 시간이 증가하여 전체 시스템 성능이 저하됩니다. 따라서 이를 해결하기 위해서 CPU와 memory의 성능 향상에 따라 page size도 증가하고 있습니다.

 

 

 

Programming restructuring

    - 가상 메모리 시스템의 특성에 맞도록 프로그램을 재구성

    - 사용자가 가상 메모리 관리 기법에 대해 이해하고 있다면, 프로그램의 구조를 변경하여 성능을 높일 수 있음

 

    - 예시 1

        * program 1 처럼 코드를 작성하면, j를 먼저 보게 되므로 row부터 보게 됩니다. 그렇게 되면 매번 page fault가 발생합니다.

 

   - 예시 2

        * program 2 처럼 코드를 작성하면, i를 먼저 보게 되므로 column부터 보게 됩니다. 그렇게 되면 행을 이동할 때만 page fault가 발생하게 됩니다.

 

 

 

TLB Reach

    - TLB를 통해 접근할 수 있는 메모리의 양

    - The number of entries of TLB * the page size

 

    - TLB의 hit ratio는 높으면 좋음

        * TLB의 크기를 증가 시키면 되지만 비쌈

        * Page의 크기를 증가 시키면 되지만 문제가 많음. 따라서 상황에 맞에 page size를 바꾸는 전략 사용

 

 

 

본 내용은 한국기술교육대학교 김덕수 교수님의 유튜브 강의를 듣고 정리한 내용입니다.
반응형

'Software Courses > Operating System' 카테고리의 다른 글

File System  (0) 2020.12.13
Disk System  (0) 2020.12.13
[Memory] Replacement strategies  (0) 2020.12.12
[Memory] Virtual memory management  (0) 2020.12.12
[Memory] Hybrid paging segmentation system  (0) 2020.12.10