맨위로가기

Top (소프트웨어)

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

top은 프로세스 모니터링을 위한 소프트웨어 유틸리티로, 시스템의 실시간 상태를 동적으로 보여준다. 최초 버전은 1984년 BSD 4.1용으로 개발되었으며, 이후 여러 운영 체제로 이식되었다. top은 시스템의 전반적인 정보, CPU 사용률, 메모리 사용량, 실행 중인 프로세스 목록 등을 제공하며, 각 프로세스에 대한 상세 정보를 PID, 사용자, 우선순위, 메모리 사용량, CPU 사용량 등의 형태로 표시한다. 또한 갱신 간격 지정, 특정 사용자 프로세스 감시 등의 옵션을 제공하며, ps 명령어와 유사한 기능을 수행하지만, top은 실시간 정보를 제공한다는 차이점이 있다.

더 읽어볼만한 페이지

  • 시스템 모니터 - Zabbix
    Zabbix는 알렉세이 블라디셰프가 개발하여 2001년 GPL 라이선스로 공개된 IT 인프라 모니터링 소프트웨어이며, 서버, 에이전트, 프론트엔드 등으로 구성되고, 2004년 첫 안정화 버전이 출시되었으며, LTS 버전을 통해 장기적인 지원을 제공한다.
  • 시스템 모니터 - Nagios
    Nagios는 오픈 소스 소프트웨어로서 네트워크 및 시스템 상태 감시와 관리에 사용되며, 다양한 에이전트를 통해 시스템 리소스 및 네트워크 서비스 상태를 모니터링하고, 문제 발생 시 알림을 제공하며 자동화된 이벤트 핸들러를 통해 대응할 수 있고, 다양한 플러그인 지원과 안전한 원격 감시를 제공한다.
  • 콘솔 애플리케이션 - MS-DOS 편집기
    MS-DOS 편집기는 MS-DOS 운영 체제에 포함된 텍스트 편집기로, 다중 문서 인터페이스, 이진 파일 모드, 마우스 지원 기능을 제공하며, 다양한 버전으로 출시되었다.
  • 콘솔 애플리케이션 - MacPorts
    MacPorts는 macOS에서 소프트웨어를 설치 및 관리하는 패키지 관리 시스템으로, 사용자가 소스 코드 컴파일 또는 미리 빌드된 바이너리를 통해 오픈 소스 소프트웨어를 간편하게 설치할 수 있도록 지원하며, Fink, Homebrew와 유사한 오버레이 배포판이다.
  • 유닉스 프로세스 및 작업 관리 관련 소프트웨어 - Ps (유닉스)
    `ps` 명령어는 유닉스 계열 운영체제에서 실행 중인 프로세스의 ID, CPU 사용량, 메모리 사용량, 실행 시간, 상태 등 자세한 정보를 표시하며, 파이프를 통해 다른 명령어와 결합하여 활용된다.
  • 유닉스 프로세스 및 작업 관리 관련 소프트웨어 - Kill (명령어)
    kill은 유닉스, 윈도우 등 다양한 운영 체제에서 프로세스에 신호를 보내는 데 사용되는 명령어로, 프로세스 ID 또는 프로세스 그룹 ID를 통해 프로세스 종료를 요청하거나 강제 종료를 실행한다.
Top (소프트웨어) - [IT 관련 정보]에 관한 문서
일반 정보
개발자윌리엄 르페브르
로저 빈스
제임스 C. 워너
운영체제유닉스 계열
프로그래밍 언어C
라이선스
웹사이트
공식 웹사이트숨겨짐

2. 역사

top 명령은 VMS 운영 체제의 `monitor process/topcpu` 명령어를 힌트로 하고 있다. top의 첫 번째 구현은 1984년 4월라이스 대학교의 대학원생 윌리엄 르페브르(William LeFebvre)에 의해 BSD 4.1용으로 만들어졌다. 이것은 BSD 라이선스 하에 오픈 소스 프로젝트로 릴리스되어 다수의 독점 BSD 및 유닉스 운영 체제에 포함되게 되었다.

