1 minute read

스레싱과 프레임 할당

- 스레싱
    - 스레싱의 개념

        하드디스크의 입출력이 너무 많아져서 잦은 페이지 부재로 작업이 멈춘 것 같은 상태

    - 물리 메모리의 크기와 스레싱

        멀티프로그래밍 정도가 증가할 수록 CPU 사용률은 증가되고 스레싱 발생할 확률이 높아짐

        물리 메모리를 늘릴 수록 스레싱 발생 지점에 늦게 도달함

    - 스레싱과 프레임 할당

        스레싱은 각 프로세스에 프레임을 할당하는 문제와 연관됨

        - 정적 할당

            프로세스 실행 초기에 프레임을 나누어준 후 그 크기를 고정하는 방식

            - 균등 할당

                프로세스의 크기와 상관없이 사용 가능한 프레임을 모든 프로세스와 동일하게 할당

                프로세스의 프레임 요구 수에 따라 페이지 부재가 빈번히 발생하거나 메모리 낭비가 발생할 수 있음

            - 비례 할당

                프로세스의 크기에 비례하여 프레임을 할당하는 방식

                프로세스가 실행 중에 필요로 하는 프레임을 유동적을 반영하지 못 함

                사용하지 않을 메모리를 처음부터 미리 확보하여 메모리 낭비

        - 동적 할당

            프로세스를 실행하는 중에 프레임을 나누어주기도 하고 회수하기도 하는 방식

            - 작업집합 모델

                최근 일정 시간 동안 참조된 페이지들을 집합으로 만들고 이 집합에 있는 페이지들을 물리 메모리에 유지하여 프로세스의 실행을 돕는 방식

                시간적 지역성 이론을 바탕으로 함

                어떤 프레임을 물리 메모리에 유지해야 하는 지는 알 수 있지만 프로세스에 프레임을 얼마나 할당해야 하는지는 알 수 없어 스레싱 문제 해결 못 함

                - 작업집합 크기

                    물리 메모리에 유지하는 페이지의 크기

                    작업집합에 들어갈 최대 페이지 수

                    얼마나 자주 작업집합을 갱신할 것인지도 의미함

                - 작업집합 윈도우

                    작업집합에 포함되는 페이지의 범위

                    현재 시점에 최대 어느 범위까지의 페이지를 살펴볼 것인가를 결정하는 것

                    크기에 따라 프로세스의 실행 성능이 달라짐

                    너무 크게 잡으면 필요없는 페이지가 메모리에 남음

                    너무 작게 잡으면 필요한 페이지가 스왑 영역으로 옮겨져서 프로세스의 성능이 떨어짐

            - 페이지 부재 빈도

                페이지 부재 횟수를 기록하여 페이지 부재 비율을 계산하는 방식

                페이지 부재 비율의 상한선과 하한선을 설정하여 프레임을 추가하거나 회수함

                할당량 예측이 힘들기 때문에 프로세스를 실행하면서 조절함

Categories:

Updated: