나는 디렉토리에 1을 에코하고 잠시 후에 다시 0을 에코합니다 tracing_on
. /sys/kernel/debug/tracing
그러나 첫 번째 항목의 타임스탬프 216.852
와 마지막 항목의 타임스탬프를 234.136
보면 총 실행 시간은 약 18초입니다. 어떻게 이럴 수있어? 다른 컴퓨터에서 여러 번 시도했지만 시간이 이상했습니다. 내가 어딘가 잘못됐나?
답변1
정확한 이유는 모르지만 Linux는 실시간 운영체제가 아니기 때문에 주어진 시간 내에 동작이 보장되지 않는다는 것을 알고 있습니다. 또한 켜기/끄기 작업 추적의 우선순위가 매우 낮기 때문에 커널이 요청을 실행하는 데 적절한 시간을 기다리고 있을 수 있으며, 이는 사용자가 겪고 있는 지연입니다.
조작이 다음과 같은 경우비동기식, 파일에 쓸 때 쓰기 명령이 즉시 반환되어 요청을 커널에 저장하지만 커널은 나중에 이를 읽고 변경 사항에 따라 조치를 취합니다.