ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

Definition at line 123 of file poshtdwn.c.

Referenced by NtSetSystemPowerState().

{
    PEPROCESS Process = NULL;

    /* Loop every process */
    Process = PsGetNextProcess(Process);
    while (Process)
    {
        /* Make sure this isn't the idle or initial process */
        if ((Process != PsInitialSystemProcess) && (Process != PsIdleProcess))
        {
            /* Print it */
            DPRINT1("%15s is still RUNNING (%lx)\n", Process->ImageFileName, Process->UniqueProcessId);
        }

        /* Get the next process */
        Process = PsGetNextProcess(Process);
    }

    /* First, the HAL handles any "end of boot" special functionality */
    DPRINT1("HAL shutting down\n");
    HalEndOfBoot();

    /* In this step, the I/O manager does first-chance shutdown notification */
    DPRINT1("I/O manager shutting down in phase 0\n");    
    IoShutdownSystem(0);
    
    /* In this step, all workers are killed and hives are flushed */
    DPRINT1("Configuration Manager shutting down\n");
    CmShutdownSystem();
    
    /* Note that modified pages should be written here (MiShutdownSystem) */
#ifdef NEWCC
    /* Flush all user files before we start shutting down IO */
    /* This is where modified pages are written back by the IO manager */
    CcShutdownSystem();
#endif

    /* In this step, the I/O manager does last-chance shutdown notification */
    DPRINT1("I/O manager shutting down in phase 1\n"); 
    IoShutdownSystem(1);
    CcWaitForCurrentLazyWriterActivity();

    /* Note that here, we should broadcast the power IRP to devices */

    /* In this step, the HAL disables any wake timers */
    DPRINT1("Disabling wake timers\n");
    HalSetWakeEnable(FALSE);
    
    /* And finally the power request is sent */
    DPRINT1("Taking the system down\n");
    PopShutdownSystem(PopAction.Action);
}

Generated on Sun May 27 2012 06:07:08 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.