728x90
반응형

Embedded system/[KOCW] 운영체제

728x90
반응형
Embedded system/[KOCW] 운영체제

[운영체제] Virtual memory 2 (페이지 교체, Page Replacement, Optimal Algorithm, LRU, LFU)

[ 페이지 교체 (Page Replacement) ] 페이지를 쫓아내는 걸 Page Replacement라고 하며 OS가 하는 일이다. 이때 사용하는 알고리즘은 Replacement Algorithm이다. ​비어있는 페이지가 없는 경우에는 어떤 페이지를 쫓아낸 후, 해당 메모리에 페이지를 올려야 한다. 가능하면 Page Fault가 일어나지 않고 되도록이면 메모리에서 직접 처리할 수 있도록 되어있다. 왜냐하면 페이지를 쫓아내고 난 후, 시간이 얼마 지나지 않아 그 페이지가 다시 참조가 되면 해당 페이지를 Swap area에서 메모리로 다시 올려야 한다. 이 과정은 시간이 매우 오래 걸린다. ​ 어떤 페이지를 메모리에서 쫓아내고 그 자리에 어떤 페이지를 올려놓을 것인가를 결정해야 한다. 가능한 Page F..

Embedded system/[KOCW] 운영체제

[운영체제] Virtual memory 1 (Demand Paging)

[ Demand Paging ] 물리적 메모리 주소 변환은 운영체제가 관여하지 않는다. 하지만 Virtual Memory 기법은 전적으로 운영체제가 관여를 하고 있다. Demand Paging이라는 것은 Page 요청이 있으면 그 페이지를 메모리에 올리겠다는 것이다. ​ 프로그램이 실행될 때, 그 프로세스를 구성하는 주소 공간을 한꺼번에 물리적 메모리에 올리는 게 아니라 요청이 있을 때 메모리에 올려놓는다. 이렇게 되면 I/O 양이 상당히 줄어들고 그만큼 물리적 메모리를 사용하는 양이 감소된다. 좋은 소프트웨어일수록 방어적으로 코드를 짜기 때문에 이상한 사용자가 이상한 짓을 하더라도 문제가 생기지 않도록 하는 것이 좋다. 즉 프로그램을 구성하는 주소 공간에서 빈번히 사용되는 부분은 제한적이므로 사용이 되..

Embedded system/[KOCW] 운영체제

[운영체제] Memory Management 8 (불연속 할당/Paged Segmentation)

