SYSTAT(1)

명칭
systat - 시스템의 통계 정보를 CRT 에 표시한다

서식
systat [-display] [refresh-interval]

해설
systat 유틸리티는, ncurses(3) 의 curses 스크린 디스플레이 프로그램 라이브러리를 이용한 스크린 지향인 방법으로, 시스템의 각종 통계 정보를 표시합니다.

systat 의 실행 중은 스크린이 통상 2 개의 윈도우에 분할됩니다 (예외는 vmstat 를 표시하는 경우로 이 때는 스크린 전체를 사용합니다). 위의 윈도우는 그 때의 시스템의 로드 애버리지를 표시합니다. 아래의 윈도우에 표시되는 정보는, 유저의 명령에 응해 변화할지도 모릅니다. 스크린의 맨 마지막 줄은 유저의 입력과 에러 메세지를 위해서(때문에) 예약되고 있습니다.

디폴트에서는 systat (은)는 프로세서 사용율이 최대의 프로세스를 아래의 윈도우에 표시합니다. 그 밖에 스왑 area의 사용 상황, 디스크 I/O 의 통계 정보 ( iostat(8) 식에), 가상기억의 통계 정보 ( vmstat(8) 식에), 네트워크의 ``mbuf''이용율, TCP/IP 통계 정보, 네트워크 connection ( netstat(1) 식에)를 표시합니다.

입력은 2 개가 다른 레벨로 해석됩니다. ``글로벌''명령 인터프리터가 모든 키보드 입력을 처리합니다. 만약 이 명령 인터프리터가 커멘드를 인식할 수 없으면 입력행은 표시하는 종류 마다의 명령 인터프리터에게 건네집니다. 이것에 의해 각 표시 내용에 응한 명령을 가지는 것이 가능하게 됩니다.

명령행의 옵션:

-display
    - 에 이어 display (으)로서 이하의 어느쪽이든 하나를 지정합니다: icmp, iostat, ip, mbufs, netstat, pigs, swap, tcp, vmstat 이러한 표시 내용은 대화적으로도 ( “-” 없이 ) 지정할 수 있고 그리고 자세한 것은 이하의 설명에 있습니다.

refresh-interval
    refresh-value 에 스크린의 갱신 간격을 초수로 지정합니다.

몇개의 캐릭터는 systat (을)를 즉석에서 반응시킵니다. 그렇게 말한 캐릭터에는 이하의 물건이 있습니다

^L  스크린을 갱신합니다.

^G  그 시점에서 아래의 윈도우에 표시되고 있는 ``표시 내용''의 명칭과 갱신 간격을 표시합니다.

:   커서를 명령행으로 이동해 박힌 입력행을 명령로서 해석합니다. 명령의 입력중은 현위치 캐릭터 소거, 단어 소거, 행 취소의 각 편집기능을 사용할 수 있습니다.

이하의 명령은 ``글로벌''커멘드 인터프리터에 의해 해석됩니다.

help
    지정 가능한 표시 내용을 명령행에 표시합니다.

load
    과거 1, 5, 15분간의 로드 애버리지를 명령행에 표시합니다.

stop
    스크린의 코우신을 세웁니다.

    [start] [number] 스크린의 갱신을 개시 (계속)합니다. 만약 수치로 초수지정의 인수가 주어지면(자) 갱신 간격 (의 초수)으로서 해석됩니다. 수치만을 주면(자) 갱신 간격이 그 값에 세트 됩니다.

quit
    systat (을)를 종료합니다. (이것은 q (와)과 생략 할 수 있습니다. )

지정 가능한 표시 내용에는 이하가 있습니다:

pigs
    아래의 윈도우에, 주기억을 차지하고 프로세서 이용율이 최대의 프로세스를 표시합니다 (디폴트의 표시 내용입니다). 유저 프로세스에의 프로세서의 할당이 100% 미만때는, 나머지는 ``idle''프로세스에 할당할 수 있고 있는 것과 취급합니다.