top은 다른 운영 체제로의 이식이나 다른 라이선스를 위해 여러 번 재구현되었다. AIX에서는 1999년에 AIX 4.3에서 topas라고 불리는 강화된 버전의 top이 도입되었다.

리눅스용 첫 번째 top은 로저 빈스(Roger Binns)에 의해 구현되었다. 최근에는 제임스 C. 워너(James C. Warner)에 의한 풀 컬러화된 구현이 일반적이며, 이는 procps 패키지에 포함되어 있다.

3. 기능

이 프로그램은 사용자가 지정한 기준에 따라 실행 중인 프로세스의 정렬된 목록을 생성하고 이를 주기적으로 업데이트한다. 기본 정렬은 CPU 사용량이며, CPU 사용량이 가장 많은 상위 프로세스만 표시된다. top은 처리 능력과 메모리 사용량, 그리고 실행 중인 프로세스에 대한 기타 정보를 보여준다. 일부 버전의 top은 열 선택이나 정렬 방식과 같은 디스플레이의 광범위한 사용자 정의를 허용한다.

top은 시스템 관리자에게 유용하며, 어떤 사용자와 프로세스가 주어진 시간에 가장 많은 시스템 리소스를 소비하는지 보여준다.

보기 편하게 설정을 변경한 리눅스에서 실행되는 Top

3. 1. 구현체

top에는 여러 가지 버전이 있다. 전통적인 유닉스 버전은 윌리엄 르페브르(William LeFebvre)에 의해 작성되었으며 원래 1984년에 저작권이 등록되었다.[1] 이 버전은 SourceForge에서 호스팅되며[2] 2008년에 릴리스 3.7이 발표되었다.[3]

Linux 버전의 top은 procps-ng 도구 그룹의 일부이다. 원래 로저 빈스(Roger Binns)에 의해 작성되어[4] 1992년 초에 출시되었지만 얼마 지나지 않아 다른 사람들에게 넘겨졌다.[5]

솔라리스에서 이와 거의 동일한 프로그램은 prstat이다. 마이크로소프트 윈도우에는 tasklist 명령과 그래픽 작업 관리자 유틸리티가 있다. IBM AIX에는 topas 및 topas_nmon 명령의 일부로 업데이트되는 실행 중인 프로세스 목록이 있다.

리눅스용 첫 번째 top은 로저 빈스에 의해 구현되었다.

4. 출력 정보

top은 사용자가 지정한 기준에 따라 실행 중인 프로세스의 정렬된 목록을 생성하고 주기적으로 업데이트한다. 기본 정렬은 CPU 사용량이며, CPU 사용량이 가장 많은 상위 프로세스만 표시된다. top은 처리 능력과 메모리 사용량, 그리고 실행 중인 프로세스에 대한 기타 정보를 보여준다. 일부 버전의 top은 열 선택이나 정렬 방식과 같은 디스플레이의 광범위한 사용자 정의를 허용한다.

top은 시스템 관리자에게 유용하며, 어떤 사용자와 프로세스가 주어진 시간에 가장 많은 시스템 리소스를 소비하는지 보여준다.

다음은 top 출력의 예시이다.

