📄 smmain.c
字号:
/* *---------------------------------------------------------------------- * T-Kernel * * Copyright (C) 2004 by Ken Sakamura. All rights reserved. * T-Kernel is distributed under the T-License. *---------------------------------------------------------------------- * * Version: 1.01.00 * Released by T-Engine Forum(http://www.t-engine.org) at 2004/6/28. * *---------------------------------------------------------------------- *//* * smmain.c (T-Kernel/SM) * T-Kernel/System Manager */#include "sysmgr.h"/* * Get resource management block * Get the resource management block of subsystem of the * local task 'ssid' */EXPORT VP GetResBlk( ID ssid, ID tskid ){ ID resid; VP resblk; ER err; resid = tk_get_rid(tskid); if ( resid < E_OK ) { err = resid; goto err_ret; } err = tk_get_res(resid, ssid, &resblk); if ( err < E_OK ) goto err_ret; return resblk;err_ret: DEBUG_PRINT(("GetResBlk err = %d\n", err)); return NULL;}/* ------------------------------------------------------------------------- *//* * Initialization sequence */LOCAL ER initialize( void ){ ER err; /* system management */ err = initialize_sysmgr(); if ( err < E_OK ) goto err_ret; /* Device management */ err = initialize_devmgr(); if ( err < E_OK ) goto err_ret; return E_OK;err_ret: DEBUG_PRINT(("initialize err = %d\n", err)); return err;}/* * Finalization sequence */LOCAL ER finish( void ){ ER err, error = E_OK; /* Device management */ err = finish_devmgr(); if ( err < E_OK ) error = err; /* system management */ err = finish_sysmgr(); if ( err < E_OK ) error = err;#ifdef DEBUG if ( error < E_OK ) DEBUG_PRINT(("finish err = %d\n", error));#endif return error;}/* * T-Kernel/System Manager Entrance */EXPORT ER SystemManager( INT ac, UB *av[] ){ ER err; if ( ac >= 0 ) { /* Initialization sequence */ err = initialize(); if ( err < E_OK ) finish(); } else { /* Finalization sequence */ err = finish(); }#ifdef DEBUG if ( err < E_OK ) DEBUG_PRINT(("SystemManager err = %d\n", err));#endif return err;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -