TIL 12월 11일 2023년

ORCASUIT·2023년 12월 16일
  1. 프로세스 생성과 초기화: process_create_initd 함수는 초기 사용자 프로세스(initd)를 생성합니다. process_init 함수는 일반 프로세스 초기화를 담당합니다.
  2. 프로세스 실행: process_exec 함수는 주어진 파일 이름의 실행 파일을 로드하고 실행합니다.
  3. 프로세스 종료 및 정리: process_exit 함수는 프로세스를 종료하고, process_cleanup 함수는 프로세스가 사용했던 자원을 정리합니다.
  4. 프로세스 복제 (Fork): process_fork는 현재 프로세스를 복제합니다. 이는 __do_fork 함수를 통해 구현됩니다. 이 함수는 부모 프로세스의 실행 컨텍스트를 복사하여 새로운 프로세스(자식)를 생성합니다.
  5. ELF 파일 로딩: load 함수는 ELF 실행 파일을 메모리에 로드합니다.
  6. 스택 설정: setup_stack 함수는 사용자 스택을 설정합니다.
  7. 자식 프로세스 관리: get_child_process 함수는 특정 PID를 가진 자식 프로세스를 검색합니다.
  8. 파일 디스크립터 관리: 이 코드는 파일 디스크립터 테이블을 관리하여 각 프로세스가 여러 파일을 열 수 있도록 합니다.
  9. 페이지 테이블과 가상 메모리: pml4와 관련된 코드는 페이지 테이블과 가상 메모리 관리에 관련되어 있습니다.

0개의 댓글