Changes between Version 17 and Version 18 of spec/Os
- Timestamp:
- Jan 7, 2015, 6:51:36 PM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
spec/Os
v17 v18 251 251 * TOPPERS/ATK2では、必要性が低いことから、要求した順序を保持しない実装としている 252 252 * タスクの実行順序の優先順位は、本来タスク優先度で指定するものであり、同一優先度タスクが実行される順序が処理に依存するべきではない、という考え方である 253 * 到着時間監視において、 !ActivateTaskを発行した側と、発行された側のどちらのタイミング保護違反となるかは規定されていない253 * 到着時間監視において、ActivateTaskを発行した側と、発行された側のどちらのタイミング保護違反となるかは規定されていない 254 254 * マルチコアでは、どちらのコアでプロテクションフックを起動するか等の問題がある 255 255 … … 259 259 }}} 260 260 * 呼び出したタスクを終了する 261 * 多重起動要求されているタスクが、 !TerminateTaskを実行した場合、再度実行可能状態となるが、!TerminateTaskを呼ばずに終了(returnを呼ぶ等)した場合に、再度実行可能状態となるかは規定されていない261 * 多重起動要求されているタスクが、TerminateTaskを実行した場合、再度実行可能状態となるが、TerminateTaskを呼ばずに終了(returnを呼ぶ等)した場合に、再度実行可能状態となるかは規定されていない 262 262 * TOPPERS/ATK2では、以下のような実装としている 263 263 * タスクが不正終了(returnを呼ぶ)した場合:多重起動は有効 … … 269 269 StatusType ChainTask(TaskType TaskID) 270 270 }}} 271 * 呼び出したタスクの終了と、TaskIDで指定したタスクの起動を行う( !TerminateTask+!ActivateTask)271 * 呼び出したタスクの終了と、TaskIDで指定したタスクの起動を行う(TerminateTask+ActivateTask) 272 272 273 273 == Schedule == … … 292 292 }}} 293 293 * TaskIDで指定したタスクの状態を取得する 294 * 本APIは、エラーフックでのデバッグにおける使用が考えられるが、割込み禁止時のAPI呼出し違反[OS093]により起動したエラーフックでは、割込み禁止状態のため、 !GetTaskStateが使用できないという不整合がある295 * TOPPERS/ATK2では、実害がないため、割込み禁止状態であっても、 !GetTaskStateを呼び出せるように実装している294 * 本APIは、エラーフックでのデバッグにおける使用が考えられるが、割込み禁止時のAPI呼出し違反[OS093]により起動したエラーフックでは、割込み禁止状態のため、GetTaskStateが使用できないという不整合がある 295 * TOPPERS/ATK2では、実害がないため、割込み禁止状態であっても、GetTaskStateを呼び出せるように実装している 296 296 297 297 == EnableAllInterrupts == … … 369 369 }}} 370 370 * TaskIDで指定したタスクにセットされたイベントを取得する 371 * マルチコア拡張仕様において、 !SetEventはコアを跨げるように拡張されているが、!GetEventが拡張されていない371 * マルチコア拡張仕様において、SetEventはコアを跨げるように拡張されているが、GetEventが拡張されていない 372 372 * 拡張できない理由が無いため、誤記と思われる 373 * TOPPERS/ATK2では、 !GetEventもコアを跨いで呼び出すことができるように実装している373 * TOPPERS/ATK2では、GetEventもコアを跨いで呼び出すことができるように実装している 374 374 375 375 == WaitEvent == … … 511 511 * ScheduleTableID_Fromに指定されたスケジュールテーブルが周期動作だった場合に、ScheduleTableID_Toのスケジュールテーブルに切り替わった後も周期動作を続けるかどうかが規定されていない 512 512 * TOPPERS/ATK2では、ScheduleTableID_Fromに指定されたスケジュールテーブルが周期動作の場合も、切り替え時に停止するように実装している 513 * マルチコア拡張仕様において、 !StartScheduleTableRelや!StartScheduleTableAbsはコアを跨げるように拡張されているが、!NextScheduleTableが拡張されていない513 * マルチコア拡張仕様において、StartScheduleTableRelやStartScheduleTableAbsはコアを跨げるように拡張されているが、NextScheduleTableが拡張されていない 514 514 * 拡張できない理由が無いため、誤記と思われる 515 * TOPPERS/ATK2では、 !NextScheduleTableもコアを跨いで呼び出すことができるように実装している515 * TOPPERS/ATK2では、NextScheduleTableもコアを跨いで呼び出すことができるように実装している 516 516 517 517 == StartScheduleTableSynchron == … … 632 632 * OS実行中のすべてのコアでOSシャットダウンを行う 633 633 * ShutdownAllCoresを呼び出していないコアのシャットダウンフックに、何のエラーコードが渡されるかは規定されていない 634 * TOPPERS/ATK2では、 !ShutdownAllCoresを呼び出していないコアでは,シャットダウンフックにE_OS_SHUTDOWN_OTHER_COREが渡される実装としている634 * TOPPERS/ATK2では、ShutdownAllCoresを呼び出していないコアでは,シャットダウンフックにE_OS_SHUTDOWN_OTHER_COREが渡される実装としている 635 635 636 636 == IocSend ==