** 기말고사 대비용 / 개인 요약
학습목표
1. 가상 메모리의 개념과 주소 변환에 대하여 설명 할 수 있다.
2. 페이징 기법과 세그먼테이션 기법에서의 주소 변환 과정을 설명할 수 있따.
3. 요구 페이지 호출기법과 예상 페이지 호출기법을 설명할 수 있다.
4. 다양한 페이지 교체기법들을 설명할 수 있다.
주요용어
가상주소, 페이징 기법, 세그먼테이션 기법, 동적주소변환,
Belady의 이상현상(anomaly), 국부성, 워킹세트, 쓰래싱(thrashing)
7.1 가상 메모리의 개념
가상 메모리(virtual memory)는 컴퓨터 시스템의 메모리 크기보다
더 큰 기억 공간이 필요한 프로세스를 실행할 수 있게 하는 방법
실행중인 프로세스 에 의해 참조되는 주소를 메모리에서 사용하는 주소와 분리하는 것
전체 프로그램 및 데이터 중 현재 필요한 일부만 메모리에 적재함으로써 프로세스의 수행 가능
가상주소(virtual address) : 실행 프로세스가 참조하는 주소
물리적 주소 (virtual address) : 실제 메모리에서 사용 하는 주소 (실주소 (real address))
프로세스는 오직 가상주소만을 참조하지만, 실제로 메모리(real memory) 에서 실행 되어야 하므로
프로세스가 실행 되려면 가상주소는 실주소로 변환 되어야한다.
이 변환 과정을 '사상(mapping)' 이라고 하며 변환 함수로 표시
사상(mapping)
- 가상 주소 >>> 실 주소 변환
- 동적 주소 변환(DAT) : 프로세스가 실행되는 동안 사상
- 인위적 연속성 >> 가상주소 공간에서는 연속 o, 실주소 공간에서는 연속 x
- 빨리 수행되지 않으면 컴퓨터의 수행 성능 저하될 수 있음
7.2 블록 단위 주소 변환
동적 주소 변환 (DAT) 방법은
가상 메모리에서의 위치가 현재 메모리의 어디에 위치하는지를 나타내는
주소 변환 사상표(address translation mapping table)를 유지하여야 한다.
- 블록 단위로 분류하여 각 블록이 메모리의 어디에 위치하는지를 관리
- 블록 사상 시스템의 주소는 두부분으로 구성하고, 프로그램이 들어있는 블록과
- 블록의 시작 부분으로부터 항목까지의 변위를 지정(displacement) 한다
- 가상 주소= ( 블록번호, 블록 내 변위) >>>> v =( b , d)
블록 구성 방식에 따른 분류
• 페이징 기법: 블록의 크기가 동일한 페이지로 구성
• 세그먼테이션 기법: 블록의 크기가 서로 다른 세그먼트로 구성
7.2.1 페이징 기법
페이징 기법 : 페이지로 나누어 관리하는 기법
페이지(page) : 가상 메모리를 고정된 크기의 블록
페이 플레임 (page frame) : 메모리 영역도 가상 메모리와 동일하게 고정 된 크기의 블록
가상 주소 V = ( p , d )
p 는 페이지 번호 , d 는 페이지 p의 시작 위치로부터의 변위
ex ) 가상 메모리상 a 는 3번 페이지안에 있고, 3번 페이지 시작 위치로 부터 8byte 만큼 떨어져있다.
이때, a 의 가상주소 v= ( 3 , 8 )
페이지 사상표 (mapping table) :
가상주소의 페이지 번호에 대한 실주소의 페이지 프레임 번호를 저장
가상주소를 실 주소로 동적 변환하기 위해 필요
ex ) a 위치 v = ( 3 , 8) 을 동적 주소 변환하기
( p' = 페이지프레임번호)
가상주소 v = ( 페이지번호 p , 페이지내 변위 d ) 를 가지므로, 페이지 번호가 3, 변위 8을 가진다.
위의 페이지 사상표에서 3에 대한 위치를 찾고, 사상표에 저장된 페이지 프레임 번호(p') 5 를 찾을 수 있다.
실주소 5번 페이지 프레임에 변위 8 만큼더한 곳이 a 의 실주소가 되고, 페이지 크기가 M 일때 5M + 8 이 된다.
( 페이지와 페이지 프레임의크기가 동일 하므로 페이지 내 변위 8은 그래로 사용 가능)
직접 사상 : 페이지 사상표를 직접 이용 (위의 방법)
연관 사상 : 연관 기억장치에 저장한 연관 사상표를 이용
연관기억장치 : 저장된 값으로 데이터를 액서스하는 고속 메모리 장치
연관 / 직접 사상
일반적으로는 두 방법을 같이 사용.
연관/ 직접 사상은 연관 사상표에는 가장 최근에 참조된 페이지 항목만 보관하고
나머지는 페이지 사상표에 수록하여 연관 사상표가 없을 떄 직접 사상 기법으로 구현
7.2.2 세그먼테이션 기법
세그먼트 : 가상 메모리를 논리적 의미에 맞는 다양한 크기의 세그먼트 단위로 나누어 관리
세그먼테이션 기법에서 가상 주소 v = ( s, d )
s 는 세그먼트 번호 , d 세그먼트 s의 시작 위치로부터의 변위
세그먼트 사상표 : 가상주소의 세그먼트 번호에 대한 실주소에서의 시작 위치가 저장
세그먼트가 현재 메모리에 존재하는지 여부의 비트값과
보조기억장치에서의 위치 정보, 세그먼트의 길이도 같이 저장
세그먼트 시작 주소 : 메모리에서의 시작위치
세그먼트 길이 : 오버플로 확인용
강의 보면서 맨날 졸면서 보고는 했는데,,,,
교수님을 탓했엇는데,,,,,
아니였어,,,,,,,,,
그냥 어려운거야!!!
9강 제7장 가상메모리 (#혼용기법 #페이지호출기법)
'방송통신대학 > 운영체제' 카테고리의 다른 글
2강 2장 프로세스 개요 (0) | 2020.04.24 |
---|---|
9강 제7장 가상메모리 (#혼용기법 #페이지호출기법) (0) | 2020.04.24 |
1강 1장 운영체제의 개요 (0) | 2020.04.23 |
운영체제 기말 시험 문제(정답 포함) (0) | 2020.04.23 |
SJF , SRT 스케줄링 (0) | 2020.04.22 |