본문 바로가기
반응형

운체36

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.
Ch08. 가상 메모리의 기초_03)세그먼테이션 기법 교재를 참고하였습니다. 세그먼테이션 기법의 구현 세그먼테이션 기법 가변 분할 방식을 이용한 가상 메모리 관리 기법으로, 물리 메모리를 프로세스 크기에 따라 가변적으로 나누어 사용 세그먼테이션 테이블segmentation table 세그먼트의 크기를 나타내는 limit와 물리 메모리상의 시작 주소를 나타내는 address가 있음 프로세스 크기에 따라 메모리를 분할하기 때문에 매핑 테이블에 크기 정보를 포함 각 세그먼트가 자신에게 주어진 메모리 영역을 넘어가면 안 되기 때문에 세그먼트의 크기 정보에는 크기를 뜻하는 size 대신 제한을 뜻하는 limit를 사용 세그먼테이션 기법에서도 물리 메모리가 부족할 때 스왑 영역을 사용 크기가 100B인 프로세스 D(세그먼트 3)가 스왑 영역에 있고, 세그먼테이션 테이.. 2023. 6. 9.
Ch08. 가상 메모리의 기초_02)페이징 기법(2) 페이징 시스템의 하드웨어 구조와 원리 16비트 논리적 주소 IBM 370의 논리적 주소 (32비트) 페이지 테이블을 이용한 물리적 주소 변환 예 8바이트 페이지와 64바이트 메모리 페이징 예 다중 단계 페이징 시스템의 구조와 원리 원리 논리적 주소가 클수록 물리적 주소로 변환하는 과정에서 필요한 페이지 테이블 크기도 증가 하므로 메모리에 더 큰 적재 공간 필요 다중 단계 페이징 시스템 예 : VAX와 윈도우 NT는 2단계, 스팍SPARC은 3단계, 모토로라Motorola 68030은 4단계 페이징 시스템 사용 2단계 페이징 시스템의 구조 페이지 테이블의 구현 페이지 테이블과 페이지 테이블 항목 페이지 테이블 관리 방법 전용 레지스터 사용 레지스터는 효율적으로 페이징 주소를 변환하려고 초고속 논리회로로 설.. 2023. 6. 8.
반응형