Linux에서 /proc/stat 파일이 언제 초기화될까요?

schokie의 이미지

/proc/stat 파일 내용에 관한 질문/답글은 많은데,

저는 그 안의 수치가 언제 0을로 Reset될지가 궁금해졌습니다.

System이 Reboot되지 않는 이상, 그 수치는 계속 증가하여

sscanf 등으로 값을 가져올 때 문제가 생길 수 있지 않을까요?

long long 타입으로 가져온다면 엄청나케 큰 수이지만, 그래도 언젠가는

한계에 다다를텐데말이죠. 특히나 Idle 값이 증가하는 걸 보면;;;

bushi의 이미지

관심을 가지고 보고 계시는 값은 reset 될 필요가 없는 항목입니다.
특정한 시점에서 읽고, 몇 초후에 다시 읽어서 둘의 차이를 비교/분석하는 방식으로 사용합니다.
어플리케이션에서 계산할 때, unsigned 로 처리해야합니다. overflow 에 신경쓰지 않아도 잘 계산됩니다만.... 문제가 없지는 않죠.
예를 들어 특정한 시점에서 한번 읽고, 400 년쯤 후에 다시 읽어서 분석하려한다면, 그 사이에 발생한 overflow 는 감지가 안 됩니다.

schokie의 이미지

예 저도.. 그 생각은 했어요..
현재 타이머를 따로 만들어서 주기적으로 그 값을 가지고 오긴 합니다.

가령 unsigned long long으로 하면 2^64 값까지 가지고 올 수 있죠..
(처음에는 unsigned long으로 가져오는데 한계를 넘어서
값을 이상하게 가져 오는 현상을 보고 이런 문제점을 알게 되었습니다.)

근데 이 값보다 큰 값이 기록될수도 있는지 그게 궁금하더라구요.
2^64면 어마어마한 수이기 때문에 언제 그 수에 도달할지도 모르겠구요.
이 값보다 크면 unsigned long long으로도 못 가져오게 되니까요.

아무튼 계속 늘어만 가는 Idle 상태 값 때문에 끄적여봤습니다.

익명사용자의 이미지

HZ 를 대략 2^10 으로 한다치면 overflow 까지 2^54 초가 걸리고,
하루가 60*60*24=86400 초,
대략 208499982748 일 정도가 걸리는군요.
1년을 365일로 한다치면 571232829 년 정도.
타이머 주기 정하실 때 참고하세요 ㅎㅎ

게시판에 글 적을 시간이면 계산기 눌러보고도 남습니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.