CS/운영체제
[운영체제] 쓰기 시 복사와 계층적 페이징
초오오이
2025. 1. 24. 22:57
1. 쓰기 시 복사
이론적인 fork()
- 프로세스는 기본적으로 자원을 공유하지 않는다.
- 부모 프로세스가 적재된 별도의 공간에 자식 프로세스가 통째로 복제되어 적재된다.
-> 프로세스 생성 시간 지연, 메모리 낭비 등의 문제가 있을 수 있다.
쓰기 시 복사
- 부모 프로세스와 동일한 자식 프로세스가 복제되어 생성되면 자식 프로세스는 부모 프로세스와 동일한 프레임을 가리킴
- 둘 중 하나라도 페이지에 쓰기 작업 수행 시 해당 페이지는 별도의 공간에 복제된다.
- 프로세스 생성 시간을 절약하고 메모리를 절약한다.
2. 계층적 페이징
- 프로세스 테이블의 크기는 작지 않다. 때문에 프로세스를 이루는 모든 페이지 테이블 엔트리를 메모리에 두는 것은 낭비이다.
- 페이지 테이블을 페이징하여 여러 단계의 페이지를 두는 방식이다.
- CPU와 가장 가까이 위치한 테이블(Outer 페이지 테이블)은 항상 메모리에 유지한다.
- 계층적 페이지를 이용하는 환경에서의 논리 주소는 [바깥 페이지 번호, 안쪽 페이지 번호, 변위]로 이루어 질 수 있다.