프로세스

다혜쓰·2023년 1월 17일
1

리눅스

목록 보기
4/4

프로세스(위치: 메모리)란?

컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램을 말한다. 즉 현재 실행 중인 프로그램!

  • UID (User ID): 프로세스 소유주의 사용자 식별 번호
  • PID (Process ID): 프로세스의 식별 번호
  • PPID (Parent Process ID): 부모 프로세스의 식별 번호

    명령어

    • ps ( Process Status): 현재 시스템 내에 존재하는 프로세스들의 실행 상태를 요약 출력.
    • ps -f: -f 옵션을 사용하면 사용자 프로세스에 대한 보다 자세한 정보 출력.
    • ps -ef: 현재 시스템 내에 실행 중인 모든 사용자 프로세스 정보 출력

    ps 출력 정보


프로그램(위치: 디스크)이란?

하드 디스크나 SSD같은 저장 장치에 저장 돼있는 실행이 가능한 실행 파일 ( 디스크에 저장 돼있는 상태 )

프로세스 스케줄링

CPU를 사용하려고 하는 프로세스들 사이의 우선 순위를 관리하는 일
스케줄링은 처리율과 CPU 이용률을 증가 시키고 오버헤드 / 응답시간 / 반환시간 / 대기시간을 최소화 시키기 위한 기법.
즉, CPU가 쉬지 않고 계속 열심히 일할 수 있도록 효율적인 계획을 잡아주는 것.

스케줄링에는
장기: 어떤 프로세스를 커널에 등록할 것인가 정하는
중기: 어떤 프로세스에게 메모리를 할당할 것인가를 정하는
단기: 어떤 프로세스에게 CPU를 할당할 것인가를 정하는 스케줄링이 있다.

init 프로세스

시스템 부팅 과정의 마지막에 수행되어, 커널 부팅이 끝나면 운영체제가 하드웨어의 모든 기능을 제어하게 되었을 때 커널에 의해 생성 및 실행되는 첫 번째 프로세스(pid=1)이다.

고아 프로세스와 좀비 프로세스

고아 프로세스?

부모 프로세스가 자식 프로세스보다 먼저 종료되면 자식 프로세스는 고아 프로세스가 된다.
이럴 경우, 부모 프로세스가 자식 프로세스보다 먼저 종료되면 init프로세스가 자식 프로세스 새로운 부모 프로세스가 된다.
종료되는 프로세스가 발생할 때 커널은 이 프로세스가 누구의 부모 프로세스인지 확인한 후, 커널이 자식 프로세스의 부모 프로세스 ID를 1(init프로세스)로 바꿔준다.

좀비 프로세스?

자식 프로세스가 종료되었지만 부모 프로세스가 자식 프로세스의 종료 상태를 회수하지 않았을 경우에 자식 프로세스를 좀비 프로세스라고 한다.
프로세스 종료가 제대로 되지 않으면 좀비 프로세스가 생겨날 수 있다.

profile
다혜인디

0개의 댓글