• ベストアンサー

アトミック・オペレーションについて

私は情報科学科に在籍している大学生です。 いま排他制御やセマフォを勉強しているのですが、その関係で下記のようなことも勉強しています。 アトミック・オペレーションはセマフォみたいなP()やV()のようなものでしょうか? ぜひ教えていただければ幸いです。 よろしくお願いします。 (1)アトミック・オペレーションを簡単に定義せよ。 (2)2つのスレッドT1とT2がそれぞれアトミック・オペレーションa、b、c、d、eを下記のように実行する場合、全ての可能な実行順序を記せ。 ・T1 : {a,b,c} ・T2 : {d,e}

質問者が選んだベストアンサー

  • ベストアンサー
noname#134443
noname#134443
回答No.1

(1) これ以上分割できない操作のこと。 http://hp.vector.co.jp/authors/VA000092/win32/standard-coding.htmlを参考にしてみてください。 これはCPUよりの話で、割り込みが発生しない操作単位のようです。 なのでセマフォのようなP操作V操作が必要ありません。 セマフォのような同期を取るOSの機能自体が必要ないものです。 自信はありませんが、あえて踏み込んで言いますと 1クロックで終わるような処理か、割り込み禁止フラグを 立てるような処理ということになるかと思います。 (2) (1)でいうと、 T1でaを実行しているとき、T2はdを実行しません。 T2でdを実行しているとき、T1はaを実行しません。 ○○a○○b○○c○○ abcの順番は決まっているので○のなかにdかeが入ります。 なので、 abcde abdce adbce dabce abdec adbec dabec adebc daebc deabc こうなるでしょうか。

関連するQ&A