icmp
    아래의 윈도우에, Internet Control Message Protocol (“ICMP”) 그리고 송수신 된 메세지의 통계 정보를 표시합니다. 스크린의 왼쪽 반에는 수신한 패킷의 정보를 표시해, 오른쪽 반에는 송신되었다고 생각되는 패킷의 정보를 표시합니다.

    표시 내용이 icmp 의 경우는 2 개의 명령을 이용할 수 있습니다: mode (와)과 reset 입니다. mode 명령은 주어진 인수에 응해 4 개의 표시 모드로부터 1 개를 선택하기 위해서(때문에) 사용합니다:
    rate:
        각각의 값의 변동을 초단위에 패킷수로 표시합니다 (디폴트입니다)
    delta:
        각각의 값의 변동을 갱신 간격 단위에 패킷수로 표시합니다
    since:
        표시가 마지막에 리셋트 되고 나서의 각각의 값의 변동의 총계를 표시합니다
    absolute:
        각 통계의 절대치를 표시합니다

    reset 명령은 since 모드의 기점을 리셋트 합니다. 인수 없음의 mode 명령은 그 시점의 모드를 커멘드 라인에 표시합니다.

ip  IP (와)과 UDP 의 통계 정보를 표시한다고 하는 점을 제외해 icmp (와)과 같습니다.

tcp icmp (을)를 닮아 있습니다만, TCP 의 통계 정보를 표시합니다.

iostat
    아래의 윈도우에, 프로세서 이용율과 디스크의 throughput의 통계 정보를 표시합니다. 프로세서 이용율의 통계 정보는 유저 모드 (``user''), 낮은 priority로 실행되었다 유저 모드의 프로세스 (``nice''), 시스템 모드 (``system''), 세치기 모드 (``interrupt''), 아이돌 (``idle'')에서의 총실행 시간 의 막대 그래프로서 표시됩니다. 디스크의 throughput의 통계 정보로서는, 각 드라이브에 대해, 초쯤의 메가바이트수, 초쯤의 평균 디스크 트랜잭션(transaction)수, 트랜잭션(transaction) 근처의 평균 전송 킬로바이트수가 표시됩니다. 이 정보는 막대 그래프 또는 아래에 스크롤 하는 수치의 열로 표시됩니다. 막대 그래프에서의 표시가 디폴트입니다;

    이하의 명령은 표시 내용이 iostat 의 경우에 특유입니다; 선두로부터의 일의에 식별 가능한 캐릭터수만으로 지정 가능합니다.

    numbers
        디스크 I/O 의 통계 정보를 수치 형식에서 표시합니다. 값은 아래에 스크롤 한다 수치의 열로서 표시됩니다.
    bars
        디스크 I/O 의 통계 정보를 막대 그래프 형식에서 표시합니다 (디폴트).
    kbpt
        트랜잭션(transaction) 근처의 킬로바이트수의 표시를 바꿉니다 (디폴트에서는 트랜잭션(transaction) 근처의 킬로바이트는 표시되지 않습니다).

swap
    커널에 짜넣어지고 있는 전스왑 영역에 도착해 이용 상황에 관한 정보를 표시합니다. 최초의 열은 파티션의 디바이스명입니다. 다음의 열은 파티션의 총용량입니다. Used 의 열은 그때까지 사용된 총블록을 나타냅니다; 그래프는 각 파티션으로 사용중의 부분의 비율을 나타냅니다. 2 개(살) 이상의 사용중의 스왚 파티션이 있는 경우는, 합계의 행도 표시됩니다. 커널에 짜넣어지고 있지만, 사용되지 않은 것은 사용 불가로서 표시됩니다.

mbufs
    아래의 윈도우에, 어떠한 용도, 즉, 데이터, 소켓 구조체 등등에 확보된 mbuf 의 개수를 표시합니다.

