2024/10/07 2

[PintOS Project 2 - User Program] 여러 자료 정리..(kaist 자료 등)

kaist 자료Overview1. 시스템 호출 핸들러 테이블 채우기:Pintos의 기본 설정에서는 시스템 호출 핸들러 테이블이 비어있습니다. 시스템 호출은 커널이 사용자 프로그램과 상호작용하는 중요한 수단이므로, 이 테이블을 채워서 필요한 서비스를 사용자에게 제공할 수 있도록 해야 합니다.2. 추가해야 할 시스템 호출:프로세스 관련 호출:halt: 이 호출은 시스템을 중지시키고 종료합니다.exit: 프로세스가 종료될 때 호출되며, 이 호출은 자원을 정리하고 프로세스를 종료하는 역할을 합니다.exec: 새로운 프로그램을 실행할 때 사용되며, 주어진 프로그램을 실행하면서 현재 프로세스를 대체하거나 새로운 프로세스를 생성합니다.wait: 부모 프로세스가 자식 프로세스의 종료를 기다리기 위해 사용됩니다.파일 관..

pml4(page map level 4) 페이지 테이블 최상위 레벨

pml4x86-64 아키텍처에서 사용하는 페이지 테이블(Paging) 시스템의 최상위 레벨을 나타낸다.페이지 테이블의 최상위 구조가 뭔데?쉽게 표현하자면, 페이지 테이블이 4층 건물이라면, PML4는 건물 4층에 위치한 첫 번째 입구라고 생각하시면 됩니다. 거기서부터 계단을 따라 더 낮은 레벨의 페이지 테이블로 내려가면서, 최종적으로 물리 메모리의 주소를 찾게 되는 겁니다.x86-64에서는 4단계의 페이지 페이지 테이블을 사용하여 가상 메모리와 물리 메모리 간의 매핑을 관리하는데 PML4(Page Map Level 4)는 가상 메모리 주소를 물리적 메모리 주소에 매핑하기 위한 가장 상위 레벨의 구조각 프로세스 또는 스레드가 자신의 페이지 테이블을 가리키고 관리하기 위해 사용된다.프로세스마다 다른 가상 주..