```text

top - 14:21:23 up 2 days, 21:40, 44 users, load average: 14.44, 14.13, 14.64

Tasks: 1552 total, 8 running, 1544 sleeping, 0 stopped, 0 zombie

%Cpu(s): 9.6 us, 0.7 sy, 0.0 ni, 89.5 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st

MiB Mem : 1031911.+total, 368915.2 free, 172285.0 used, 490711.5 buff/cache

MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 807110.1 avail Mem

```


  • `평균 부하`는 지난 1/5/15분 동안의 실행 대기열 길이의 지수 이동 평균이다. 실행 대기열에는 실행 중이거나 실행을 대기 중인 프로세스가 모두 포함된다. 작업 전환이 없는 완전한 활용 시 평균 부하는 CPU 수와 같다.[7]
  • `Tasks`는 프로세스의 상태를 계산한다.
  • `%Cpu(s)`는 CPU 사용률을 범주별로 나눈 비율을 계산한다.
  • `MiB Mem`: 메비바이트 단위의 메모리 사용량이다. `buff/cache`는 버퍼와 캐시에 사용되는 메모리이다.
  • `MiB Swap`: 메비바이트 단위의 스왑 공간 사용량이다. 시스템에 더 많은 메모리 리소스가 필요하고 RAM이 가득 찬 경우 메모리의 비활성 페이지가 스왑 공간으로 이동한다. 위 스냅샷에서는 총 2048MiB의 스왑이 있으며, 모두 비어 있어 스와핑이 발생하지 않음을 나타내며, 이는 성능에 좋다.
  • `avail Mem`: 스와핑 없이 새 응용 프로그램에 사용할 수 있는 메모리 양이다. 여기에는 사용하지 않은 RAM뿐만 아니라 RAM 캐시에서 회수할 수 있는 메모리도 고려된다.


top 출력의 나머지 부분은 각 행이 프로세스별 정보를 나타내는 표 형태로 제공된다. (열의 선택 및 순서는 구성 가능하다.)[8]

PIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND
프로세스 ID
각 실행 중인 프로세스를 식별하는 고유 번호
프로세스를 시작한 사용자
사용자 이름이 너무 길면 끝에 `+`가 붙어 잘림
시스템 스케줄러에서 계산한 작업의 실시간 우선 순위
낮은 PR 번호는 스케줄러에서 더 중요하게 간주되어 더 많은 CPU 시간을 갖는 경향이 있음
사용자와 관리자가 실시간 우선 순위에 영향을 주기 위해 수동으로 설정한 작업의 나이스
낮은 나이스 값은 프로세스를 선호, 높은 나이스 값은 프로세스를 비선호
범위는 -20(가장 선호)에서 19(가장 비선호)
프로세스의 가상 메모리 크기
스왑된 메모리, 할당되었지만 사용하지 않은 메모리, 공유 메모리를 포함하여 프로세스가 액세스할 수 있는 모든 메모리
상주 집합 크기
프로세스의 메모리 중 RAM에 저장된 부분
`VIRT`와 비교하여 스왑된 메모리, 아직 사용하지 않은 메모리 또는 공유 메모리가 제외됨
공유 메모리 크기
프로세스에서 청구한 RAM 중 다른 프로세스와 공유 가능한 양
프로세스 상태
프로세스가 현재 사용하고 있는 CPU 시간의 백분율프로세스에서 사용한 실제 RAM의 백분율작업이 시작된 이후 사용한 총 CPU 시간
`분:초`로 표시
`TIME+`의 더하기 기호는 0.01초까지 정확하다는 것을 의미
`TIME`을 표시하면 1초까지 정확
프로세스를 시작한 명령줄 인수
`USER`와 달리 명령이 너무 길면 끝에 `+` 없이 잘림


4. 1. 시스템 정보

top은 사용자가 지정한 기준에 따라 실행 중인 프로세스의 정렬된 목록을 생성하고 주기적으로 업데이트하는 프로그램이다. 기본 정렬은 CPU 사용량 기준이며, CPU 사용량이 가장 많은 상위 프로세스만 표시된다. top은 처리 능력과 메모리 사용량, 그리고 실행 중인 프로세스에 대한 기타 정보를 보여준다. 일부 버전의 top은 열 선택이나 정렬 방식과 같은 디스플레이의 광범위한 사용자 정의를 허용한다.

top은 시스템 관리자에게 유용하며, 어떤 사용자와 프로세스가 주어진 시간에 가장 많은 시스템 리소스를 소비하는지 보여준다.

다음은 top 출력의 예시이다.