vmstat
    화면 전체를 사용해, 가상기억의 이용 상황, 프로세스 스케줄링, 디바이스로부터의 끼어들어, 시스템의 이름 변환 캐쉬, 디스크 I/O 등등에 관한 (약간 붐비어 들어간) 통계 정보의 요약을 표시합니다.

    화면의 좌상의 area에는 로그인하고 있는 유저수와 과거 1, 5, 15분간의 로드 애버리지가 표시됩니다. 이 행아래는 메모리 이용율의 통계 정보입니다. 이 표의 1 행 째는 액티브한 프로세스, 즉 과거 20 초 이내에 주행 상태였던 일이 있는 프로세스만의 메모리 이용율을 보고합니다. 2 번째의 행은 전프로세스의 메모리 이용 상황을 보고하고 있습니다. 1 번째의 열은 프로세스에 의해 요구된 물리 페이지수를 표시합니다. 2 번째의 열은 읽어내 전용의 텍스트 페이지 에 대어졌다 물리 페이지수를 표시합니다. 3 번째와 4 번째의 열은 같은 물건에 관해서 가상 페이지의 정보를 표시합니다. 이것은 전프로세스가 전페이지를 가진다고 했을 때에 필요한 페이지수를 나타냅니다. 마지막으로, 최종열은 면세표상의 물리 페이지수를 나타냅니다.

    메모리 정보아래는 평균 프로세스수의 리스트 (1 갱신 기간 전부터의 것)로, 주행 가능 (`r'), 페이지 대기중 (`p'), 페이징 이외의 디스크 대기중 (`d'), sleeve 상태 (`s'), 스왚 아웃 되고 있지만 실행되는 것을 기다리고 있는 상태 (`w')입니다. 이 행에는 콘텍스트 스위칭의 평균 회수 (`Csw'), 트랩 (`Trp'; 페이지 폴트를 포함한다), 시스템 콜 (`Sys'), 세치기 (`Int'), 네트워크 소프트웨어 인터럽트 (`Sof'), 페이지 폴트 (`Flt')도 표시합니다.

    이 프로세스 큐의 길이의 리스트아래는 시간의 총계를 시스템 (`='로 나타납니다), 세치기 (`+'로 나타납니다), 유저 (`>'로 나타납니다), 나이스 (`-'로 나타납니다), 아이돌 (` '로 나타납니다)에 대해 수치의 리스트와 막대 그래프로 나타낸 것입니다.

    프로세스 정보아래는 파일명 변환의 통계 정보입니다. 이것은 전의 갱신 기간중에 행해진 파일명으로부터 inode 번호에의 변환의 회수, 시스템 전체로 공통의 변환 캐쉬로 처리된 것의 회수와 비율, 프로세스 마다의 변환 캐쉬로 처리된 것의 회수와 비율을 표시하고 있습니다.

    좌하는 디스크 액세스 상황입니다. 여기에서는 1 갱신 간격 (디폴트에서는 5 초)에 대해, 전송 근처의 킬로바이트수, 초쯤의 전송 회수, 초쯤의 전송 메가바이트수, 디스크가 Busy인 시간의 퍼센티지를 보고합니다. 시스템은, 거의 모든 storage device의 통계 정보를 보관 유지합니다. 일반적으로는, 7 개까지의 디바이스가 표시됩니다. 표시되는 디바이스는, 디폴트에서는 커널의 디바이스 리스트의 선두에 있는 것입니다. devstat 시스템의 상세한 것에 대하여는, devstat(3) 및 devstat(9) (을)를 참조해 주세요.

    우상의 일시아래는 페이징과 스왑의 가동 상황입니다. 최초의 2 열은, 1 갱신 간격의 사이에 페이지 폴트와 페이지 demon에 의해, 읽힌 페이지수로 쓸어 내진 페이지수의 1 초 쯤의 평균을 보고합니다. 3 번째와 4 번째의 열은, 1 갱신 간격의 사이에 스케쥴러에 의해 발행되었다 스왑 요구에 의해 읽힌 페이지수로 쓸어 내진 페이지수의 1 초 쯤의 평균을 보고합니다. 이 정보의 1 행 째는 1 갱신 간격에서의 초쯤의 평균 디스크 전송 회수를 가리킵니다; 이 정보의 2 행 째는 1 갱신 간격에서의 초쯤의 평균 전송 페이지수를 가리킵니다.

    페이징의 통계 정보아래는 가상기억 시스템의 이하의 항목의 평균수를 표시하는 열입니다. 각각, 기입시에 카피를 한 페이지수 (`cow'), 요구시 0 클리어를 한 페이지수 (`zfod'), 페이징 대상에서 제외해져 고정되고 있는 페이지수 (`wire'), 늦은 (온더 플라이의) 제로 필의 비율 (`%slo-z'), 최근 참조된 페이지수 (`act'), 페이징의 후보가 되어 있는 페이지수 (`inact'), 버퍼 캐쉬 큐에 있는 페이지수 (`cache'), 프리 페이지수 (`free'), 페이지 demon가 해방한 페이지수 (`daefr'), 프로세스가 종료한 일에 의해 해방된 페이지수 (`prcfr'), 면세표로부터 재유효화 된 페이지수 (`react'), 페이지 demon가 일으켜진 회수 (`pdwak'), 페이지 demon가 조사한 페이지수 (`pdpgs'), 읽어들여 도중에 페이지 폴트가 블록 된 회수 (`intrn') 의 1 갱신 간격에서의 초쯤의 평균치입니다.

    이 열의 가장 아래는, 이하의 용도에 사용되고 있다 메모리의 총량을 각각 붙어 킬로바이트 단위로 가리키고 있습니다. 버퍼 캐쉬를 위해서(때문에) 사용되고 있는 분 (`buf'), 버퍼 캐쉬중의 더티 버퍼수 (`dirtybuf'), vnode 캐쉬가 바람직하는 최대 사이즈 (`desiredvnodes') (네임 캐쉬의 사이즈까지를 제외하면(자), 대부분은 미사용), 실제로 확보된 vnode 수 (`numvnodes'), 확보된 vnode 로 프리인 물건의 수 (`freevnodes')

    화면의 우하는 시스템에 의해 처리된 세치기의 상세합니다. 리스트의 탑은 갱신 기간중의 초쯤의 총세치기수입니다. 열의 나머지의 부분은 총세치기수의 디바이스 마다의 상세합니다. 부트 하고 나서 적어도 1 회는 인터럽트를 발생한 디바이스에 대한 보고 표시됩니다.

    이하의 명령은 표시 내용이 vmstat 의 경우에 특유입니다; 선두로부터의 일의에 식별 가능한 캐릭터수만으로 지정 가능합니다.

    boot
        시스템이 부트 하고 나서의 누적의 통계 정보를 표시합니다.
    run 이 명령이 주어지고 나서의 실행 중의 토탈로서 통계 정보를 표시합니다.
    time
        갱신 기간의 평균으로 통계 정보를 표시합니다 (디폴트).
    want_fd
        fd 디바이스의 디스크 사용 상황을 표시하는지 아닌지를 바꿉니다.
    zero
        실행 중의 통계 정보를 0 에 리셋트 합니다.

netstat
    아래의 윈도우에 네트워크 접속 상황을 표시합니다. 디폴트에서는, 리퀘스트를 기다리고 있는 네트워크 서버는 표시되지 않습니다. 각 주소는 ``host.port''의 포맷으로, 가능하면 심볼로 표시됩니다. 주소를 숫자로 표시하는 것이나, 포트, 호스트, 프로토콜의 표시를 제한하는 것이 가능합니다. (선두로부터의 일의에 식별 가능한 캐릭터수만으로 지정 가능합니다):

    all 리퀘스트를 기다리고 있는 서버 프로세스의 표시를 바꿉니다 (이것은 netstat(1) 의 -a 플래그와 등가입니다).
    numbers
        네트워크 주소를 숫자로 표시합니다.
    names
        네트워크 주소를 심볼로 표시합니다.
    proto protocol
        protocol 그리고 지정된 프로토콜을 사용하고 있는 네트워크 connection만을 표시합니다 (서포트하고 있는 프로토콜은 ``tcp'', ``udp'', ``all'').
    ignore [items]
        지정된 호스트 또는 포트와의 접속에 관한 정보를 표시하지 않습니다. 호스트와 포트는 이름 (``vangogh''나 ``ftp''), 또는 숫자로 지정할 수 있습니다. 호스트의 주소는 인터넷의 닷 표기를 사용합니다 (``128. 32.0. 9''). 공백에서 단락지어 1 개의 명령에 복수의 지정이 가능합니다.
    display [items]
        지정된 호스트 또는 포트와의 접속에 관한 정보를 표시합니다. ignore (와)과 같게, [items] (은)는 이름 또는 숫자가 사용 가능합니다.
    show [ports|hosts]
        명령행에, 그 시점에서 선택되고 있는 프로토콜, 호스트, 포트를 표시합니다. 무시되는 호스트와 포트에는 `! '를 전치 합니다. 만약 ports 인가 hosts 하지만 show 의 인수로서 주어지면(자), 지정된 정보만이 표시됩니다.
    reset
        포트, 호스트, 프로토콜의 선택 메카니즘을 디폴트 (모든 프로토콜, 포트, 호스트) 상태에 리셋트 합니다.

표시 내용의 변환 명령은 선두로부터의 일의에 식별 가능한 캐릭터수에 단축할 수 있습니다; 예를 들면 ``iostat''는 ``io''와 생략 할 수 있습니다. 화면 사이즈가 표시 내용에 불충분한 때는 정보를 버려질 가능성이 있습니다. 예를 들면, 10 대의 드라이브가 있는 머신에서는 iostat 의 막대 그래프는 24 행의 단말에서는 3 드라이브분 밖에 표시하지 않습니다. 막대 그래프를 할당할 수 있었던 화면의 스페이스에 들어가지 않을 때는 절약할 수 있어 실제의 값은 봉의 ``첨단 부분''에 표시됩니다.

이하의 명령은 디스크 드라이버에 관한 정보를 표시하는 것에 공통입니다. 이러한 명령은, 당신의 시스템에, 통상 화면에 표시 다 할 수 없는 수의 드라이브가 있는 경우에, 정보를 표시한다 드라이브세트를 선택하기 위해서 사용하기 위한 것입니다.

ignore [drives]
    지정된 드라이브에 관한 정보를 표시하지 않습니다. 복수의 드라이브를 공백에서 단락지어 지정할 수 있습니다.
display [drives]
    지정된 드라이브에 관한 정보를 표시합니다. 복수의 드라이브를 공백에서 단락지어 지정할 수 있습니다.
only [drives]
    지정된 디바이스만 표시합니다. 복수의 디바이스를 지정 가능하고, 그 경우 공백에서 단락짓습니다.
drives
    사용 가능한 디바이스의 리스트를 표시합니다.
match
    type,if,pass [| ...] 지정한 패턴에 매치 하는 디바이스를 표시합니다. 기본 매칭식은, iostat(8) 그리고 사용하는 것 것과 같습니다만, 1 점만 다릅니다. 각각이 OR 되는 복수의 -t 인수를 지정하는 대신에, 복수의 매칭식을 파이프 (‘|’) 캐릭터로 결합해 지정합니다. 각각의 매칭식중에서 콤마로 단락지어진 인수에 관해서 각각 AND 가 취해지고 나서, 파이프로 단락지어진 매칭식에 관해서 각각 OR 가 취해집니다. 편성식에 대해서 매치 하는 디바이스는, 표시하는 여지가 있으면 표시됩니다. 례:

        match da, scsi | cd, ide

    이것은, 전 SCSI 다이렉트 액세스 디바이스와 전 IDE CDROM 디바이스를 표시합니다.

        match da | sa | cd, pass

    이것은, 전다이렉트 액세스 디바이스, 전시퀸셜 액세스 디바이스, 그리고 CDROM 에의 액세스를 제공하는 전파스스르데바이스를 표시합니다.

관련 항목
netstat(1), kvm(3), icmp(4), ip(4), tcp(4), udp(4), iostat(8), vmstat(8)

관련 파일
/kernel
    네임 리스트를 읽어냅니다.
/dev/kmem
    주기억의 정보를 취합니다.
/etc/hosts
    호스트명을 끕니다.
/etc/networks
    네트워크명을 끕니다.
/etc/services
    포트명을 끕니다.

역사
systat 프로그램은 4.3BSD 에 처음으로 등장했습니다. icmp, ip, tcp 의 표시는 FreeBSD 3.0 에 처음으로 등장했습니다; ICMP, IP, TCP, UDP 의 통계 정보를 위해서(때문에) 다른 표시 모드를 준비한다고 하는 생각은, Silicon Graphics 의 IRIX 시스템의 netstat(1) 의 -C 옵션으로부터 차용했습니다.

버그
표시 내용에 따라서는 1 행에 최악이어 80 캐릭터를 표시할 수 있는 일을 상정하고 있습니다. vmstat (은)는 표시 area가 부족한 것 같습니다. 왜냐하면 (역주: 원문이 끊어져 있습니다) (신규의 프로그램으로서가 아니게 독립한 표시 화면으로서 추가되었습니다).

일본어 번역
노쿠비관고(hnokubi@yyy.or.jp): FreeBSD 용으로 번역