리눅스 시스템 프로그래밍의 기본

프로그램 : 디스크에 바이너리 파일을 컴파일, 시스템 자원 (CPU, 메모리 등의 디바이스, 열린 파일, 잠금을) 차지하지
운영 체제의 원칙이 밀접하게 연결되어, 프로세스가 실행중인 프로그램 또는 프로그램입니다 : 프로세스가 시스템 리소스는 메모리 실행

프로그램은 스크립트, 프로세스는 드라마입니다

의 1.PCB의 task_struct에 구조체
(1) 된 pid_t 타입의 PID
상태 (2) 공정 : 준비 상태, 주행 상태, 정지 상태, 종료 상태는
에 스토어하고 응답해야 (3) 레지스터의 내용의 일부를 전환하는 방법
(4) 가상 주소 공간의 설명
현재 디렉토리 위치 (5)
(6)의 umask 마스크
(7) 파일 디스크립터 테이블은, 파일 구조의 포인터는 신체의 여러 포함
(8) 및 상기 신호에 관한 정보
(9), 사용자 ID를 및 상기 언급 된 ID를 설정
(10) 세션 (세션) 및 처리 그룹
자원 한계 (11) 프로세스가 사용될 수있다. ulimit를 -a (리눅스 상한 각 자원에 볼 수 있습니다)
(각 프로세스는 자신의 환경 변수가 있습니다) 2. 환경 변수를
(1) 통근 문자 ** 싸다 (이 문장이 있어야합니다 NULL로 끝나는 싸다 환경 변수를 사용하는 경우)
(2 )의 GetEnv ()는 환경 변수의 값을 가져
에서는 setenv () 환경 변수 값 설정
환경 변수 정의의 이름 삭제) (unsetenv를을
공유 읽기, 쓰기 사본 (0-3G 사용자 영역)에 복사 3. 공유하는 과정을
다중 프로세스를 디버깅 GDB를 : 세트는 후속 포크 모드는 chilld
모드 추적 포크 부모를 SET를

发布了38 篇原创文章 · 获赞 13 · 访问量 4339

추천

출처blog.csdn.net/YanWenCheng_/article/details/103929794