[정보처리기사실기] 가상기억장치 / 페이지 부재 / 페이지 교체 알고리즘

    반응형

    3과목. 운영체제

    📒 03. 가상기억장치


    1. 가상기억장치

    (1) 가상기억장치의 개념

    • 보조기억장치(하드디스크)의 일부를 주기억장치처럼 사용하는 기법
    • 주기억장치의 용량이 적더라도 가상기억장치를 통해 큰 용량처럼 사용할 수 있음

    (2) 블록 분할 방법

      • a) 페이징 기법
        - 가상기억장치를 모두 같은 크기의 블록으로 편성하여 운용하는 기법
        - 크기가 고정되어 있기 때문에 각각의 영역들이 분리될 수 있음
        - 외부 단편화를 발생하지 않지만, 내부 단편화는 발생
        페이지 크기 기억장소 효율 단편화 입출력 시간 맵 테이블
        클수록 감소 증가 감소 감소
        작을수록 증가 감소 증가 증가
      • b) 세그멘테이션 기법
        - 가상 메모리를 크기가 다른 논리적 단위인 세그먼트로 분할하고 메모리를 할당하는 기법 (가변분할)
        - 내부 단편화는 발생하지 않지만, 외부 단편화가 발생

        세그먼테이션 기법 주소 변환 방법

        ① 가상 주소의 변위값과 세그먼트의 크기 비교
             ex) S=(2,100) 일 때 가상 주소의 변위값인 100과 2번 세그먼트의 주소 1000을 비교

        ② 변위값이 작거나 같으면 기준번지와 변위값을 더해 주기억장치에 접근
             ex) 1000보다 100이 작으므로, 시작주소인 2000과 변위값 100을 더해 실제 주소 2100에 접근

        ③ 변위값이 크면 다른 영역을 침범하므로 실행 권한을 운영체제에 넘기고 트랩 발생

     

    2. 가상기억장치 기타 관리사항

    (1) 페이지 부재

    • 프로세스 실행 중 필요한 페이지가 주기억장치에 없는 상황

    (2) 지역성(Locality)

    - 프로세스가 실행되는 동안 주기억장치에서 일부 페이지만 집중적으로 참조하는 성질
    - 페이지 부재를 줄이기 위함

    • a) 시간 구역성(Temporal Locality)
      - 하나의 페이지가 짧은 시간 동안 집중적으로 참조
    • b) 공간 구역성(Spatial Locality)
      - 특정 위치의 페이지들을 집중적으로 참조 (배열 순회)

    (3) 워킹 셋(Working Set)

    • 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합
    • 참조할 것들을 같이 묶음

    (4) 스래싱(Thrashing)

    • 프로세스 처리 시간보다 페이지 교체에 소요되는 시간이 더 많아지는 현상
    • CPU가 프로세스를 처리하는 시간보다 입출력하는 시간이 더 걸리는 작업

     

    3. 페이지 교체 알고리즘

    (1) FIFO(First In First Out)

    • a) 의미
      - 가장 먼저 메모리에 적재된 페이지를 먼저 교체하는 기법
    • b) 예시
      - 페이지 프레임이 3개일 때, 페이지 결함 예 (배치 상태 : 5,1,2 / 부재 횟수 : 7번)
      참조 페이지 1 2 3 1 2 4 1 2 5
      페이지 프레임
      (Memory)
      1 1 1 1 1 4 4 4 5
        2 2 2 2 2 1 1 1
          3 3 3 3 3 2 2
      페이지 부재 O O O X X O O O O

    (2) OPT(Optimal replacement, 최적 교체)

    • 예상을 해서 미래에 가장 오랫동안 사용되지 않을 페이지를 교체하는 기법
    • 이론적으로는 페이지 부재 횟수를 최소화하지만, 실제 구현에서는 미래의 페이지 참조를 예측하기 어려움

    (3) LRU(Least Recently Used)

    • a) 의미
      - 가장 오랫동안 사용되지 않은 페이지를 교체하는 기법
    • b) 예시
      - 페이지 프레임이 3개일 때, 페이지 결함 예 (배치 상태 : 3,2,5 / 부재 횟수 : 5번)
      참조 페이지 1 2 4 3 2 4 3 2 5
      페이지 프레임
      (Memory)
      1 1 1 3 3 3 3 3 3
        2 2 2 2 2 2 2 2
          4 4 4 4 4 4 5
      페이지 부재 O O O O X X X X O

    (4) LFU(Least Frequntly Used)

    • a) 의미
      - 사용 빈도가 가장 적은 페이지를 교체하는 기법
    • b) 예시
      - 페이지 프레임이 3개일 때, 페이지 결함 예 (배치 상태 : 1,2,5 / 부재 횟수 : 5번)
      참조 페이지 1 2 3 1 2 4 1 2 5
      페이지 프레임
      (Memory)
      1 1 1 1 1 1 1 1 1
        2 2 2 2 2 2 2 2
          3 3 3 4 4 4 5
      페이지 부재 O O O X X O X X O

    (5) NUR(Not Used Recently)

    • a) 의미
      - 각 페이지마다 참조 비트와 변형 비트를 사용하여 최근 사용 여부 확인
      - 참조되지 않고, 수정되지 않은 페이지를 우선적으로 교체하는 기법
    • b) 예시
      - 가장 먼저 교체될 페이지는 1번, 나중에 교체될 페이지는 4번
      번호 1 2 3 4
      참조비트 0 0 1 1
      변형비트 0 1 0 1

    (6) SCR(Second Chance Replacement)

    • FIFO의 단점을 보완하는 기법으로, 가장 오래된 페이지 중에서도 자주 사용되는 페이지의 교체 방지

     

    더보기

    가상기억장치는 주기억장치를 가상적으로 사용하는 것

    보조기억장치에 프로그램을 설치함 ram은 한정적인 공간을 가지고 있기 때문에 많은 프로그램을 실행시킬 수 없음 그래서 가상기억장치를 만듦

     

    참고자료

    흥달쌤,  '흥!나게 합격 달성! 2024 정보처리기사 실기 클래스'
     

    1억뷰 N잡

    [1회 연장 포함] 흥!나게 합격 달성! 2024 정보처리기사 실기 클래스

    www.njobler.net

    반응형

    댓글