본문 바로가기
반응형

운영체제55

Ch09. 가상 메모리 관리_04)스레싱과 프레임 할당 프로세스 적재 정책 (스래싱) 메인 메모리에 상주하는 프로세스 수 → 다중 프로그래밍 수준 메모리에 상주할 프로세스 수를 결정하는 것은 메모리 관리측면에서 매우 중요함 메인 메모리에 너무 적은 프로세스가 상주하면 프로세스 대기상태 자주발생 이를 해결하기 위해 페이지 교체작업을 하면 시스템 효율성 저하원인 메인 메모리에 많은 수의 프로세스가 상주하면 프로세스들이 차지하는 평균 페이지 감소로 페이지 부재가 자주 발생함 스레싱 스레싱(threshing) 개념 페이지 교환이 계속 일어나는 현상 어떤 프로세스에 프레임이 충분하지 않다면 할당된 프레임을 최소 프레임 수까지 줄일 수 있다하더라도 실제 사용하는 프레임 수만큼 갖지 못하면 빈번하게 페이지 부재가 발생 가능 기타 자원 부족으로 필요한 연산을 수행할 수 없.. 2023. 6. 13.
Ch09. 가상 메모리 관리_03)페이지 교체 알고리즘 페이지 교체 알고리즘 페이지 교체 알고리즘의 개요 스왑 영역으로 보낼 페이지를 결정하는 알고리즘 메모리에서 앞으로 사용할 가능성이 적은 페이지를 대상 페이지로 선정하여 페이지 부재를 줄이고 시스템의 성능을 향상 페이지 교체 알고리즘의 성능 평가 기준 어떤 알고리즘이 다른 알고리즘보다 성능이 좋은지 평가하는 데에는 다양한 비교 방법이 있음 같은 메모리 접근 패턴을 사용하여 페이지 부재 횟수와 페이지 성공 횟수를 비교 모든 페이지 교체 알고리즘은 그림처럼 메모리 접근순서를 사용하고 물리메모리는 3개의 프레임을 가졌다고 가정 상단의 숫자는 메모리 접근순서를 나타내며, 페이지는 번호대신 알파벳을 사용함 무작위 페이지 교체 알고리즘 (random page replacement algorithm) 페이지 교체 알고.. 2023. 6. 13.
Ch09. 가상 메모리 관리_02)요구페이징 요구페이징 요구페이징 개요 컴퓨터를 오래 켜 두면 시스템이 느려지는 이유는 작업을 하지 않고 쉬는 프로세스나 좀비 프로세스가 메모리를 차지해 메모리 관리가 복잡해지기 때문 메모리에는 꼭 필요한 프로세스만 유지하는 것이 좋음 운영체제는 프로세스를 구성하는 모듈을 전부 메모리에 올리지 않음 필요한 모듈만 메모리에 올려 실행하고 나머지 모듈은 필요할 때 메모리로 불러옴 프로세스 일부만 메모리로 가져오는 이유 메모리를 효율적으로 관리하기 위해, 메모리가 가득차면 관리하기 어려우므로 적은 양의 프로세스만 유지 응답속도 향상을 위해, 용량이 큰 프로세스를 전부 메모리로 가져와 실행하면 응답이 늦어져 필요한 모듈만 올려 실행 예) 포토샵 프로그램(본 프로그램 및 외부필터, 피부보정필터, 노이즈 제거필터 등) 이처럼 .. 2023. 6. 12.
Ch09. 가상 메모리 관리_01)가상 메모리의 이해 가상 메모리의 개념과 원리 페이징으로 구현한 가상메모리 메인 메모리와 캐시 사이에서 데이터를 이동할 때는 캐시의 공간 지역성을 최대한 활용하려고 메모리의 데이터를 캐시 라인 크기만큼 올려놓는다. 따라서 라인은 캐시가 메인 메모리에서 데이터를 가져오는 크기가 됨 가상 메모리의 이해 사용자와 논리적 주소를 물리적으로 분리하여 사용자가 메인 메모리 용량을 초과한 프로세스에 주소를 지정해서 메모리를 제한 없이 사용할 수 있도록 하는 것 프로그램 전체를 동시에 실행하지 않으므로 요구한 메모리 전체가 아닌 일부만 적재해도 실행 가능 활동 영역을 메인 메모리에 유지하면서 필요할 때는 디스크와 메모리 사이에 프로세스 코드와 데이터 저장, 다시 자동으로 전송하는(스왑 인, 스왑 아웃) 과정을 거쳐 프로세스를 재할당, 디.. 2023. 6. 12.
[심화]Ch08. 가상 메모리의 기초_05)캐시 매핑 기법 교재를 참고하였습니다. 캐시 직접 매핑 캐시 직접 매핑 메모리의 블록이 캐시로 올라올 때 항상 같은 위치에 올라옴 캐시는 메모리의 어떤 블록에서 올라온 페이지인지만 확인 CPU가 메모리에 접근하려는 주소 는 로 바꿀 수 있고, 원하는 데이터를 캐시에 얻기 위해 를 사용 태그 : 캐시에 블록 번호를 명시하는 것 bdblock distance : 블록에서의 거리를 의미 캐시 직접 매핑의 예 현재 캐시의 00 위치에 lion, chicken, tuna, snake 중 어떤 데이터가 올라왔는지 확인하기 위해 캐시에서는 태그를 유지 태그는 메모리 주소의 앞 2bit에 해당하는 값으로, 어떤 블록에서 올라온 데이터인지를 나타냄 CPU가 메모리 워드 1101의 cobra를 필요로 하는 경우 CPU는 캐시의 01 위치.. 2023. 6. 11.
Ch08. 가상 메모리의 기초_04)세그먼테이션-페이징 혼용 기법 교재를 참고하였습니다. 세그먼테이션-페이징 혼용 기법 페이징 기법은 물리 메모리를 동일한 크기로 나누어 관리하기 때문에 메모리 관리가 단순한 반면, 페이지 테이블의 크기가 큼 세그먼테이션 기법은 맵핑 테이블의 크기를 작게 유지할 수 있으나 물리 메모리의 단편화로 추가적인 관리가 불가피함 메모리 접근 권한 메모리의 특정 번지에 저장된 데이터를 사용할 수 있는 권한 읽기(read), 쓰기(write), 실행(execute), 추가(append) 권한이 있음 프로세스의 영역별 메모리 접근 권한 프로세스는 몸체에 해당하는 코드 영역, 프로세스가 사용하는 데이터를 저장하는 데이터 영역, 프로세스를 실행하는데 필요한 스택 영역, 프로세스 제어블록 (PCB)으로 구성됨 코드 영역 : 자기 자신을 수정하는 프로그램은 .. 2023. 6. 10.
반응형