#include <toppers/outline_stub.hpp>
Static Public メンバ関数 | |
タスク管理機能 | |
| ER | stub_cre_tsk (ID tskid, const t_ctsk *pk_ctsk) |
| タスクの生成 | |
| ER | stub_del_tsk (ID tskid) |
| タスクの削除 | |
| ER | stub_act_tsk (ID tskid) |
| タスクの起動 | |
| ER_UINT | stub_can_act (ID tskid) |
| タスクの起動要求のキャンセル | |
| ER | stub_sta_tsk (ID tskid, VP_INT stacd) |
| タスクの起動(起動コード指定) | |
| void | stub_ext_tsk () |
| タスクの終了 | |
| void | stub_exd_tsk () |
| タスクの終了と削除 | |
| ER | stub_ter_tsk (ID tskid) |
| タスクの強制終了 | |
| ER | stub_chg_pri (ID tskid, PRI tskpri) |
| タスク優先度の変更 | |
| ER | stub_get_pri (ID tskid, PRI *p_tskpri) |
| タスク優先度の参照 | |
| ER | stub_ref_tsk (ID tskid, t_rtsk *pk_rtsk) |
| タスクの状態参照 | |
| ER | stub_ref_tst (ID tskid, t_rtst *pk_rtst) |
| タスクの状態参照(簡易版) | |
タスク付属同期機能 | |
| ER | stub_slp_tsk () |
| タスクの起床待ち | |
| ER | stub_tslp_tsk (TMO tmout) |
| タスクの起床待ち(タイムアウト指定) | |
| ER | stub_wup_tsk (ID tskid) |
| タスクの起床 | |
| ER_UINT | stub_can_wup (ID tskid) |
| タスクの起床要求のキャンセル | |
| ER | stub_rel_wai (ID tskid) |
| 待ち状態の強制解除 | |
| ER | stub_sus_tsk (ID tskid) |
| 強制待ち状態への以降 | |
| ER | stub_rsm_tsk (ID tskid) |
| 強制待ち状態からの再開 | |
| ER | stub_frsm_tsk (ID tskid) |
| 強制待ち状態からの強制再開 | |
| ER | stub_dly_tsk (RELTIM dlytim) |
| タスクの遅延 | |
タスク例外処理機能 | |
| ER | stub_def_tex (ID tskid, const t_dtex *pk_dtex) |
| タスク例外処理ルーチンの定義 | |
| ER | stub_ras_tex (ID tskid, TEXPTN rasptn) |
| タスク例外処理の要求 | |
| ER | stub_dis_tex () |
| タスク例外処理の禁止 | |
| ER | stub_ena_tex () |
| タスク例外処理の許可 | |
| bool | stub_sns_tex () |
| タスク例外処理禁止状態の参照 | |
| ER | stub_ref_tex (ID tskid, t_rtex *pk_rtex) |
| タスク例外処理の状態参照 | |
セマフォ | |
| ER | stub_cre_sem (ID semid, const t_csem *pk_csem) |
| セマフォの生成 | |
| ER | stub_del_sem (ID semid) |
| セマフォの削除 | |
| ER | stub_sig_sem (ID semid) |
| セマフォ資源の返却 | |
| ER | stub_wai_sem (ID semid) |
| セマフォ資源の獲得 | |
| ER | stub_pol_sem (ID semid) |
| セマフォ資源の獲得(ポーリング) | |
| ER | stub_twai_sem (ID semid, TMO tmout) |
| セマフォ資源の獲得(タイムアウト指定) | |
| ER | stub_ref_sem (ID semid, t_rsem *pk_rsem) |
| セマフォの状態参照 | |
イベントフラグ | |
| ER | stub_cre_flg (ID flgid, const t_cflg *pk_cflg) |
| イベントフラグの生成 | |
| ER | stub_del_flg (ID flgid) |
| イベントフラグの削除 | |
| ER | stub_set_flg (ID flgid, FLGPTN setptn) |
| イベントフラグのセット | |
| ER | stub_clr_flg (ID flgid, FLGPTN clrptn) |
| イベントフラグのクリア | |
| ER | stub_wai_flg (ID flgid, FLGPTN waiptn, MODE wfmode, FLGPTN *p_flgptn) |
| イベントフラグ待ち | |
| ER | stub_pol_flg (ID flgid, FLGPTN waiptn, MODE wfmode, FLGPTN *p_flgptn) |
| イベントフラグ待ち(ポーリング) | |
| ER | stub_twai_flg (ID flgid, FLGPTN waiptn, MODE wfmode, FLGPTN *p_flgptn, TMO tmout) |
| イベントフラグ待ち(タイムアウト指定) | |
| ER | stub_ref_flg (ID flgid, t_rflg *pk_rflg) |
| イベントフラグの状態参照 | |
データキュー | |
| ER | stub_cre_dtq (ID dtqid, const t_cdtq *pk_cdtq) |
| データキューの生成 | |
| ER | stub_del_dtq (ID dtqid) |
| データキューの削除 | |
| ER | stub_snd_dtq (ID dtqid, VP_INT data) |
| データキューへの送信 | |
| ER | stub_psnd_dtq (ID dtqid, VP_INT data) |
| データキューへの送信(ポーリング) | |
| ER | stub_tsnd_dtq (ID dtqid, VP_INT data, TMO tmout) |
| データキューへの送信(タイムアウト指定) | |
| ER | stub_fsnd_dtq (ID dtqid, VP_INT data) |
| データキューへの強制送信 | |
| ER | stub_rcv_dtq (ID dtqid, VP_INT *p_data) |
| データキューからの受信 | |
| ER | stub_prcv_dtq (ID dtqid, VP_INT *p_data) |
| データキューからの受信(ポーリング) | |
| ER | stub_trcv_dtq (ID dtqid, VP_INT *p_data, TMO tmout) |
| データキューからの受信(タイムアウト指定) | |
| ER | stub_ref_dtq (ID dtqid, t_rdtq *pk_rdtq) |
| データキューの状態参照 | |
メールボックス | |
| ER | stub_cre_mbx (ID mbxid, const t_cmbx *pk_cmbx) |
| メールボックスの生成 | |
| ER | stub_del_mbx (ID mbxid) |
| メールボックスの削除 | |
| ER | stub_snd_mbx (ID mbxid, T_MSG *pk_msg) |
| メールボックスへの送信 | |
| ER | stub_rcv_mbx (ID mbxid, T_MSG **ppk_msg) |
| メールボックスからの受信 | |
| ER | stub_prcv_mbx (ID mbxid, T_MSG **ppk_msg) |
| メールボックスからの受信(ポーリング) | |
| ER | stub_trcv_mbx (ID mbxid, T_MSG **ppk_msg, TMO tmout) |
| メールボックスからの受信(タイムアウト指定) | |
| ER | stub_ref_mbx (ID mbxid, t_rmbx *pk_rmbx) |
| メールボックスの状態参照 | |
固定長メモリプール | |
| ER | stub_cre_mpf (ID mpfid, const t_cmpf *pk_cmpf) |
| 固定長メモリプールの生成 | |
| ER | stub_del_mpf (ID mpfid) |
| 固定長メモリプールの削除 | |
| ER | stub_rel_mpf (ID mpfid, VP blk) |
| 固定長メモリブロックの解放 | |
| ER | stub_get_mpf (ID mpfid, VP *p_blk) |
| 固定長メモリブロックの獲得 | |
| ER | stub_pget_mpf (ID mpfid, VP *p_blk) |
| 固定長メモリブロックの獲得(ポーリング) | |
| ER | stub_tget_mpf (ID mpfid, VP *p_blk, TMO tmout) |
| 固定長メモリブロックの獲得(タイムアウト指定) | |
| ER | stub_ref_mpf (ID mpfid, t_rmpf *pk_rmpf) |
| 固定長メモリプールの状態参照 | |
時間管理機能 | |
| ER | stub_set_tim (const SYSTIM *p_systim) |
| システム時刻の設定 | |
| ER | stub_get_tim (SYSTIM *p_systim) |
| システム時刻の参照 | |
周期ハンドラ | |
| ER | stub_cre_cyc (ID cycid, const t_ccyc *pk_ccyc) |
| 周期ハンドラの生成 | |
| ER | stub_del_cyc (ID cycid) |
| 周期ハンドラの削除 | |
| ER | stub_sta_cyc (ID cycid) |
| 周期ハンドラの起動 | |
| ER | stub_stp_cyc (ID cycid) |
| 周期ハンドラの停止 | |
| ER | stub_ref_cyc (ID cycid, t_rcyc *pk_rcyc) |
| 周期ハンドラの状態参照 | |
システム状態管理機能 | |
| ER | stub_rot_rdq (PRI tskpri) |
| タスク優先順位の回転 | |
| ER | stub_get_tid (ID *p_tskid) |
| 実行状態のタスクIDの参照 | |
| ER | stub_loc_cpu () |
| CPUロック状態への移行. | |
| ER | stub_unl_cpu () |
| CPUロック状態の解除. | |
| ER | stub_dis_dsp () |
| ディスパッチの禁止 | |
| ER | stub_ena_dsp () |
| ディスパッチの許可 | |
| bool | stub_sns_ctx () |
| コンテキストの参照 | |
| bool | stub_sns_loc () |
| CPUロック状態の参照. | |
| bool | stub_sns_dsp () |
| ディスパッチ禁止状態の参照 | |
| bool | stub_sns_dpn () |
| ディスパッチ保留状態の参照 | |
| ER | stub_ref_sys (t_rsys *pk_rsys) |
| システム状態の参照 | |
割込み管理機能 | |
| ER | stub_def_inh (INHNO inhno, const t_dinh *pk_dinh) |
| 割込みハンドラの定義 | |
| ER | stub_cre_isr (ID isrid, const t_cisr *pk_cisr) |
| 割込みサービスルーチンの生成 | |
| ER | stub_del_isr (ID isrid) |
| 割込みサービスルーチンの削除 | |
| ER | stub_ref_isr (ID isrid, t_risr *pk_risr) |
| 割込みサービスルーチンの状態参照 | |
| ER | stub_dis_int (INTNO intno) |
| 割込みの禁止 | |
| ER | stub_ena_int (INTNO intno) |
| 割込みの許可 | |
| ER | stub_chg_ims (IMS ims) |
| 割込みマスクの変更 | |
| ER | stub_get_ims (IMS *P_ims) |
| 割込みマスクの参照 | |
システム構成管理機能 | |
| ER | stub_def_exc (EXCNO excno, const t_dexc *pk_dexc) |
| CPU例外ハンドラの定義. | |
| ER | stub_ref_cfg (t_rcfg *pk_rcfg) |
| コンフィギュレーション情報の参照 | |
| ER | stub_ref_ver (t_rver *pk_rver) |
| バージョン情報の参照 | |
非タスクコンテキスト用のサービスコール | |
| ER | stub_iact_tsk (ID tskid) |
| タスクの起動(非タスクコンテキスト) | |
| ER | stub_iwup_tsk (ID tskid) |
| タスクの起床(非タスクコンテキスト) | |
| ER | stub_irel_wai (ID tskid) |
| 待ち状態の強制解除(非タスクコンテキスト) | |
| ER | stub_iras_tex (ID tskid, TEXPTN rasptn) |
| タスク例外処理の要求(非タスクコンテキスト) | |
| ER | stub_isig_sem (ID semid) |
| セマフォ資源の返却(非タスクコンテキスト) | |
| ER | stub_iset_flg (ID flgid, FLGPTN setptn) |
| イベントフラグのセット(非タスクコンテキスト) | |
| ER | stub_ipsnd_dtq (ID dtqid, VP_INT data) |
| データキューへの送信(非タスクコンテキスト) | |
| ER | stub_ifsnd_dtq (ID dtqid, VP_INT data) |
| データキューへの強制送信(非タスクコンテキスト) | |
| ER | stub_irot_rdq (PRI tskpri) |
| タスク優先順位の回転(非タスクコンテキスト) | |
| ER | stub_iget_tid (ID *p_tskid) |
| 実行状態のタスクIDの参照(非タスクコンテキスト) | |
| ER | stub_iloc_cpu () |
| CPUロック状態への移行(非タスクコンテキスト). | |
| ER | stub_iunl_cpu () |
| CPUロック状態の解除(非タスクコンテキスト). | |
| ER | stub_isig_tim () |
| タイムティックの供給 | |
ミューテックス | |
| ER | stub_cre_mtx (ID mtxid, const t_cmtx *pk_cmtx) |
| ミューテックスの生成 | |
| ER | stub_del_mtx (ID mtxid) |
| ミューテックスの削除 | |
| ER | stub_unl_mtx (ID mtxid) |
| ミューテックスのロック解除 | |
| ER | stub_loc_mtx (ID mtxid) |
| ミューテックスのロック | |
| ER | stub_ploc_mtx (ID mtxid) |
| ミューテックスのロック(ポーリング) | |
| ER | stub_tloc_mtx (ID mtxid, TMO tmout) |
| ミューテックスのロック(タイムアウト指定) | |
| ER | stub_ref_mtx (ID mtxid, t_rmtx *pk_rmtx) |
| ミューテックスの状態参照 | |
メッセージバッファ | |
| ER | stub_cre_mbf (ID mbfid, const t_cmbf *pk_cmbf) |
| メッセージバッファの生成 | |
| ER | stub_del_mbf (ID mbfid) |
| メッセージバッファの削除 | |
| ER | stub_snd_mbf (ID mbfid, const void *msg, UINT msgsz) |
| メッセージバッファへの送信 | |
| ER | stub_psnd_mbf (ID mbfid, const void *msg, UINT msgsz) |
| メッセージバッファへの送信(ポーリング) | |
| ER | stub_tsnd_mbf (ID mbfid, const void *msg, UINT msgsz, TMO tmout) |
| メッセージバッファへの送信(タイムアウト指定) | |
| ER_UINT | stub_rcv_mbf (ID mbfid, void *msg) |
| メッセージバッファからの受信 | |
| ER_UINT | stub_prcv_mbf (ID mbfid, void *msg) |
| メッセージバッファからの受信(ポーリング) | |
| ER_UINT | stub_trcv_mbf (ID mbfid, void *msg, TMO tmout) |
| メッセージバッファからの受信(タイムアウト指定) | |
| ER | stub_ref_mbf (ID mbfid, t_rmbf *pk_rmbf) |
| メッセージバッファの状態参照 | |
ランデブ | |
| ER | stub_cre_por (ID porid, const t_cpor *pk_cpor) |
| ランデブポートの生成 | |
| ER | stub_del_por (ID porid) |
| ランデブポートの削除 | |
| ER_UINT | stub_cal_por (ID porid, RDVPTN calptn, void *msg, UINT cmsgsz) |
| ランデブポートの呼出し | |
| ER_UINT | stub_tcal_por (ID porid, RDVPTN calptn, void *msg, UINT cmsgsz, TMO tmout) |
| ランデブポートの呼出し(タイムアウト指定) | |
| ER_UINT | stub_acp_por (ID porid, RDVPTN acpptn, RDVNO *p_rdvno, void *msg) |
| ランデブポートの受付 | |
| ER_UINT | stub_pacp_por (ID porid, RDVPTN acpptn, RDVNO *p_rdvno, void *msg) |
| ランデブポートの受付(ポーリング) | |
| ER_UINT | stub_tacp_por (ID porid, RDVPTN acpptn, RDVNO *p_rdvno, void *msg, TMO tmout) |
| ランデブポートの受付(タイムアウト指定) | |
| ER | stub_fwd_por (ID porid, RDVPTN acpptn, RDVNO rdvno, const void *msg, UINT cmsgsz) |
| ランデブの回送 | |
| ER | stub_rpl_rdv (RDVNO rdvno, const void *msg, UINT rmsgsz) |
| ランデブの返答 | |
| ER | stub_ref_por (ID porid, t_rpor *pk_rpor) |
| ランデブポートの状態参照 | |
| ER | stub_ref_rdv (RDVNO rdvid, t_rrdv *pk_rrdv) |
| ランデブの状態参照 | |
可変長メモリプール | |
| ER | stub_cre_mpl (ID mplid, const t_cmpl *pk_cmpl) |
| 可変長メモリプールの生成 | |
| ER | stub_del_mpl (ID mplid) |
| 可変長メモリプールの削除 | |
| ER | stub_rel_mpl (ID mplid, VP blk) |
| 可変長メモリブロックの解放 | |
| ER | stub_get_mpl (ID mplid, UINT blksz, VP *p_blk) |
| 可変長メモリブロックの獲得 | |
| ER | stub_pget_mpl (ID mplid, UINT blksz, VP *p_blk) |
| 可変長メモリブロックの獲得(ポーリング) | |
| ER | stub_tget_mpl (ID mplid, UINT blksz, VP *p_blk, TMO tmout) |
| 可変長メモリブロックの獲得(タイムアウト指定) | |
| ER | stub_ref_mpl (ID mplid, t_rmpl *pk_rmpl) |
| 可変長メモリプールの状態参照 | |
アラームハンドラ | |
| ER | stub_cre_alm (ID almid, const t_calm *pk_calm) |
| アラームハンドラの生成 | |
| ER | stub_del_alm (ID almid) |
| アラームハンドラの削除 | |
| ER | stub_sta_alm (ID almid, RELTIM almtim) |
| アラームハンドラの起動 | |
| ER | stub_stp_alm (ID almid) |
| アラームハンドラの停止 | |
| ER | stub_ref_alm (ID almid, t_ralm *pk_ralm) |
| アラームハンドラの状態参照 | |
オーバーランハンドラ | |
| ER | stub_def_ovr (const t_dovr *pk_dovr) |
| オーバーランハンドラの定義 | |
| ER | stub_sta_ovr (ID tskid, OVRTIM ovrtim) |
| オーバーランハンドラの起動 | |
| ER | stub_stp_ovr (ID tskid) |
| オーバーランハンドラの停止 | |
| ER | stub_ref_ovr (ID tskid, t_rovr *pk_rovr) |
| オーバーランハンドラの状態参照 | |
ID番号自動生成 | |
| ER_ID | stub_acre_tsk (const t_ctsk *pk_ctsk) |
| タスクの生成(ID番号自動生成) | |
| ER_ID | stub_acre_sem (const t_csem *pk_csem) |
| セマフォの生成(ID番号自動生成) | |
| ER_ID | stub_acre_flg (const t_cflg *pk_cflg) |
| イベントフラグの生成(ID番号自動生成) | |
| ER_ID | stub_acre_dtq (const t_cdtq *pk_cdtq) |
| データキューの生成(ID番号自動生成) | |
| ER_ID | stub_acre_mbx (const t_cmbx *pk_cmbx) |
| メールボックスの生成(ID番号自動生成) | |
| ER_ID | stub_acre_mtx (const t_cmtx *pk_cmtx) |
| ミューテックスの生成(ID番号自動生成) | |
| ER_ID | stub_acre_mbf (const t_cmbf *pk_cmbf) |
| メッセージバッファの生成(ID番号自動生成) | |
| ER_ID | stub_acre_por (const t_cpor *pk_cpor) |
| ランデブポートの生成(ID番号自動生成) | |
| ER_ID | stub_acre_mpf (const t_cmpf *pk_cmpf) |
| 固定長メモリプールの生成(ID番号自動生成) | |
| ER_ID | stub_acre_mpl (const t_cmpl *pk_cmpl) |
| 可変長メモリプールの生成(ID番号自動生成) | |
| ER_ID | stub_acre_cyc (const t_ccyc *pk_ccyc) |
| 周期ハンドラの生成(ID番号自動生成) | |
| ER_ID | stub_acre_alm (const t_calm *pk_calm) |
| アラームハンドラの生成(ID番号自動生成) | |
| ER_ID | stub_acre_isr (const t_cisr *pk_cisr) |
| 割込みサービスルーチンの生成(ID番号自動生成) | |
TOPPERSカーネルの独自仕様 | |
これらはTOPPERSカーネル独自のサービスコールだが必須の要素であり、 他のカーネルを使用する場合でも対応するサービスコールを実装する 必要がある。 | |
| bool | stub_vxsns_ctx (VP_INT exinf) |
| CPU例外発生時のコンテキストの参照. | |
| bool | stub_vxsns_loc (VP_INT exinf) |
| CPU例外発生時のCPUロック状態の参照. | |
| bool | stub_vxsns_dsp (VP_INT exinf) |
| CPU例外発生時のディスパッチ禁止状態の参照. | |
| bool | stub_vxsns_dpn (VP_INT exinf) |
| CPU例外発生時のディスパッチ保留状態の参照. | |
| bool | stub_vxsns_tex (VP_INT exinf) |
| CPU例外発生時のタスク例外処理禁止状態の参照. | |
| bool | stub_vsns_ini () |
| カーネル動作状態の参照 | |
TOPPERSカーネルの独自拡張 | |
| ER | stub_vxget_tim (SYSUTIM *p_sysutim) |
| 性能評価用システム時刻の参照 | |
サービスコール管理機能 | |
| ER | stub_def_svc (FN fncd, const t_dsvc *pk_dsvc) |
| 拡張サービスコールの定義 | |
| ER_UINT | stub_cal_svc (FN fncd) |
| 拡張サービスコールの呼出し(パラメータなし) | |
| ER_UINT | stub_cal_svc (FN fncd, VP_INT par1) |
| 拡張サービスコールの呼出し(パラメータ x 1) | |
| ER_UINT | stub_cal_svc (FN fncd, VP_INT par1, VP_INT par2) |
| 拡張サービスコールの呼出し(パラメータ x 2) | |
| ER_UINT | stub_cal_svc (FN fncd, VP_INT par1, VP_INT par2, VP_INT par3) |
| 拡張サービスコールの呼出し(パラメータ x 3) | |
| ER_UINT | stub_cal_svc (FN fncd, VP_INT par1, VP_INT par2, VP_INT par3, VP_INT par4) |
| 拡張サービスコールの呼出し(パラメータ x 4) | |
| ER_UINT | stub_cal_svc (FN fncd, VP_INT par1, VP_INT par2, VP_INT par3, VP_INT par4, VP_INT par5) |
| 拡張サービスコールの呼出し(パラメータ x 5) | |
TOPPERS/JSPカーネル 1.4以降または TOPPERS/FI4カーネル 1.4以降、およびそれらをベースとしたカーネルを使用する限り、 outline_stub を使用する必要性はない。