[컴퓨터공학]/[운영체제] 11

[운영체제] Page Fault Frequency(PFF) algorithm - variable allocation

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 우선 Page Fault Frequency(PFF) algorithm에 대해 알아보겠습니다. 이전 포스팅에 작성한 Working set algorithm은 page fault가 없어도 항상 working set을 관리해야해서 overhead가 발생합니다. 이 Page Fault Frequency algorithm 은 page fault가 일어나면 resident set을 관리합니다. pagefault가 일어날 때만 resident set을 관리하기 때문에 WS에 비해 overhead가 적습니다. Page Fault Frequency algorithm reside..

[운영체제] Working Set Algorithm - Variable allocation

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 이번 포스팅에서 다룰 내용은 Variable allocation 가상 메모리 관리 중 Working Set Algorithm입니다. Working set, Window size 여기서 Working Set이란 Process가 특정 시점에 자주 참조하는 Page들의 집합 즉, 최근 일정시간$(\Delta)$동안 참조된 Page들의 집합을 의미합니다. Working set은 $W(t,\Delta)$로 나타내어집니다. 여기서 $t$는 특정 시점을 의미하고 $\Delta$는 Window size를 의미합니다. →$\Delta$ = Window size 정리하자면 Wor..

[운영체제]LRU, LFU - 가상 메모리 관리3

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. LRU(Least Recently Used) Algorighm - Fixed Allocation 가장 오랫동안 참조되지 않은 page를 교체 → page참조 시 마다 시간을 기록해야 함(overhead) Locality에 기반을 둔 교체 기법 Min Algorithm에 근접한 성능을 보인다 실제로 가장 많이 사용 위의 그림은 x가 가장 마지막에 참조되었다고 가정했을 때 x를 교체한다는 내용이다. LFU(Least Frequently Used) Algorithm 가장 참조 횟수가 적은 Page를 교체한다. Tie-breaking 일 때(동점일때)는 LRU를 적용한..

[운영체제]Min Algorithm, FIFO Algorithm - 가상 메모리 관리2

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 이번 포스팅에서는 가상 메모리 성능 향상을 위한 관리 기법 중 교체기법(Replacement strategies)을 살펴보겠습니다. 교체기법을 말씀드리기 전에 지역성(Locality)을 다루어보겠습니다. 지역성에는 공간적 지역성과 시간적 지역성이 있습니다. 공간적 지역성 참조한 영역과 인접한 영역을 다시 참조하려는 특성 시간적 지역성 한 번 참조한 영역을 곧 다시 참조하는 특성 교체기법은 크게 Fixed allocation과 Variable allocation 의 두 개의 분류로 나뉩니다. 고정된 수의 page frame를 할당하는 Fixed allocation..

[운영체제]가상 메모리 관리(Virtual Memory Management) - 1

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다 이번 포스팅에서는 가상 메모리 관리에 대해 다뤄보겠습니다. 가상 메모리 관리의 목적은 가상 메모리 시스템 성능 최적화에 있습니다. 가상 메모리 시스템 성능 최적화는 Page fault rate를 최소화하여 Context switch를 최소화하는 것입니다. 결국 성능을 최적화시키게 되면 자원 사용이 감소하여(overhead가 감소하여) 성능이 향상되는 효과가 있습니다. 메모리 관리의 키워드에 대해 살펴보겠습니다. Page fault frequency (page fault의 발생 빈도) page referenve string $\omega$ $\omega = r_1r..

[운영체제] Hybrid paging/segmentation system

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 이전 포스팅에서 Paging system과 Segmetation system을 다루어봤습니다. 이번 포스팅에서는 이 두 가지의 장점을 조화시킨 Hybrid paging/segmentation system을 알아보겠습니다. Hybrid paging/segmentation system에서 프로그램 분할 방식은 아래 그림처럼 우선 논리단위의 segment로 분할한 후 각 segment를 고정된 크기의 page들로 분할한 후 메모리에 적재하는 방식을 사용합니다. Hybrid paging/segmentation system에서의 키워드를 살펴보겠습니다. Virtual a..

[운영체제] Segmentation system - Address mapping

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 이전 포스팅까지 Paging system에 대해 다루어보았습니다. 이번 포스팅에서는 Paging system과 대비되는 Segmetation system에 대해 다뤄보겠습니다. 우선 Segmentation system의 특징에 대해 알아보겠습니다. Segmentation system이란 프로그램을 논리적 block으로 분할하는 시스템을 의미합니다. 논리적으로 분할하기 때문에 Block의 크기가 서로 다를 수 있습니다. 크기가 다를 수 있기 때문에 메모리를 미리 분할하지 않습니다. 또한 메모리크기에 맞춰 분할하기 때문에 내부 단편화(internal fragment..

[운영체제] Paging system - 연관 사상(Associative mapping), Hybrid direct/associative mapping

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 이전 포스팅에서 다룬 Direct mapping의 단점을 보완하는 Associative mapping과 Hybrid direct/associative mapping에 대해 알아보겠습니다. Associative mapping 우선 Associative mapping의 키워드인 TLB에 대해 말씀드리겠습니다. TLB(Translation Look-aside Buffer) : PMT를 저장해두기 위한 전용 하드웨어로 Direct mapping의 단점이었던 메모리의 접근 횟수와 PMT를 저장하기 위한 메모리 공간의 문제점을 해결해줍니다. 위 그림은 Associative..

[운영체제] Paging system - 직접 사상(Direct Mapping)

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 이전 포스팅에서 Block mapping에 대해 알아보았습니다. 이번 포스팅에서는 Paging system에서의 직접 사상(Direct mapping)에 대해 알아보겠습니다. Direct mapping은 Block mapping 방법의 확장, 응용이라고 생각하시면 될 것 같습니다. Block mapping에서 BMT(Block Map Table)를 사용했듯, Direct mapping에서는 PMT(Page Map Table)을 사용합니다. direct mapping에 관련된 키워드부터 정리해보겠습니다. virtual address : v = (p, d) p : ..

[운영체제]블록 매핑(Block mapping)

운영체제에 대해 공부한 내용에 대해 정리해보았습니다. KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다. 이번 포스팅에서는 Block mapping에 대해 알아보겠습니다. 우선 Block mapping에 관련된 키워드부터 정리해보겠습니다. 가상 주소(virtual address) : v=(b, d) b : 블록 번호(block number) d : 오프셋(offset) - 블럭 내에서의 위치 BMT : Block Map Table - 커널 공간의 한 개의 프로세스마다 한개의 BMT를 갖는다. residence bit : 해당 블록이 메모리에 올라가 있으면 1, swap device에 존재하면 0 real address : 메모리의 어디에 올라가 있는지에 대한 주소 ..

반응형