コード例 #1
0
ファイル: Kernel.cpp プロジェクト: suriyaaOS/FreeNOS
int Kernel::run()
{
    NOTICE("");

    // Load boot image programs
    loadBootImage();

    // Start the scheduler
    m_procs->schedule();

    // Never actually returns.
    return 0;
}
コード例 #2
0
ファイル: Kernel.cpp プロジェクト: 12234/FreeNOS
Kernel::Kernel(Memory *memory, ProcessManager *procs)
    : Singleton<Kernel>(this)
{
    DEBUG("");

    /* Initialize members */
    m_memory = memory;
    m_procs  = procs;

    /* Register generic API handlers */
    m_apis.fill(ZERO);
    m_apis.insert(IPCMessageNumber, (APIHandler *) IPCMessageHandler);
    m_apis.insert(PrivExecNumber,   (APIHandler *) PrivExecHandler);
    m_apis.insert(ProcessCtlNumber, (APIHandler *) ProcessCtlHandler);
    m_apis.insert(SystemInfoNumber, (APIHandler *) SystemInfoHandler);
    m_apis.insert(VMCopyNumber,     (APIHandler *) VMCopyHandler);
    m_apis.insert(VMCtlNumber,      (APIHandler *) VMCtlHandler);
    m_apis.insert(IOCtlNumber,      (APIHandler *) IOCtlHandler);

    /* Load boot image programs */
    loadBootImage();
}