Changes between Version 17 and Version 18 of spec/Os


Ignore:
Timestamp:
Jan 7, 2015, 6:51:36 PM (9 years ago)
Author:
fujisft-shigihara
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • spec/Os

    v17 v18  
    251251  * TOPPERS/ATK2では、必要性が低いことから、要求した順序を保持しない実装としている
    252252    * タスクの実行順序の優先順位は、本来タスク優先度で指定するものであり、同一優先度タスクが実行される順序が処理に依存するべきではない、という考え方である
    253 * 到着時間監視において、!ActivateTaskを発行した側と、発行された側のどちらのタイミング保護違反となるかは規定されていない
     253* 到着時間監視において、ActivateTaskを発行した側と、発行された側のどちらのタイミング保護違反となるかは規定されていない
    254254  * マルチコアでは、どちらのコアでプロテクションフックを起動するか等の問題がある
    255255
     
    259259}}}
    260260* 呼び出したタスクを終了する
    261 * 多重起動要求されているタスクが、!TerminateTaskを実行した場合、再度実行可能状態となるが、!TerminateTaskを呼ばずに終了(returnを呼ぶ等)した場合に、再度実行可能状態となるかは規定されていない
     261* 多重起動要求されているタスクが、TerminateTaskを実行した場合、再度実行可能状態となるが、TerminateTaskを呼ばずに終了(returnを呼ぶ等)した場合に、再度実行可能状態となるかは規定されていない
    262262  * TOPPERS/ATK2では、以下のような実装としている
    263263    * タスクが不正終了(returnを呼ぶ)した場合:多重起動は有効
     
    269269StatusType ChainTask(TaskType TaskID)
    270270}}}
    271 * 呼び出したタスクの終了と、TaskIDで指定したタスクの起動を行う(!TerminateTask+!ActivateTask)
     271* 呼び出したタスクの終了と、TaskIDで指定したタスクの起動を行う(TerminateTask+ActivateTask)
    272272
    273273== Schedule ==
     
    292292}}}
    293293* TaskIDで指定したタスクの状態を取得する
    294 * 本APIは、エラーフックでのデバッグにおける使用が考えられるが、割込み禁止時のAPI呼出し違反[OS093]により起動したエラーフックでは、割込み禁止状態のため、!GetTaskStateが使用できないという不整合がある
    295   * TOPPERS/ATK2では、実害がないため、割込み禁止状態であっても、!GetTaskStateを呼び出せるように実装している
     294* 本APIは、エラーフックでのデバッグにおける使用が考えられるが、割込み禁止時のAPI呼出し違反[OS093]により起動したエラーフックでは、割込み禁止状態のため、GetTaskStateが使用できないという不整合がある
     295  * TOPPERS/ATK2では、実害がないため、割込み禁止状態であっても、GetTaskStateを呼び出せるように実装している
    296296
    297297== EnableAllInterrupts ==
     
    369369}}}
    370370* TaskIDで指定したタスクにセットされたイベントを取得する
    371 * マルチコア拡張仕様において、!SetEventはコアを跨げるように拡張されているが、!GetEventが拡張されていない
     371* マルチコア拡張仕様において、SetEventはコアを跨げるように拡張されているが、GetEventが拡張されていない
    372372  * 拡張できない理由が無いため、誤記と思われる
    373   * TOPPERS/ATK2では、!GetEventもコアを跨いで呼び出すことができるように実装している
     373  * TOPPERS/ATK2では、GetEventもコアを跨いで呼び出すことができるように実装している
    374374
    375375== WaitEvent ==
     
    511511* ScheduleTableID_Fromに指定されたスケジュールテーブルが周期動作だった場合に、ScheduleTableID_Toのスケジュールテーブルに切り替わった後も周期動作を続けるかどうかが規定されていない
    512512  * TOPPERS/ATK2では、ScheduleTableID_Fromに指定されたスケジュールテーブルが周期動作の場合も、切り替え時に停止するように実装している
    513 * マルチコア拡張仕様において、!StartScheduleTableRelや!StartScheduleTableAbsはコアを跨げるように拡張されているが、!NextScheduleTableが拡張されていない
     513* マルチコア拡張仕様において、StartScheduleTableRelやStartScheduleTableAbsはコアを跨げるように拡張されているが、NextScheduleTableが拡張されていない
    514514  * 拡張できない理由が無いため、誤記と思われる
    515   * TOPPERS/ATK2では、!NextScheduleTableもコアを跨いで呼び出すことができるように実装している
     515  * TOPPERS/ATK2では、NextScheduleTableもコアを跨いで呼び出すことができるように実装している
    516516
    517517== StartScheduleTableSynchron ==
     
    632632* OS実行中のすべてのコアでOSシャットダウンを行う
    633633* ShutdownAllCoresを呼び出していないコアのシャットダウンフックに、何のエラーコードが渡されるかは規定されていない
    634   * TOPPERS/ATK2では、!ShutdownAllCoresを呼び出していないコアでは,シャットダウンフックにE_OS_SHUTDOWN_OTHER_COREが渡される実装としている
     634  * TOPPERS/ATK2では、ShutdownAllCoresを呼び出していないコアでは,シャットダウンフックにE_OS_SHUTDOWN_OTHER_COREが渡される実装としている
    635635
    636636== IocSend ==