anchor.diff:      erl_init:restart(),
       boot(Start,Flags,Args).
   
  -clear_system(BootPid,State) ->
  +clear_system(Unload,BootPid,State) ->
       Heart = get_heart(State#state.kernel),
       Logger = get_logger(State#state.kernel),
       shutdown_pids(Heart,Logger,BootPid,State),
  -    unload(Heart),
  +    Unload andalso unload(Heart),
       kill_em([Logger]),
       do_unload([logger_server]).
   
  
positive.code: 
  %%% -------------------------------------------------
  %%% Stop the system. 
  %%% Reason is: restart | reboot | stop
  %%% According to reason terminate emulator or restart
  %%% system using the same init process again.
  %%% -------------------------------------------------
  
negative.code:     BootPid = State#state.bootpid,
      {_,Progress} = State#state.status,
      State1 = State#state{status = {stopping, Progress}},
      %% There is no need to unload code if the system is shutting down
      clear_system(Reason=/=stop,BootPid,State1),
      do_stop(Reason,State1).
  
  do_stop({restart,Mode},#state{start=Start, flags=Flags0, args=Args}) ->
  