anchor.diff:  
   all() -> 
       [system_profile_on_and_off, runnable_procs,
  -     runnable_ports, scheduler].
  +     runnable_ports, scheduler, dont_profile_profiler].
   
   groups() -> 
       [].
  
positive.code: 	system_profile_on_and_off/1,
  	runnable_procs/1,
  	runnable_ports/1,
  	scheduler/1
          ]).
  
  
negative.code: 	    ok = check_block_system(Nodes),
  	    ok = check_multi_scheduling_block(Nodes)
      end.
  
  % the profiler pid should not be profiled
  dont_profile_profiler(suite) ->
      [];
  dont_profile_profiler(doc) ->
      ["Ensure system profiler process is not profiled."];
  dont_profile_profiler(Config) when is_list(Config) ->
      Pid = start_profiler_process(),
  
      Nodes = 10,
      Laps = 10,
      Master = ring(Nodes),
      undefined = erlang:system_profile(Pid, [runnable_procs]),
      % loop a message
      ok = ring_message(Master, message, Laps),
      erlang:system_profile(undefined, []),
      kill_em_all = kill_ring(Master),
      Events = get_profiler_events(),
      false  = has_profiler_pid_event(Events, Pid),
  
      exit(Pid,kill),
      ok.
  
  
  %%% Check scheduler profiling
  
  