title: Gears OS の依存関係の解決 author: Tatsuki IHA profile: lang: Japanese code-engine: coderay # 研究目的 - 当研究室では 処理の単位を Code Segment、 データの単位を Data Segment を用いて 信頼性が高い並列処理を行う Gears OS を開発している - Gears OS では Task を Code Segment と実行するときに必要な Input Data Segment と出力するための Output Data Segment の組で表現される。 Input Data Segment/Output Data Segment によって依存関係が決定し、それにそって並列実行を行う - 現在のGears OS は 依存関係がある並列処理を行うことが出来ない。 この研究ではGears OS の依存関係の解決を目標とする # やったこと - Cerium の Htask::wait_for を読む # wait_for - master task を実行してから slave task を実行する場合 - master task の wait_me に slave の task を add する - slave task の wait_i に master の task を add する # check_task_finish # spawn_task - spawn_task 時にwait_i にtaskが入ってないかチェック - empty の場合 activeTaskQueueにtaskを入れる - empty ではない場合 waitTaskQueueにtaskを入れる # Gears にどう実装するか - Queue info はそのまま使ったほうが楽か(Linker struction) - wait_i はまっているDS - wait_me には出てくるDS を入れるか