Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- mysql
- kali
- 네트워크
- nomaltic
- shell
- kali linux
- Virtual Box
- VDI
- 보안
- 리눅스
- 리눅스 기초
- Bandit
- virtualbox
- 칼리
- MariaDB
- Linux
- Bitnami
- Normaltic
- 칼리 리눅스
- nomaltic place
- 노말틱
- 기초
- Error
- Vitual Disk Image
- Web shell
Archives
- Today
- Total
게으른 개발자
8강-4. Memory Management 4 본문
Segmentation
- segment table의 최대 entry개수는 프로그램이 사용하는 세그먼트 개수이다.
- 페이징 기법은 페이지의 개수가 백만개(굉장히 많다)
- 테이블을 위한 공간 낭비가 심하다.
- 장점
- allocation
- 단점
- protection
- sharing
- 세그먼트
- 실제 시스템을 운용해보면 개수가 작다.
- 테이블 메모리 낭비가 작다.
- 장점
- protection
- sharing
- 단점
- allocation
- 실제 시스템을 운용해보면 개수가 작다.
Segment와 page를 혼합해보자
- 세그먼트 하나가 여러개의 페이지로 구성이 됨.
- 먼저 세그먼트에 대한 주소변환을 한다.
- STBR : 여기 레지스터에 세그먼트에 대한 시작위치가 저장되어 있다.
- 메모리에 올라갈 때는 page 단위로 쪼개져서 올라간다.
- 이렇게 하면 allocation 문제가 안생긴다!
- hole이 안생긴다!
- 세그먼트는 page 개수의 배수로 구성이 된다.
- 의미 단위에서는 segment table 에서 해준다.
- 현실적으로 오리지널 segmentation 메모리 시스템은 없다.
- 따라서 내부에 페이지 기법을 써야지 관리가 편하다.
- 세그먼트당 페이지 테이블이 존재한다(세그먼트 하나가 여러개의 페이지로 구성됨).
- 세그먼트 테이블의 해당 entry에 가게 되면, 해당 세그먼트를 구성하는 페이지 테이블의 시작위치가 나온다.
- 그러면 몇개의 entry가 구성되는가?
- segment length를 보면, 해당 세그먼트가 page table에 몇개의 entry가 있는지 알 수 있다.
- 길이를 벗어나는 요청에 대해서는 trap 발생
- segment length >= d
- segment length를 보면, 해당 세그먼트가 page table에 몇개의 entry가 있는지 알 수 있다.
- 다단계 page table처럼 d를 짜른다.
- 앞부분은 p (페이지 번호) | d' (오프셋 : 페이지 안에서 얼마나 떨어져 있는지)
Memory Management 정리
- 이번 챕터에서 주소변환에 있어서 운영체제 역할은?
- 주소변환에 있어서 운영체제의 역할은 없다!
- 하드웨어가 처리함.!!! (MMU ..)
- 왜 하드웨어가 처리하나?
- 어떤 프로세스가 cpu를 가지고 있으면서 메모리 접근을 하는것은 운영체제의 도움을 받지 않는다.
- 왜냐하면 주소변환을 할 때, 운영체제의 도움을 받게되면 cpu가 운영체제로 넘어가야 한다.
- 따라서 주소변환은 하드웨어로 이루어진다.
- 어떤 프로세스가 cpu를 가지고 있으면서 메모리 접근을 하는것은 운영체제의 도움을 받지 않는다.
- 운영체제가 접근하는건 i/o device에 접근할 때이다.
- 주소변환에 있어서 운영체제의 역할은 없다!
'cs > 운영체제' 카테고리의 다른 글
10강 - 2. Virtual Memory (1) | 2023.11.13 |
---|---|
10강 - 1. Virtual Memory (0) | 2023.11.12 |
8강-3. Memory Management 3 (0) | 2023.11.10 |
8강-2. Memory Management 2 (0) | 2023.11.09 |
8강-1. Memory Management 1 (0) | 2023.11.07 |