OS_GetProcMode

構文

#include <nitro/os.h>

OSProcMode OS_GetProcMode( void );

引数

なし。

返り値

現在のARMプロセッサ動作モードを表す OSProcMode 列挙型の値を返します。

説明

現在のARMプロセッサ動作モードを返します。

返り値は OSProcMode 列挙型で、以下の通りです。

動作モード
OS_PROCMODE_USER ユーザモード
OS_PROCMODE_FIQ FIQモード
OS_PROCMODE_IRQ IRQモード
OS_PROCMODE_SVC スーパバイザモード
OS_PROCMODE_ABORT アボートモード
OS_PROCMODE_UNDEF 未定義モード
OS_PROCMODE_SYS システムモード



OSProcMode mode = OS_GetProcMode();
if ( mode == OS_PROCMODE_USER )
{
   OS_Printf( "current processor mode is USERMODE.\n");
}

内部動作

CPSRレジスタ(current program status register)から現在のプロセッサモードを取得します。

参照

なし。

履歴

2003/12/01 初版