do_gettimeofday 함수에 대해서 간단하게 질문드리겠습니다.
글쓴이: enermysong / 작성시간: 금, 2009/03/13 - 11:29오전
안녕하세요!
디바이스 드라이버에서 인터럽트의 시간을 측정 중인데요! do_gettimeofday() 요 함수로 시간을 측정합니다.
그런데 이 do_gettimeofday함수가 시간을 잘못 측정할수도 있나요?
인터럽트 핸들러 함수내에서 인터럽트 한번당 do_gettimeofday()함수가 측정되어지는데요! 1000번에 11번정도 잘못된 시간을 가져옵니다.
인터럽트가 1ms로 발생하는데 시간 간격이 31마이크로 나올때도 있고 어쩔때는 0이나올때도 있습니다. 그래서 0이 나올때 먼저 측정한 값과 나중에 측정한 값을 찍어 봤더니 같은 값이 들어있더군요! 이런 경우도 있나요?
도무지 해답을 찾을수 없어서 질문 올립니다. 읽어보시고 좋은 지도 부탁드리겠습니다. 벌써 2일째 밤샘 작업중입니다.
Forums:
do_gettimeofday의
do_gettimeofday의 해상도는 HZ값 정도 잆니다. 인터럽트가 자주뜬다면 그렇게 나오는것이 정상입니다.
재질문 드립니다.
그렇게 나오는것이 정상이라는 말씀은 잘못된 값이 나오는것이 정상이라는 말씀이신지요?
그리고 그런뜻이시라면 리눅스의 커널타이머의 경우 1ms마다 발생하는데 이것은 어떻게 처리하지요?
댓글 달기