```text

top - 14:21:23 up 2 days, 21:40, 44 users, load average: 14.44, 14.13, 14.64

Tasks: 1552 total, 8 running, 1544 sleeping, 0 stopped, 0 zombie

%Cpu(s): 9.6 us, 0.7 sy, 0.0 ni, 89.5 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st

MiB Mem : 1031911.+total, 368915.2 free, 172285.0 used, 490711.5 buff/cache

MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 807110.1 avail Mem

```

  • 첫 번째 행: 시스템의 현재 시간, 가동 시간, 사용자 수, 평균 부하를 보여준다.
  • `load average`: 지난 1, 5, 15분 동안의 평균 부하를 나타낸다. 평균 부하는 실행 대기열 길이의 지수 이동 평균이다. 실행 대기열에는 실행 중이거나 실행을 대기 중인 프로세스가 모두 포함된다. 작업 전환이 없는 완전한 활용 시 평균 부하는 CPU 수와 같다.[7]
  • Tasks: 프로세스의 상태를 계산한다. (total: 전체, running: 실행 중, sleeping: 대기 중, stopped: 중지됨, zombie: 좀비)
  • %Cpu(s): CPU 사용률을 범주별로 나눈 비율을 계산한다.
  • us(user): 사용자, sy(system): 시스템, ni(nice): nice, id(idle): 유휴, wa(IOWait): IOWait, hi(hardware interrupt): 하드웨어 인터럽트, si(software interrupt): 소프트웨어 인터럽트, st(steal time): 스틸 시간
  • MiB Mem: 메비바이트 단위의 메모리 사용량이다. `buff/cache`는 버퍼와 캐시에 사용되는 메모리이다.
  • MiB Swap: 메비바이트 단위의 스왑 공간 사용량이다. 시스템에 더 많은 메모리 리소스가 필요하고 RAM이 가득 찬 경우 메모리의 비활성 페이지가 스왑 공간으로 이동한다. 위 스냅샷에서는 총 2048MiB의 스왑이 있으며, 모두 비어 있어 스와핑이 발생하지 않음을 나타내며, 이는 성능에 좋다.
  • avail Mem: 스와핑 없이 새 응용 프로그램에 사용할 수 있는 메모리 양이다. 여기에는 사용하지 않은 RAM뿐만 아니라 RAM 캐시에서 회수할 수 있는 메모리도 고려된다.


top 출력의 나머지 부분은 각 행이 프로세스를 나타내는 테이블을 제공한다. 열의 선택 및 순서는 구성 가능하다.[8]

PIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND
1root200245616121500S0.00.00:00.07init(Ubuntu)
4root200245640S0.00.00:00.00init
656403user220080GB3.6GB370000KBS100.00.41594:38python3
2024198longnam+20050.5GB4.7GB609200KBS1.60.5204:46.85long-name-proc
2056804longnam+200237.1GB31.1GB23.1GBS136.83.169:54.11python3


  • PID: 프로세스 ID는 각 실행 중인 프로세스를 식별하는 고유한 번호이다.
  • USER: 프로세스를 시작한 사용자이다. 사용자 이름이 너무 길면 끝에 `+`가 붙어 잘린다.
  • PR: 시스템 스케줄러에서 계산한 작업의 실시간 우선 순위이다. 낮은 PR 번호는 스케줄러에서 더 중요하게 간주되고 스케줄링될 가능성이 더 높으므로 실시간당 더 많은 CPU 시간을 갖는 경향이 있다.
  • NI: 사용자와 관리자가 실시간 우선 순위에 영향을 주기 위해 수동으로 설정한 작업의 ''나이스'' 값이다. 낮은 나이스 값은 프로세스를 선호하고 높은 나이스 값은 프로세스를 비선호하는 경향이 있다. 범위는 -20(가장 선호)에서 19(가장 비선호)까지이다.
  • VIRT: 프로세스의 가상 메모리 크기이다. 여기에는 스왑된 메모리, 할당되었지만 사용하지 않은 메모리, 공유 메모리를 포함하여 프로세스가 액세스할 수 있는 모든 메모리가 포함된다.
  • RES: 상주 집합 크기는 프로세스의 메모리 중 RAM에 저장된 부분이다. `VIRT`와 비교하여 스왑된 메모리, 아직 사용하지 않은 메모리 또는 공유 메모리가 제외된다.
  • SHR: 공유 메모리 크기: 프로세스에서 청구한 RAM 중 다른 프로세스와 공유 가능한 양이다.
  • S: 프로세스 상태. 상태는 다음과 같다.
  • `R`: 실행 중
  • `S`: 대기 중
  • `I`: 유휴
  • `D`: 디스크 대기(중단 불가)
  • `Z`: 좀비(부모에 의해 종료되었지만 회수되지 않음)
  • `T`: 작업 제어 신호에 의해 중지되거나 디버거에 의해 중지됨. 추적 중인 `t`
  • %CPU: 프로세스가 현재 사용하고 있는 CPU 시간의 백분율이다.
  • %MEM: 프로세스에서 사용한 실제 RAM의 백분율이다.
  • TIME+: 작업이 시작된 이후 사용한 총 CPU 시간이다. 이는 `분:초.1/100초`로 표시된다. `TIME+`의 더하기 기호는 0.01초까지 정확하다는 것을 의미한다. `TIME`을 표시하면 1초까지 정확하다.
  • COMMAND: 프로세스를 시작한 명령줄 인수이다. `USER`와 달리 명령이 너무 길면 끝에 `+` 없이 잘린다.