↓ 불연속 할당 / Segmentation 기법 ↓ 2023.02.16 - [Study/Operating System] - [운영체제] Memory Management 7 (불연속 할당/Segmentation 기법) [운영체제] Memory Management 7 (불연속 할당/Segmentation 기법) 불연속 할당은 Paging 기법과 Segmantation 기법 두 가지로 나뉘며, 이번 포스팅에서는 Segmentation 기법을 다룰 것이다. ↓ Paging 기법 ↓ 2023.02.10 - [Operating System] - [운영체제] Memory Management 4 (불연속할당 rannnneey.tistory.com ​ [ Segmentation with Paging ] Segmentat..

Embedded system/[KOCW] 운영체제

[운영체제] Memory Management 7 (불연속 할당/Segmentation 기법)

불연속 할당은 Paging 기법과 Segmantation 기법 두 가지로 나뉘며, 이번 포스팅에서는 Segmentation 기법을 다룰 것이다. ↓ Paging 기법 ↓ 2023.02.10 - [Operating System] - [운영체제] Memory Management 4 (불연속할당/Paging 기법) [운영체제] Memory Management 4 (불연속할당/Paging 기법) 연속 할당 : 프로그램이 메모리에 올라갈 때 통째로 메모리에 올라가는 방식 불연속 할당 : 프로그램을 구성하는 주소 공간을 같은 크기의 페이지 단위로 잘게 쪼개서 페이지 단위로 메모리에 rannnneey.tistory.com 2023.02.12 - [Operating System] - [운영체제] Memory Manag..

Embedded system/[KOCW] 운영체제

[운영체제] Memory Management 6 (다단계 페이지 테이블, 역 페이지 테이블, 공유 페이지)

[ 다단계 페이지 테이블 (Multi-Level Paging) ] 페이지 테이블은 다단계로도 사용할 수 있다. 4단계 페이지 테이블을 사용한다고 했을 때 메모리에 한 번 접근하려면 네 번의 주소변환과 한 번의 실제 데이터 접근을 해야 한다. (총 다섯 번 접근) 메모리에 접근하는 시간이 100ns 일 때 4단계 페이지 테이블을 사용하면 500ns가 걸린다. 하지만 주소 변환을 전담해 주는 일종의 캐시 메모리(TLB)를 통해 이루어지기 때문에 다단계 페이지 테이블을 사용하더라도 시간이 오래 걸리지 않는다. TLB Hit Ratio가 98%이라고 할 때.. 98%는 120ns(메모리 접근 100ns + TLB 접근 20ns)가 걸리고 2%는 520ns(메모리 접근 500ns + TLB 접근 20ns)가 걸리..

Embedded system/[KOCW] 운영체제

[운영체제] Memory Management 5 (불연속 할당, Paging 기법, Two-Level Page Table)

이전 발행글 2023.02.10 - [Operating System] - [운영체제] Memory Management 4 (불연속할당/Paging 기법) [운영체제] Memory Management 4 (불연속할당/Paging 기법) 연속 할당 : 프로그램이 메모리에 올라갈 때 통째로 메모리에 올라가는 방식 불연속 할당 : 프로그램을 구성하는 주소 공간을 같은 크기의 페이지 단위로 잘게 쪼개서 페이지 단위로 메모리에 rannnneey.tistory.com [ Two-Level Page Table (2단계 페이지 테이블) ] 두 단계 페이지 테이블은 공간을 줄이기 위해서 사용한다. 2단계 페이지 테이블은 페이지 테이블이 안쪽 페이지 테이블과 바깥쪽 페이지 테이블 두 개가 존재한다. CPU가 논리적 주소를 ..

Embedded system/[KOCW] 운영체제

[운영체제] Memory Management 4 (불연속할당/Paging 기법)

연속 할당 : 프로그램이 메모리에 올라갈 때 통째로 메모리에 올라가는 방식 불연속 할당 : 프로그램을 구성하는 주소 공간을 같은 크기의 페이지 단위로 잘게 쪼개서 페이지 단위로 메모리에 올리는 방식 [ 불연속 할당 (Noncontiguous Allocation) ] ● Paging 기법 프로그램을 구성하는 주소 공간을 같은 크기의 페이지로 자르는 방법으로 페이지 단위로 물리적인 단위에 올려놓거나 Backing Store에 내려놓거나 한다. 물리적인 메모리에 사용자 프로그램이 들어갈 수 있는 공간들을 똑같은 크기로 잘라 놓는다. 물리적 메모리 공간 하나하나를 Page Frame이라고 하는데 Page Frame에는 Page가 올라갈 수 있다. Paging 기법을 쓰면 Hole의 크기가 일정하지 않아서 어떤 ..

Embedded system/[KOCW] 운영체제

[운영체제] Memory Management 3 (연속 할당, 고정 분할 방식/가변 분할 방식, 외부 조각/내부 조각

물리적 메모리는 낮은 주소 부분에 운영체제 커널이 항상 상주하고 있고, 높은 주소 영역에는 사용자 프로그램들이 올라가 있다. 사용자 프로그램이 올라간 영역을 관리하는 방법은 크게 두 가지로 나누어 볼 수 있다. 프로그램이 메모리에 올라갈 때 통째로 메모리에 올라가는 방식인 연속 할당과 프로그램을 구성하는 주소 공간을 같은 크기의 페이지 단위로 잘게 쪼개서 페이지 단위로 메모리에 올리는 방법인 불연속 할당이 있다. ● 연속 할당 (Contiguous Allocation) ✓ 고정 분할 (Fixed Partition) 방식 물리적 메모리를 몇 개의 영구적 분할 (Partition)로 나눔 분할의 크기가 모두 동일한 방식과 서로 다른 방식이 존재 분할 당 하나의 프로그램 적재 융통성이 없음 : 동시에 메모리에..

728x90
반응형
라닝
'Embedded system/[KOCW] 운영체제' 카테고리의 글 목록 (2 Page)