Chapter 9. Virtual Memory Managment Virtual Memory는 실행중인 프로세스가 전부 메모리에 없어도 되게 해주는 테크닉이다. 가장 큰 장점은 프로그램이 Physical Memory보다 커질 수 있다는 것이다. 9.1 Background 실행되게 위해서는 인스트럭션들이 피지컬 메모리에 반드시 있어야 한다는 것은 당연해보이지만 이것은 프로그램의 사이즈가 물리 메모리의 크기에 제한되게 한다. 많은 경우에 모든 인스트럭션이 사용되지는 않는다.(ex>에러처리, 배열, 특정 옵션) 프로그램이 부분적으로 메모리에 있게 하는 것은 많은 장점이 있다. -물리 메모리의 크기에 제한받지 않는다. -많은 프로그램이 동시에 실행될 수 있어서 응답시간의 증가 없이 CPU 이용률과 스루풋을 높인다..
Chapter 8 Memory Management Strategies 8.1 Background 실행중인 프로그램에 의해 만들어지는 메모리 주소의 sequence만 관심있다. 어떻게 프로그램이 메모리 어드레스를 generate 하는지에 대해서는 관심없음. 8.1.1 Basic Hardware 메모리와 CPU의 레지스터만 CPU가 바로 접근할 수 있다. 그러므로 동작을 위해서는 둘 중의 하나에 위치하여야 한다. 레지스터는 CPU안에 있으므로 접근이 매우 빠르지만, 메모리는 메모리 버스를 통하므로 메모리로부터의 데이터를 기다리는 stall라는 것이 생기고 이것은 자원낭비이므로 속도 차를 고려하여 cache라는 메모리 buffer를 둔다. user프로세스가 OS의 메모리 영역이나 다른 user의 메모리를 접근..
3장 Process concept 시스템은 프로세스의 콜렉션으로 이루어 진다. 3.1 Process concept 3.1.1 The process 프로세스는 다음에 실행될 위치를 명시한 프로그램 카운터와 연관된 리소스의 집합을 가지는 active entity이다. 프로그램은 디스크에 저장된 파일 형태의 passive entity이다. 3.1.2 Process state -New -Running : Instruction이 실행 중인 상태-> 한 순간에 하나의 프로세스만 실행 가능하다. -Wating : event를 기다리는 프로세스 -Ready : 프로세서 할당을 기다리는 프로세스 -Terminated : 종료 3.1.3 Process Control Block 각각의 프로세스는 OS에서 PCB로 표현되어짐..
- Total
- Today
- Yesterday
- operating systems
- 머신러닝
- android
- Data Science
- 리눅스
- Algorithms
- Discrete Mathematics
- 운영체제
- statistical learning
- 데이터 사이언스
- 안드로이드
- 기계학습
- Reverse Engineering
- 이산수학
- java
- 통계학습
- 데이터 과학
- 카타르
- 자료구조
- 알고리즘
- linux
- 리버싱
- 리버스엔지니어링
- 카타르 음주
- 개발
- 자바
- 대학원
- Machine Learning
- Data Structure
- reversing
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |