ggoggo
5.2 메모리 계층구조 본문
5.2 메모리 계층구조
1. 읽기와 쓰기
CPU가
(1)메모리 읽기 (2)메모리 쓰기 (3) 입출력장치 읽기 (4) 입출력장치 쓰기 수행
- 읽기 : 메모리나 입출력장치에서 CPU쪽으로 데이터가 입력
- 쓰기 : CPU에서 데이터가 출력
- 읽기시간 & 쓰기시간 : 주소를 보낸 순간부터 동작이 완료되기까지
2. 액세스 타임
- Access(액세스) : 이미 저장된 내용을 읽기 위해 혹은 데이터를 새로 저장하기 위해 특정위치에 신호가 도달하는 동작
- Access time(액세스 타임, 접근시간)
- CPU가 데이터의 저장 위치에 접근을 완료하거나 응답을 받기 시작하는 데 걸린 시간
기억장치나 입출력장치의 동작속도를 나타내는 척도
- 메모리나 I/O에 새로운 주소가 도달한 시점부터 데이터를 출력하거나, 기록하기 시작하는 데 걸린 시간
단위는 시간(sec)
- 기억장치의 액세스 타임
3. 메모리 계층구조
- 여러 종류의 기억장치를 계층적인 구조로 사용 about 가격, 용량, 속도
- 적은 비용으로 기억장티 용량을 늘리고ㅓ 전체 기억장티의 평균 액세스 속도를 높이는 방법
- CPU에 가까울수록 상위계층으로 분류
(상위계층 -> 액세스 타임 빠른 소자 배치, 가격↑ & 용량↓
하위계층 -> 속도↓&가격대비 용량이 큰 장치 배치)
- 캐시 사용 이유
CPU에 가까운 상위계층에 데이터가 있을 확률이 높을수록 전체 기억장치의 평균 액세스 타임은 빨라짐.
기억장치 계층구조
4. 가상 메모리
프로그램이 실행되려면 동작에 필요한 최소한의 메모리가 작업공간으로 남아있어야 한다.
가상메모리(virtual memory)
- 주로 하드디스크의 일부를 확장된 램으로 가정해 부족한 메인메모리의 일부로 사용하는 것 -> 논리적 공간(연속적일 필요x)
- 부족한 메인메모리 크기를 외형적으로 늘리는 방법
- 운영체제가 자동으로 관리
- 하드디스크 스와핑
메인메모리의 내용과 보조기억장치인 하드디스크의 내용을 상호 교환하는 것
- 스왑 파일은 가상메모리를 사용할 떄 실제 메모리인 램에 대한 확장으로 하드디스크에 만들어지는 파일
(일반적인 운영체제 -> 페이지, 페이징)
- 파일 단위로 연속된 공간을 구성할 수 있어 적은 횟수의 읽기, 쓰기로 가상메모리를 관리
(메모리가 부족하면 오래 전 사용된 내용은 필요할 때까지 임시로 하드디스크에 스왑 파일로 보내짐)
Swaping
- 페이지와 페이징
페이지
가상메모리 공간을 일정한 크기로 나누어, 메인메모리와 하드디스크 사이에 한번에 이동하는 단위(OS에 의해 관리됨)
- 페이지 프레임
가상의 기억공간을 다룰 수 있도록 할당된 메인메모리 영역, 하드디스크의 페이지들 중 하나를 복사해 할당
여러 개의 페이지 프레임들이 존재
- 페이징, 페이지 교체
메인메모리와 하드디스크 사이의 페이지 교환 동작
OS가 참고하려는 페이지가 메인메모리에 없으면 하드디스크에 저장해둔 페이지를 참조해 가져옴
페이지 교체 : 빈 페이지 프레임에 새로운 페이지를 할당
if 빈공간 X, 기존에 저장된 페이지 하나를 꺼내 HDD에 저장하고 필요한 페이지를 바꾸어 넣음
- 가상주소와 물리주소
물리메모리 : 실제 메모리 ↔ 가상메모리
가상주소
가상메모리를 관리하는 주소
물리주소로 변환해서 사용해야 함
물리주소
실제 메모리 주소
오프셋(offset) 값을 이용해 가상주소의 비트 수 줄임
페이지 테이블
현재 관리되는 가상메모리의 모든 페이지와 메인 메모리의 페이지 프레임과의 매핑 관계를 저장
- 가상주소에서 물리주소로의 변환
가상주소형식 : 페이지 번호(HDD) + offset
페이지 테이블 : 페이지 번호(HDD) + 프레임 번호(DRAM)
물리주소 형식 : 프레임 번호(DRAM) + offset
5. 메인메모리와 가상메모리
메인메모리 크기를 충분히 늘릴 경우
- HDD 액세스 횟수나 가상메모리의 크기가 줄어 시스템 성능↑
- 가상메모리 사용은 권장x (HDD 액세스 횟수가 늘어 성능 저하)
- 성능이 높은 CPU일수록 메모리 늘리면 효과 큼
스래싱
전체 시스템 성능이 저하괴어 작업의 진전이 아주 느리거나 아예 없는 상태
가상메모리 페이징 동작이 과도하기 일어나는 상태
메모리나 기다 시스템 자원이 고갈되어 필요한 연산을 수행하기에 너무 부족한 상태
'3-1 > 컴퓨터구조 및 운영체제' 카테고리의 다른 글
운영체제 : Ch 1.3 Storage Management (0) | 2022.06.10 |
---|---|
운영체제 : Ch 1.2 Overview of Computer System Structure (0) | 2022.06.10 |
5.4 캐시 매핑 방식 (0) | 2022.05.29 |
5.3 캐시메모리 (0) | 2022.05.28 |
5.1 기억장치 (0) | 2022.05.11 |