일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- dfs
- 구현
- level0
- N과M
- 운영체제
- level1
- 힙
- BFS
- 브루트포스
- 딕셔너리
- 다이나믹 프로그래밍
- 코딩테스트
- 다익스트라
- MYSQL
- BOJ
- 스택
- python
- 백준
- level3
- 그리디
- 프로그래머스
- dict
- level2
- 가상메모리 관리
- 재귀
- 파이썬
- 수학
- programmers
- DP
- 가상메모리
- Today
- Total
목록전체 글 (397)
동캄의 코딩도장
Locality 프로세스가 프로그램/데이터의 특정 영역을 집중적으로 참조하는 현상 Fixed allocation Min Alogorithm (OPT alogorithm) - Minimize page fault frequency - 앞으로 가장 오랫동안 참조되지 않을 page 교체 - 실현 불가능 --> page reference string을 미리 알고 있어야 함 - 교체 기법의 성능 평가 도구로 사용 됨 Random Algorithm - 무작위로 교체할 page 선택 - Low overhead - No policy - 성능 평가 도구로 사용 FIFO Algorithm - 선입선출 - Page가 적재 된 시간을 기억하고 있어야 함 - 자주 사용되는 page가 교체 될 가능성이 높음 (locality 고려..
가상메모리 관리 가상메모리 관리의 목적 - 가상 메모리 시스템 성능 최적화 (cost model) - Page fault rate를 최소화 하도록 설계 Page reference string(d) - 프로세스의 수행 중 참조한 페이지 번호 순서 Page fault rate = F(w) F(w) = 페이지폴트수/전체참조수(w) Hardware Components Address translation device (주소 사상 장치) - 주소 사상을 효율적으로 수행하기 위해 사용 Bit Vectors - Page 사용 상황에 대한 정보를 기록하는 비트들 - Reference bits (used bit) - Update bits (dirty bits, modified bits) Reference bit vecto..
Hybrid paging/segmentation system paging과 Segmentation의 장점 결합 - Page sharing/protection이 쉬움 - 메모리 할당/관리 overhead가 작음 - No external fragmentation 전체 테이블 수 증가 - 메모리 소모가 큼 - Address mapping 과정이 복잡 Direct mapping의 경우, 메모리 접근이 3배 - 성능이 저하 될 수 있음 프로그램 분할 1. 논리 단위의 Segment로 분할 2. 이러한 Segment를 같은 크기의 Page로 분할 Page 단위로 메모리에 적재 Address mapping - Virtual address v=(s,p,d) {s= segment number, p= page number..
Segmentation System 프로그램을 논리적 block으로 분할 - block의 크기가 서로 다를 수 있음 - stack, heap, main, procedure 등 특징 - 메모리를 미리 분할 하지 않음 - 공유 및 보호가 용이 함 - Address mapping 및 메모리 관리의 overhead가 큼 - No internal fragmentation Address mapping - virtual address v=(s,d) {s=segment number , d=offset} - SMT 사용 (segment length 와 protection bits가 존재) Memory management - VPM과 유사 (Segment 적재 시, 크기에 맞추어 분할 후 적재) Segment sharin..
Paging system - 프로그램을 같은 크기의 블록으로 분할 - page = 프로그램의 분할된 block - page frame = 메모리의 분할 영역, page와 같은 크기로 분할 특징 - 논리적 분할이 아님 (크기에 따른 분할) --> page 공유 및 보호 과정이 복잡 - simple and Efficient - No external fragmentation Address Mapping - virtual address v=(p,d) {p= page number, d = offset} - PMT 사용 Mapping 기법 Direct mapping -Block mapping 방법과 유사 문제점 - 메모리 접근 횟수가 2배 --> 성능 저하 - PMT를 위한 메모리 공간 필요 해결방안 - Assoc..
Vitual Storage (Memory) - Non-continuous allocation - 사용자 프로그램을 여러개의 block으로 분할 - 실행 시, 필요한 block들만 메모리에 적재 (나머지 block들은 swap device에 존재) 기법 paging system segmentation system hybrid system Address Mapping Virtual address (가상주소) = relative address - 논리주소 - 연속된 메모리 할당을 가정한 주소 Real address (실제주소) = absolute (physical) - 실제 메모리에 적재된 주소 Block Mapping -사용자 프로그램을 block 단위로 분할/ 관리 - vitual address: v=(b..