-
반응형
메모리란?
메모리란 프로그램과 프로그램 수행에 필요한 데이터 및 코드를 저장하는 장치입니다.
가상 메모리의 등장 배경
만약 컴퓨터에서 가지고 있는 RAM의 용량보다 애플리케이션이 실행되는데 필요한 RAM의 용량이 더 크면 어떻게 될까요?
프로그램을 절대 실행할 수 없게 됩니다.
따라서 가상 메모리 기법은 애플리케이션의 일부분만 메모리에 올려 실행하도록 합니다.
실제로 프로세스 전체가 물리적 메모리에 있는 것처럼 수행되지만 사실은 일부만 메모리에 존재하고 나머지는 디스크에 있습니다.
즉, 가상 메모리는 물리적 메모리 크기의 한계를 극복하기 나온 기술입니다.
Page Fault(페이지 부재)
만약 CPU에서 접근하려는 페이지가 메모리에 없는 경우입니다.
페이지 테이블의 valid bit가 0이라면 CPU에 인터럽트 신호를 보내 디스크를 탐색하여 프로세스의 페이지를 찾습니다.
해당 페이지를 비어있는 프레임에 할당하고 페이지 테이블을 갱신합니다.
세그먼트와 페이징
가상메모리처럼 일부만 메모리에 존재하고 나머지는 디스크에 존재하는 방식을 사용하기 위해서는 프로그램이 일정한 크기의 페이지로 분할되어 있어야 합니다.
이렇게 일정한 크기로 메모리를 분할하는 단위를 페이지라고 합니다.
세그먼트는 페이지와 비슷한 개념이지만 같은 크기로 쪼개는 것이 아니라 논리적인 단위로 쪼개기 때문에 크기가 다양합니다.
https://m.blog.naver.com/qbxlvnf11/221368476938 단편화 문제
페이징 : 내부 단편화 O , 외부 단편화 X
세그먼트 : 내부 단편화 X , 외부 단편화 O
출처
https://steady-coding.tistory.com/524
[운영체제] 페이징과 세그멘테이션
cs-study에서 스터디를 진행하고 있습니다. 메모리 메인 메모리 (Main Memory, Physical Memory, 주기억장치) CPU가 직접 접근할 수 있는 기억 장치로, 프로세스가 실행되려면 프로그램 코드를 메인 메모리
steady-coding.tistory.com
[운영체제(OS)] 9. 가상 메모리(Virtual Memory)
[목차] 1. Motivation 2. Demand Paging 3. Page Replacement Algorithm 4. Allocation of Frames 5. Thrashing 6. Thrashing Prevention 참고) - KOCW 공개강의 (2014-1. 이화여자대학교 - 반효경) - Sogang Uni..
rebro.kr
[운영체제(OS)] 15. 가상메모리
가상 메모리는 물리 메모리 크기의 한계를 극복하기 위해 나온 기술이다. 즉, 물리 메모리보다 큰 프로세스를 수행하기 위해 가상 메모리를 사용한다. 예를 들어, 100MB 메모리 크기에서 200MB 크기
velog.io
https://ahnanne.tistory.com/15
[운영체제] 가상 메모리(Virtual Memory System)
들어가기 전.. 메모리(memory)란? 메모리란 프로그램과 프로그램 수행에 필요한 데이터 및 코드를 저장하는 장치임. 메모리는 크게 내부 기억장치인 주기억장치와 외부 기억장치인 보조 기억장치
ahnanne.tistory.com
https://m.blog.naver.com/qbxlvnf11/221368476938
세그먼테이션(segmentation) VS 페이징(paging)
(본 글은 책 '그림으로 배우는 구조와 원리 운영체제'의 일부를 참고하였습니다.)지금까지 페이징(paging)...
blog.naver.com
'CS > 운영체제' 카테고리의 다른 글
반효경[운영체제] - 운영체제 소개 (1) 2022.11.15