ps (프로세스)
100%

프로세스 · 레슨 1

ps (프로세스)

ps로 프로세스 스냅샷을 만들고 top으로 변하는 활동을 모니터링하는 방법을 배웁니다.

프로세스는 프로그램이 실행 중인 인스턴스이며 메모리, 자격 증명, 열린 자원, 실행 상태를 함께 포함합니다. Linux는 살아 있는 각 프로세스를 PID라는 숫자 프로세스 ID로 식별합니다. PID는 같은 시점에 존재하는 프로세스 사이에서 고유하지만 프로세스가 종료된 뒤 커널이 재사용할 수 있습니다.

기본 스냅샷 만들기

옵션 없이 ps를 실행하면 구현의 기본값으로 선택된 스냅샷을 볼 수 있습니다. 일반적으로 현재 터미널 및 사용자와 연결된 프로세스입니다.

$ ps
    PID TTY          TIME CMD
  41230 pts/4    00:00:00 bash
  51224 pts/4    00:00:00 ps

일반적인 필드는 다음과 같습니다.

  • PID: 프로세스 ID
  • TTY: 제어 터미널. 연결된 터미널이 없으면 ?
  • TIME: 경과한 실제 시간이 아니라 누적 CPU 시간
  • CMD: 선택한 형식에 따른 명령 이름 또는 명령줄

정확한 열과 선택 기본값은 ps 구현과 환경에 따라 다릅니다.

PID 열은 무엇을 식별하나요?

BSD 형식 옵션으로 프로세스 나열하기

Linux ps는 여러 옵션 형식을 받습니다. BSD 형식 옵션은 흔히 선행 하이픈 없이 씁니다.

$ ps aux

이 조합에서 다음 의미를 갖습니다.

  • a: 터미널이 있는 다른 사용자 소유 프로세스까지 선택 확대
  • x: 제어 터미널이 없는 프로세스도 포함하고 a와 결합할 때 선택 확대
  • u: USER, %CPU, %MEM, VSZ, RSS 같은 필드를 가진 사용자 중심 출력 형식 선택

옵션 의미가 상호작용할 수 있으므로 각 문자를 독립적인 명령으로 보지 말고 전체 조합을 해석하세요.

ps aux에서 사용자 중심 출력 형식을 요청하는 옵션은 무엇인가요?

표준 형식 옵션 사용하기

널리 쓰이는 표준 형식 명령 ps -ef는 선행 하이픈과 함께 옵션을 씁니다.

$ ps -ef
  • -e: 호출자에게 보이는 모든 프로세스 선택
  • -f: 전체 형식 목록 요청

출력에는 일반적으로 UID, PID, PPID, 시작 시간, 명령 정보가 포함됩니다. PPID는 부모 프로세스 ID입니다. 이 목록은 본질적으로 계층적이지 않습니다. 부모-자식 배치가 중요하면 지원되는 경우 --forest 같은 옵션이나 pstree 같은 전용 트리 보기를 사용하세요.

ps -ef에서 -e는 무엇을 요청하나요?

시간에 따른 활동 모니터링하기

ps는 스냅샷 하나를 만든 뒤 종료합니다. 주기적으로 갱신되는 대화형 보기에는 top을 사용합니다.

$ top

top은 변하는 CPU 및 메모리 소비자를 식별하는 데 도움이 되지만 값은 표본이므로 흔들릴 수 있습니다. 여러 번 관찰하여 의심되는 문제를 확인하고 백분율을 시스템의 CPU 수, 메모리 계산, 작업 부하와 연결하세요.

여기서 소개한 도구 중 기본적으로 프로세스 표시를 주기적으로 갱신하는 것은 무엇인가요?

레슨 완료

ps (프로세스) 완료

이제 프로세스 보기를 선택하고 기본 식별자를 해석할 수 있습니다.

  • PID를 현재 살아 있는 프로세스에 대한 재사용 가능한 식별자로 다룰 수 있습니다.

  • 일반 ps로 작은 기본 스냅샷을 만들 수 있습니다.

  • ps aux 또는 ps -ef로 더 넓은 선택과 풍부한 열을 볼 수 있습니다.

  • 시간에 따른 변화가 중요할 때 top을 사용할 수 있습니다.

학습 진행 상황 저장

무료 계정을 만들어 이 레슨을 저장하고 어떤 기기에서든 계속 학습하세요.

무료 계정 만들기
다음 수업
프로세스(으)로 돌아가기