- profile --nmi | --rtc sets the profiling mode - --rtc is default, uses BIOS RTC, cannot profile kernel the presetted frequency values apply - --nmi is only available in APIC mode as it uses the NMI watchdog, -f allows any frequency in Hz - both modes use compatible data structures
		
			
				
	
	
		
			32 lines
		
	
	
		
			890 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			890 B
		
	
	
	
		
			C
		
	
	
	
	
	
#include "syslib.h"
 | 
						|
 | 
						|
#if SPROFILE
 | 
						|
 | 
						|
/*===========================================================================*
 | 
						|
 *                                sys_sprof				     *
 | 
						|
 *===========================================================================*/
 | 
						|
PUBLIC int sys_sprof(action, size, freq, type, endpt, ctl_ptr, mem_ptr)
 | 
						|
int action; 				/* start/stop profiling */
 | 
						|
int size;				/* available profiling memory */
 | 
						|
int freq;				/* sample frequency */
 | 
						|
int type;
 | 
						|
endpoint_t endpt;			/* caller endpoint */
 | 
						|
void *ctl_ptr;				/* location of info struct */
 | 
						|
void *mem_ptr;				/* location of profiling memory */
 | 
						|
{
 | 
						|
  message m;
 | 
						|
 | 
						|
  m.PROF_ACTION         = action;
 | 
						|
  m.PROF_MEM_SIZE       = size;
 | 
						|
  m.PROF_FREQ           = freq;
 | 
						|
  m.PROF_INTR_TYPE      = type;
 | 
						|
  m.PROF_ENDPT		= endpt;
 | 
						|
  m.PROF_CTL_PTR        = ctl_ptr;
 | 
						|
  m.PROF_MEM_PTR        = mem_ptr;
 | 
						|
 | 
						|
  return(_kernel_call(SYS_SPROF, &m));
 | 
						|
}
 | 
						|
 | 
						|
#endif
 | 
						|
 |