테스트 코드 추가

1460 단어 매우 한가 하 다
oprofile:커 널 을 열 려 면 CONFIGPERF_EVENTS=y CONFIG_PERF_COUNTERS=y CONFIG_HW_PERF_EVENTS=y
내 핵 을 재 컴 파일 하 다.프로그램 을 다시 컴 파일 하 세 요.
작업 단계:
  • 커 널 모듈 불 러 오기:insmod/lib/modules/3.0.8/opile.ko timer=1(커 널 중 machhi3520d 초기 화 되 지 않 은 pmu)
  • opcontrol --init
  • opcontrol --setup --no-vmlinux
  • opcontrol --start

  • 테스트 프로그램 을 실행 하 는 데 충분 한 시간 이 걸 립 니 다
  • opcontrol --shutdown

  • opreport 를 실행 하고 보고 서 를 출력 합 니 다샘플링 의 시간 정밀 도 는 어떻게 됩 니까?oprofile 완료.
    DMALLOC:
    +#ifdef DMALLOC
    
    +#define DMALLOC_SETUP       "debug=log-stats,log-non-free,log-bad-space,\
    
    +log-elapsed-time,check-fence,check-heap,check-blank,check-funcs,\
    
    +realloc-copy,free-blank,error-abort,alloc-blank,catch-null,\
    
    +inter=100,log=/tmp/myprog.log"
    
    +
    
    +	dmalloc_debug_setup(DMALLOC_SETUP);
    
    +
    
    +	unsigned long mark;
    
    +	mark = dmalloc_mark();
    
    +	dmalloc_message("%s-%d: dmalloc_mark
    ", __FUNCTION__, __LINE__); +#endif + SLOG(SLOG_SYSLOG, "My program start up - OK.
    "); /* code to test */ xxx_func(arg); +#ifdef DMALLOC + /* + * log unfreed pointers that have been added to + * the heap since mark + */ + dmalloc_log_changed(mark, + 1 /* log unfreed pointers */, + 0 /* do not log freed pointers */, + 1 /* log each pnt otherwise summary */); + dmalloc_message("%s-%d: dmalloc_log_changed
    ", __FUNCTION__, __LINE__); + + dmalloc_shutdown(); +#endif

    좋은 웹페이지 즐겨찾기