리눅스 커널에서 IDLE time 계산,출력하기

착한소의 이미지

처음 가입하고 글을 남기네요.

제가 운영체제를 전공 하려고 합니다.

음.. 일단 리눅스 커널을 지지고 볶고 하면서 기초를 쌓고 있는데..

커널 프로그래밍 책에서 처음 나온 과제를 해결할 수가 없네요.

리눅스 커널에서는 tick 단위로 인터럽트가 발생하는 것으로 알고 있습니다.

그리고 그 인터럽트는 0.01초 마다 발생하지요.

그래서 커널이 idle모드로 진입할 때 jiffies 변수의 값과 idle모드를 벗어 날 때

jiffies값을 check해서 1초마다의 비율을 구했습니다.

그런데...처음 부팅 한 후 부터는 계속 idle모드로 나오네요..

의견 있으신분이나 해보신 분은 글 남겨 주세요~

댓글

wariua의 이미지

(KLCP에서의 블로그 운영 관련 공지에서의 내용처럼 질문은 포럼에 올려 주시는 것이 좋습니다. 그렇게 하시는 것이 글을 더 잘 노출시킬 수 있기도 합니다.)

idle time 비율을 구하기 위해 작업하신 내용에 별 문제가 없다고 하면, 실제로 (거의) 계속 idle 상태여서 그렇게 표시될 수도 있습니다. 개인용 웹서버로 쓰는 제 리눅스 박스도 부팅 후 99.5%가 idle time입니다.

이런 저런 작업이 동작중인데도 항상 idle이고, 거기다가 idle time이 100%라면 뭔가 다른 데에 문제가 있겠지요. 그런데 그 문제가 어딘지를 알려면 idle time의 비율을 구하기 위해 어디에 어떤 코드를 넣어서 시도하고 있으신 건지 알려주셔야 합니다. 개발자 중에는 시력이 나쁜 사람들이 많아서 천리 밖을 볼 수 없거든요;) (참, 코드를 올리실 때는 꼭 code 태그입니다~)

참고로 커널 소스에서 kernel/timer.c 파일의 update_process_time() 함수가 작업에 쓰인 tick 개수를 갱신하는 루틴입니다. 여기서 호출하는 sched.c의 account_system_time() 함수에서 idle tick 개수를 더해줍니다.
----
$PWD `date`

$PWD `date`

댓글 달기

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 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • 사용할 수 있는 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>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • You can use Textile markup to format text.
  • 사용할 수 있는 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>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 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>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.