4. 2. 프로세스 정보

top 프로그램은 사용자가 지정한 기준에 따라 실행 중인 프로세스의 정렬된 목록을 생성하고 주기적으로 업데이트한다. 기본 정렬은 CPU 사용량이며, CPU 사용량이 가장 많은 상위 프로세스만 표시된다. top은 처리 능력과 메모리 사용량, 그리고 실행 중인 프로세스에 대한 기타 정보를 보여준다. 일부 버전의 top은 열 선택이나 정렬 방식과 같은 디스플레이의 광범위한 사용자 정의를 허용한다.

top은 시스템 관리자에게 유용하며, 어떤 사용자와 프로세스가 주어진 시간에 가장 많은 시스템 리소스를 소비하는지 보여준다.

다음은 top 출력의 예시이다.

```text

top - 14:21:23 up 2 days, 21:40, 44 users, load average: 14.44, 14.13, 14.64

| | | |

<시간> <시스템 가동 시간> <사용자 수> <지난 1, 5, 15분 동안의 평균 부하>

Tasks: 1552 total, 8 running, 1544 sleeping, 0 stopped, 0 zombie

%Cpu(s): 9.6 us, 0.7 sy, 0.0 ni, 89.5 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st

| | | | | | | '------.

<사용자> <시스템> <유휴> <하드웨어/소프트웨어 인터럽트> <스틸 시간>

MiB Mem : 1031911.+total, 368915.2 free, 172285.0 used, 490711.5 buff/cache

MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 807110.1 avail Mem

```

  • `평균 부하`는 지난 1/5/15분 동안의 실행 대기열 길이의 지수 이동 평균이다. 실행 대기열에는 실행 중이거나 실행을 대기 중인 프로세스가 모두 포함된다. 작업 전환이 없는 완전한 활용 시 평균 부하는 CPU 수와 같다.[7]
  • `Tasks`는 프로세스의 상태를 계산한다.
  • `%Cpu(s)`는 CPU 사용률을 범주별로 나눈 비율을 계산한다.
  • `MiB Mem`: 메비바이트 단위의 메모리 사용량이다. `buff/cache`는 버퍼와 캐시에 사용되는 메모리이다.
  • `MiB Swap`: 메비바이트 단위의 스왑 공간 사용량이다. 시스템에 더 많은 메모리 리소스가 필요하고 RAM이 가득 찬 경우 메모리의 비활성 페이지가 스왑 공간으로 이동한다. 위 스냅샷에서는 총 2048MiB의 스왑이 있으며, 모두 비어 있어 스와핑이 발생하지 않음을 나타내며, 이는 성능에 좋다.
  • `avail Mem`: 스와핑 없이 새 응용 프로그램에 사용할 수 있는 메모리 양이다. 여기에는 사용하지 않은 RAM뿐만 아니라 RAM 캐시에서 회수할 수 있는 메모리도 고려된다.


