Windows版iTRONサービスコールの作成 (ミューテックス)
(その1)

概要

組み込みソフトウェアで利用されているOS「iTRON」のサービスコールをWindows上で動作させるためのライブラリです。

タスク間の排他制御で用いられる『ミューテックス機能』の実装を説明します。

ミューテックスはセマフォと同様に、ミューテックスの資源を確保(ミューテックスのロック)をしてリソースへのアクセスを制限し、資源の返却(ミューテックスのロック解除)を行うことでアクセス制限を解除します。

セマフォの場合はセマフォ・カウンタの最大値まで、同時にリソースへアクセスできるタスクを制限できましたが、ミューテックスの場合は常に1つのタスクしかアクセスできません。

また、資源の返却については、セマフォでは、どのタスクでも返却できましたが(セマフォ資源を確保したタスク以外からも返却できる)、ミューテックスの場合は、ミューテックスをロックしたタスク以外は解除ができません。

ミューテックスはVer4.0でのみサポートされます。

サービスコール

 

・ミューテックス機能で提供されるサービスコールは以下のとおりです。

サービスコール名説明
cre_mtx / acre_mtx

ミューテックスを生成します。

del_mtx

ミューテックスを削除します。

loc_mtx / ploc_mtx / tloc_mtx

ミューテックスをロックします。

unl_mtx

ミューテックスのロックを解除します。

ref_mtx

ミューテックスの状態を参照します。



Windowsは米国Microsoft Corporationの登録商標です。