커널 2.6에서 proc/stat 를 사용해서 cpu 사용률을 구하는 방법 좀 알켜주세요.
시피유 사용률을 보여주는 어플을 만드는데요.
proc에 있는 stat를 활용해서 계산을 한다는데
검색 해보니 다 2.4 커널 설명뿐이네요
각 시피유가 아니고 전체 시피유에 관한 사용율을 계산 하는 방법을 가르쳐 주시면 고맙겠습니다.
다음은 제 컴퓨터에서 해본겁니다. 사양은 페도라코어4 입니다. 펜티엄4 하이퍼스레드 지원이구요.
[root@localhost proc]# cat stat
cpu 5938 84 1852 115894 7358 57 220 0
cpu0 2672 58 1017 57979 3843 24 120 0
cpu1 3265 26 834 57915 3515 33 100 0
intr 278170 164285 815 0 0 4 0 5 0 1 1 0 0 4 0 17708 5583 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50036 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2622 0 0 0 0 0 0 0 37106 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
두 번째(cpu0)과 세
두 번째(cpu0)과 세 번째(cpu1) 행이 '각' CPU에 대한 통계이고 첫 번째(cpu) 행이 '전체' CPU에 대한 통계입니다. (그래서 보시다시피 두 번째 행의 값에 세 번째 행의 값을 더하면 첫 번째 행의 값이 나옵니다.) 혹시나 싶어 말씀드리자면 각 항목에 대한 설명은 "man proc" 해서 "/proc/stat" 항목에서 확인하실 수 있고 (단, manpage 꾸러미 버전이 좀 이전 거면 네 번째 항목까지만 설명이 나올 겁니다만), 관련 내용을 한번 조사해 봤던 글을 참고하실 수도 있습니다.
----
$PWD `date`
$PWD `date`
http://purewell.egloos.com/35
http://purewell.egloos.com/3513312
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
댓글 달기