30.3. ftrace 추적기
커널 구성 방법에 따라 지정된 커널에서 모든 추적기를 사용할 수 있는 것은 아닙니다. RHEL for Real Time 커널의 경우 추적 및 디버그 커널은 프로덕션 커널과 다른 추적기를 갖습니다. 이는 추적기가 커널에 구성되었지만 활성화되지 않은 경우 일부 추적기에서 성능에 상당한 영향을 미치기 때문입니다. 이러한 추적기는 추적 및 디버그 커널에만 활성화됩니다.
30.3.1. 추적기 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
- function
- 가장 널리 사용되는 추적기 중 하나입니다. 커널 내에서 함수 호출을 추적합니다. 이로 인해 추적된 함수 수에 따라 눈에 띄게 성능에 영향을 미칠 수 있습니다. 활성 상태가 아닌 경우 성능에 미치는 영향이 최소화됩니다.
- function_graph
function_graph추적기는 결과를 보다 시각적으로 최적의 형식으로 표시하도록 설계되었습니다. 이 추적기에서는 함수 종료도 추적하여 커널에서 함수 호출 흐름을 표시합니다.참고이 추적기는 사용 시
함수추적기보다 성능에 큰 영향을 미치지만 비활성화 시 성능에 미치는 영향을 최소화합니다.- wakeup
- 모든 CPU에서 발생하는 활동을 보고하는 전체 CPU 추적기입니다. 해당 작업이 실시간 작업인지 여부에 관계없이 시스템에서 가장 높은 우선 순위의 작업을 복구하는 데 걸리는 시간을 기록합니다. 비실시간 작업이 발생하지 않는 데 걸리는 최대 시간을 기록하면 실시간 작업을 복구하는 데 걸리는 시간을 숨깁니다.
- wakeup_rt
- 모든 CPU에서 발생하는 활동을 보고하는 전체 CPU 추적기입니다. 현재 가장 높은 우선 순위 작업에서 걸리는 시간을 예약할 때까지 기록합니다. 이 추적기에서는 실시간 작업의 시간만 기록합니다.
- preemptirqsoff
- 선점 또는 인터럽트를 비활성화하는 영역을 추적하고 선점 또는 인터럽트가 비활성화된 최대 시간을 기록합니다.
- preemptoff
- 선점qsoff 추적기와 유사하지만 사전 선점이 비활성화된 최대 간격만 추적합니다.
- irqsoff
- 선점irqsoff 추적기와 유사하지만 인터럽트가 비활성화된 최대 간격만 추적합니다.
- NOP
-
기본 추적기입니다. 추적 기능 자체를 제공하지 않지만 이벤트가 모든 추적기에 상호 작용할 수 있으므로
nop추적기가 이벤트 추적에 사용됩니다.