내 잡다한 노트
챕터7. 물리 메모리 관리 1. 메모리 관리의 개요 본문
현대의 시분할 시스템이 되면서 많은 프로세스들을 관리하게 됐다
그래서 프로세스들에게 어느정도의 메모리를 사용하게끔 하는 지를 고민하게 됨
메모리 관리의 이중성
프로세스는 메모리를 많이 차지하려 하고 메모리는 프로세스를 관리를 효율적으로 하고 싶어 한다.
컴파일러와 인터프리터
둘 다 소스코드를 목적코드(기계어)로 바꿔준다. 하지만 약간의 차이점이 존재한다. 컴파일러는 한꺼번에 하고
인터프리터는 한줄씩 코드를 읽어나간다.
또, 컴파일러는 변수를 미리 선언해야 한다.
컴파일은 소스코드를 컴퓨터가 읽을 수 있는 목적코드로 바꿔주고 라이브러리를 사용했다면 연결해준다.
컴파일을 통해 오류를 해결하고 최적화를 해준다.
메모리 관리자가 하는 일
1. fetch 가져오기
2. placement 배치하기
3. replacement 재배치하기
fetch는 프로세스와 데이터를 메모리로 가져오는 작업이다.
placement는 가져온 것들을 메모리 어딘가에 배치하는 작업이다. 배치 작업 전에 메모리를 고정적으로 할 것인지
가변크기로 할 것인지를 결정한다.
replacement는 다 쓴 프로세스와 데이터를 내보내는 작업이다.
'운영체제' 카테고리의 다른 글
챕터7. 단일 프로그래밍 환경에서의 메모리 할당 (0) | 2022.09.09 |
---|---|
챕터7. 2. 메모리 주소 (0) | 2022.09.09 |
챕터6. 교착 상태 해결 방법 (0) | 2022.08.29 |
챕터6. 교착 상태 필요조건 (0) | 2022.08.29 |
챕터6. 교착상태의 개요 (0) | 2022.08.29 |