제 8 장 메모리 관리전략. 개요 2 기억장치 관리의 발전 개요 SSD(Solid State Drive) – 반도체 메모리 내장함, 처리속도 빠르고 소음이 없고 전력소모량이 적은 플래시 메모리 기반의 모델 주소 바인딩 (address binding) – 정의 논리적.

Slides:



Advertisements
Similar presentations
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
Advertisements

Flash SSD 강원대학교 `01 최경집.
컴퓨터와 인터넷.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
Chatpter 07 메모리 관리 01 메모리 관리의 개요 02 연속 메모리 할당 03 분산 메모리 할당 1 : 페이징
8장 주 기억 장치 관리.
Network Lab. Young-Chul Hwang
연결리스트(linked list).
뇌를 자극하는 Windows Server 2012 R2
컴퓨터 프로그래밍 기초 [Final] 기말고사
제7강 학습 내용 주소지정 방식의 예 값 즉시 지정 방식과 실행 예 레지스터 직접지정 방식 메모리 직접지정 방식과 실행 예
램( RAM ) 램의 개념 램 선택법 듀얼채널의 의미.
CHAPTER 05. 운영 체제 컴퓨터 시스템과 사용자 간의 중개자_운영 체제의 개념과 동작 원리
운영체제 4장 요약정리(CPU 스케줄링) 2A 박훈.
제 3장 컴퓨터 시스템의 구조.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
컴퓨터 기억장치 문수영 ` = ,./][.
07. 디바이스 드라이버의 초기화와 종료 김진홍
제10강 중앙처리장치 1.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
기억 장치 관리 (Memory Management)
저장장치 테이프 I/O장치 작업 사용자 프린터 디스크 주기억장치(RAM) OS 카드판독기 CPU 키보드 처리장치.
DK-128 ADC 실습 아이티즌 기술연구소
DK-128 실습 EEPROM 제어 아이티즌 기술연구소
1장 컴퓨터 시스템의 개요 - 컴퓨터의 기본 시스템(프로세서)을 이해한다. - 명령어 실행 주기를 알아본다.
1장 운영체제 2-C반 운영체제 박소라.
10장 컴퓨터 기반 데이터 획득 응용 프로그램 LabVIEW 사용법
제1장 통계학이란 무엇인가 제2장 자료와 수집 제3장 자료 분석 방법
Chap 6.Assembler 유건우.
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
27장. 모듈화 프로그래밍.
메모리 관리 & 동적 할당.
7장 메모리 관리 메모리 관리를 위한 메모리 할당 기법 과 경영에 대해 알아본다. 단편화 현상의 원인과 해결 방법을 알
제 8장 가상 기억장치 구성 A 박남규.
제 8장 기억장치 관리 (Memory Management) 8.1 배경 주소 바인딩 (Address Binding)
컴퓨터시스템 구조 Computer System Architecture.
운영체제 (Operating Systems) (Memory Management Strategies)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
7장 메모리 관리 메모리 관리를 위한 메모리 할당 기법과 경영에 대해 알아본다. 단편화 현상의 원인과 해결 방법을 알아본다.
7장 주기억장치 관리 A박도하.
논리회로 설계 및 실험 5주차.
DK-128 실습 내부 EEPROM 제어 아이티즌 기술연구소 김태성 연구원
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2. 컴퓨터 시스템의 동작 명령어 구성 연산 종류와 기능에 따라 오퍼랜드 부분을 다양하게 활용 가능.
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
04. DBMS 개요 명지대학교 ICT 융합대학 김정호.
LabVIEW WiznTec 주임 박명대 1.
9강. 클래스 실전 학사 관리 프로그램 만들기 프로그래밍이란 결국 데이터를 효율적으로 관리하기 위한 공구
ATmega128의 특징 아이티즌 기술연구소
Canary value 스택 가드(Stack Guard).
4장 가상 기억장치 관리 4.1 가상 기억 장치의 개요 4.2 주소사상 기법 4.3 블록 사상(block mapping)
제 6 장 가상 기억 장치의 구성 Section 1 개 요 Section 2 페이징 기법 Section 3 세그먼테이션 기법
AT MEGA 128 기초와 응용 I 기본적인 구조.
8장 가상 기억장치의 구성 C반 권예용.
운영체제 레프토 (8장 가상 기억장치 구성) b반 박상수.
3과목 운영체제 강사 이 민 욱.
논리회로 설계 및 실험 4주차.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
5.2.3 교환방식의 비교 학습내용 교환방식의 비교.
발표자 : 이지연 Programming Systems Lab.
System Security Operating System.
제 4 장 Record.
1. 지역변수와 전역변수 2. auto, register 3. static,extern 4. 도움말 사용법
과 목 명 : 운영체제 담당교수 : 박 승 기 학 과 : 컴퓨터 소프트웨어 학 번 : 이 름 : 최 현 식
CHAP 15. 데이터 스토리지.
CODE INJECTION 시스템B 김한슬.
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
2. 프로세스 B 안우진 - 운영체제 -.
Presentation transcript:

제 8 장 메모리 관리전략

개요 2 기억장치 관리의 발전

개요 SSD(Solid State Drive) – 반도체 메모리 내장함, 처리속도 빠르고 소음이 없고 전력소모량이 적은 플래시 메모리 기반의 모델 주소 바인딩 (address binding) – 정의 논리적 주소 (logical address) 라고 하며, 실행되기 위해 물리적 주소로 사 상 (mapping) 됨을 말하며, 바인딩 시점에 따라 구분됨 – 컴파일 시간 (compile time) 바인딩 실행 시 위치가 바뀌면 다시 컴파일 해야 하는 경우의 바인딩 – 적재 시간 (load time) 바인딩 프로그램이 기억장치에 적재되는 시간에 적재기 (loader) 에 의해 이루어 지는 경우의 바인딩 – 실행 시간 (execution time) 바인딩 실행되는 동안에 기억장치의 한 세그먼트에서 다른 세그먼트로 옮겨질 경우와 같이 실행시간에 이루어지게 되는 경우의 바인딩 3

개요 논리적 주소와 물리적 주소 – 논리적 주소 가상주소 (virtual address) : 공간상의 주소 중앙처리장치가 생성함 – 물리적 주소 메모리의 실제 주소, 즉 기억장치가 취급하는 주소 – 기억장치 관리기 (MMU : Memory Management Unit) 논리적 주소를 물리적 주소로 변환 4

개요 5 재배치 레지스터를 이용한 주소변환

기억장치의 계층 구조 및 관리 기법 프로그램과 데이터가 실행되거나 참조되기 위해서는 주 기억장치에 있어야 6 기억장치의 계층 구조

기억장치의 계층 구조 및 관리 기법 기억장치 관리 기법 – 인출 (fetch) 기법 주기억장치에 적재할 다음 프로그램이나 데이터를 언제 가져올 것인 가를 결정함 요구 인출 (demand fetch) 기법 예상 인출 (anticipatory fetch) 기법 – 배치 (placement) 기법 새로 인출된 데이터나 프로그램을 주기억장치의 어디에 위치시킬 것 인가를 결정하는 기법 최초 적합 (first-fit), 최적 적합 (best-fit) 및 최악 적합 (worst-fit) – 교체 (replacement) 기법 새로 들어온 프로그램이 들어갈 장소를 마련하기 위해서 어떤 프로 그램 및 어떤 데이터를 제거할 것인가를 결정 7

단일 사용자 연속 기억장치 할당 – 초기의 컴퓨터 시스템에서는 임의의 시간에 한 사용자만이 시스 템을 사용 – 오버레이 (overlay) 기법 주기억장치보다 더 큰 프로그램의 실행이 가능 – 시스템 보호 중앙처리장치 내에 하나의 경계 레지스터 (boundary register) 를 이용 – 슈퍼바이저 호출 (SVC : Super Visor Call) 명령 사용자가 운영체제에 서비스를 요청 8

단일 사용자 연속 기억장치 할당 9 단일 사용자 연속 기억장치 할 당에서 기억장치의 보호

고정 분할 기억장치 할당 주기억장치를 효율적으로 나누어 사용 – 다중 프로그래밍을 위하여 여러 개의 작업이 동시에 컴퓨터의 주 기억장치 내에 존재 해야 함 주기억장치를 일 정 수의 고정된 크기들로 분할하여 실행 중인 여러 프로세스에게 할당 – 절대 번역 및 로딩 : 지정된 분할에만 적재됨 – 재배치 가능 번역 및 로딩 : 어떤 프로그램이 수행될 시점에 이르러 수행에 충분한 크기의 분할을 선택하여 적재함 시스템 보호 – 기억장치의 공유 시 한 분할에 있는 정보를 다른 분할에 있는 정보 로부터 보호, 다수의 경계 레지스터 (boundary register) 를 이용 10

고정 분할 기억장치 할당 11 다중 프로그래밍 시스템에서의 프로그램 및 데이터 보호

고정 분할 기억장치 할당 분할 공간의 크기와 단편화 – 수행 과정에서 기억장치 단편화 (fragmentation) 현상이 발생함 – 사용자 작업의 크기가 분할에 정확히 맞지 않거나, 또는 분할이 너 무 작아서 대기 중인 어떤 작업도 이 분할에 적재될 수 없는 경우 에 발생 – 내부 단편화 (internal fragmentation): 비 사용부분 발생 시 – 외부 단편화 (external fragmentation) 어떤 분할이 사용되지 않고 이용 가능하지만 대기 중인 작업에게는 너무 작아서 사용할 수 없을 때 발생하는 현상 12

고정 분할 기억장치 할당 13 기억장치의 단편화 현상

가변 분할 기억장치 할당 작업들이 필요로 하는 만큼의 공간을 동적으로 할당 기억 공간의 효율화 14 가변 분할 다중 프로그래밍에서의 초기의 분할 할당

가변 분할 기억장치 할당 15 가변 분할 다중 프로그래밍에서의 단편화 현상

가변 분할 기억장치 할당 공백의 합병 (coalescing holes) – 인접한 공백들을 결합하여 하나의 큰 기억 공간으로 만드는 과정 16 가변 분할 다중 프로그래밍에서의 공백의 합병

가변 분할 기억장치 할당 기억장소의 집약 (compaction) – 존재하는 여러 개의 작은 공백들을 하나의 커다란 기억 공간으로 통합 – 일반적으로 쓰레기 수집 (garbage collection) 이라고 부르기도 함 17 기억장소의 집약

가변 분할 기억장치 할당 18 기억장소의 집약 방법에 따른 비교

가변 분할 기억장치 할당 기억장치 배치 전략 (memory placement strategy) – 최초 적합 기법 (first-fit strategy) 주기억장치의 첫 번째 유용한 공백을 우선적으로 선택 널리 사용 – 최적 적합 기법 (best-fit strategy) 가장 적합한 공간을 선택 기억장치의 단편화를 최소로 하는 방법 – 최악 적합 기법 (worst-fit strategy) 가장 큰 공백에 배치 19

가변 분할 기억장치 할당 20 최초 적합 최적 적합 최악 적합 기억장치 배치 기법

가변 분할 기억장치 할당 기억장치 교체 (swapping) – 하나의 작업이 전체 기억장치를 사용한 후, 필요에 따라 그 작업은 제거 (swap out) 되고 다시 다음 작업을 적재 (swap in) – 오늘날 일반적으로 사용되는 페이징 시스템 (paging system) 의 기 초가 됨 21 다중 프로그래밍 시스템에서의 기억장치 교체