top 출력의 나머지 부분은 각 행이 프로세스별 정보를 나타내는 표 형태로 제공된다. (열의 선택 및 순서는 구성 가능하다.)[8]

PIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND
1root200245616121500S0.00.00:00.07init(Ubuntu)
4root200245640S0.00.00:00.00init
656403user220080.0g3.6g370000S100.00.41594:38python3
2024198longnam+20050.5g4.7g609200S1.60.5204:46.85long-name-proc
2056804longnam+200237.1g31.1g23.1gS136.83.169:54.11python3



각 열에 대한 설명은 다음과 같다.


  • `PID`: 프로세스 ID는 각 실행 중인 프로세스를 식별하는 고유한 번호이다.
  • `USER`: 프로세스를 시작한 사용자이다. 사용자 이름이 너무 길면 끝에 `+`가 붙어 잘린다.
  • `PR`: 시스템 스케줄러에서 계산한 작업의 실시간 우선 순위이다. 더 낮은 PR 번호는 스케줄러에서 더 중요하게 간주되고 스케줄링될 가능성이 더 높으므로 실시간당 더 많은 CPU 시간을 갖는 경향이 있다.
  • `NI`: 사용자와 관리자가 실시간 우선 순위에 영향을 주기 위해 수동으로 설정한 작업의 ''나이스'' 값이다. 낮은 나이스 값은 프로세스를 선호하고 높은 나이스 값은 프로세스를 비선호하는 경향이 있다. 범위는 -20(가장 선호)에서 19(가장 비선호)까지이다.
  • `VIRT`: 프로세스의 가상 메모리 크기이다. 여기에는 스왑된 메모리, 할당되었지만 사용하지 않은 메모리, 공유 메모리를 포함하여 프로세스가 액세스할 수 있는 모든 메모리가 포함된다.
  • `RES`: 상주 집합 크기는 프로세스의 메모리 중 RAM에 저장된 부분이다. `VIRT`와 비교하여 스왑된 메모리, 아직 사용하지 않은 메모리 또는 공유 메모리가 제외된다.
  • `SHR`: 공유 메모리 크기: 프로세스에서 청구한 RAM 중 다른 프로세스와 공유 가능한 양이다.
  • `S`: 프로세스 상태. 상태는 다음과 같다.
  • `R`: 실행 중
  • `S`: 대기 중
  • `I`: 유휴
  • `D`: 디스크 대기(중단 불가)
  • `Z`: 좀비(부모에 의해 종료되었지만 회수되지 않음)
  • `T`: 작업 제어 신호에 의해 중지되거나 디버거에 의해 중지됨. 추적 중인 `t`
  • `%CPU`: 프로세스가 현재 사용하고 있는 CPU 시간의 백분율이다.
  • `%MEM`: 프로세스에서 사용한 실제 RAM의 백분율이다.
  • `TIME+`: 작업이 시작된 이후 사용한 총 CPU 시간이다. 이는 `분:초`로 표시된다. `TIME+`의 더하기 기호는 0.01초까지 정확하다는 것을 의미한다. `TIME`을 표시하면 1초까지 정확하다.
  • `COMMAND`: 프로세스를 시작한 명령줄 인수이다. `USER`와 달리 명령이 너무 길면 끝에 `+` 없이 잘린다.

4. 3. 프로세스별 상세 정보

top 프로그램은 실행 중인 프로세스에 대한 상세 정보를 제공하며, 시스템 관리자가 시스템 리소스 사용 현황을 파악하는 데 유용하다.

프로세스별 상세 정보는 다음과 같다.[8]

PIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND
프로세스 ID
각 실행 중인 프로세스를 식별하는 고유 번호
프로세스를 시작한 사용자
사용자 이름이 너무 길면 끝에 `+`가 붙어 잘림
시스템 스케줄러에서 계산한 작업의 실시간 우선 순위
낮은 PR 번호는 스케줄러에서 더 중요하게 간주되어 더 많은 CPU 시간을 갖는 경향이 있음
사용자와 관리자가 실시간 우선 순위에 영향을 주기 위해 수동으로 설정한 작업의 나이스
낮은 나이스 값은 프로세스를 선호, 높은 나이스 값은 프로세스를 비선호
범위는 -20(가장 선호)에서 19(가장 비선호)
프로세스의 가상 메모리 크기
스왑된 메모리, 할당되었지만 사용하지 않은 메모리, 공유 메모리를 포함하여 프로세스가 액세스할 수 있는 모든 메모리
상주 집합 크기
프로세스의 메모리 중 RAM에 저장된 부분
`VIRT`와 비교하여 스왑된 메모리, 아직 사용하지 않은 메모리 또는 공유 메모리가 제외됨
공유 메모리 크기
프로세스에서 청구한 RAM 중 다른 프로세스와 공유 가능한 양
프로세스 상태
프로세스가 현재 사용하고 있는 CPU 시간의 백분율프로세스에서 사용한 실제 RAM의 백분율작업이 시작된 이후 사용한 총 CPU 시간
`분:초`로 표시
`TIME+`의 더하기 기호는 0.01초까지 정확하다는 것을 의미
`TIME`을 표시하면 1초까지 정확
프로세스를 시작한 명령줄 인수
`USER`와 달리 명령이 너무 길면 끝에 `+` 없이 잘림


5. 옵션

top 명령어의 몇 가지 옵션은 다음과 같다.


  • '''-d''' : 화면 갱신 간격을 초 단위로 지정한다. 예를 들어 `-d 5`는 5초마다 화면을 갱신한다. 소수점 이하 한 자리까지 지정할 수 있다.
  • '''-u''' : 특정 사용자의 프로세스만 표시한다. `-u nobody`는 nobody 사용자의 프로세스만 보여준다.

6. ps 명령어와의 비교

top에는 여러 가지 버전이 있다. 전통적인 유닉스 버전은 윌리엄 르페브르(William LeFebvre)에 의해 작성되었으며 원래 1984년에 저작권이 등록되었다.[1] 이 버전은 SourceForge에서 호스팅되며[2] 2008년에 릴리스 3.7이 발표되었다.[3]

Linux 버전의 top은 procps-ng 도구 그룹의 일부이다. 원래 로저 빈스(Roger Binns)에 의해 작성되어[4] 1992년 초에 출시되었지만 얼마 지나지 않아 다른 사람들에게 넘겨졌다.[5]

ps 프로그램은 top과 유사하지만 호출 시점에 촬영된 프로세스의 스냅샷을 생성한다. top의 n (반복 횟수) 옵션은 유사한 결과를 생성하여 프로그램이 지정된 횟수만큼 반복 실행된 후 출력을 인쇄하고 종료되도록 한다.

참조

[1] 웹사이트 Documentation https://web.archive.[...] 2016-05-22
[2] 웹사이트 About Top https://web.archive.[...] 2014-09-16
[3] 웹사이트 Top / News https://sourceforge.[...] 2016-05-22
[4] 웹사이트 top(1): tasks - Linux man page http://linux.die.net[...] 2016-05-22
[5] 웹사이트 Linux Top Origins {{!}} Roger's world http://www.rogerbinn[...] 2016-05-22
[6] 웹사이트 UNIX Load Average Part 2: Not Your Average Average https://web.archive.[...] teamquest.com 2013-06-10
[7] 웹사이트 Examining Load Average http://www.linuxjour[...] 2006-12-01
[8] 문서 top(1) - Linux man page https://gitlab.com/p[...]
[9] 웹인용 Documentation http://www.unixtop.o[...] 2016-05-22
[10] 웹인용 About Top http://www.unixtop.o[...] 2014-09-16
[11] 웹인용 Top / News https://sourceforge.[...] 2016-05-22
[12] 웹인용 top(1): tasks - Linux man page http://linux.die.net[...] 2016-05-22
[13] 웹인용 Linux Top Origins {{!}} Roger's world http://www.rogerbinn[...] 2016-05-22



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com