FreeRTOS-Kernel/FreeRTOS/Test/CBMC/proofs/Task/TaskSwitchContext
Mark Tuttle 0390b0fc9b
Add CBMC viewer configuration files (#683)
* Revert cbmc-viewer flags

* Add cbmc-viewer configuration files

* Repair CBMC patch to prvCopyDataToQueue

Authored-by: Mark R. Tuttle <mrtuttle@amazon.com>
2021-09-13 21:23:35 -04:00
..
cbmc-viewer.json Add CBMC viewer configuration files (#683) 2021-09-13 21:23:35 -04:00
Makefile.json Copying CBMC proofs from aws/amazon-freertos repo ./tools/cbmc to this repo ./FreeRTOS/Test/CBMC as is. 2020-03-31 14:21:53 -07:00
README.md Copying CBMC proofs from aws/amazon-freertos repo ./tools/cbmc to this repo ./FreeRTOS/Test/CBMC as is. 2020-03-31 14:21:53 -07:00
tasks_test_access_functions.h Add uncrustify github workflow (#659) 2021-07-22 14:23:48 -07:00
TaskSwitchContext_harness.c Add uncrustify github workflow (#659) 2021-07-22 14:23:48 -07:00

This proof demonstrates the memory safety of the TaskSwitchContext function. We assume task ready lists to be initialized and filled with one element each, and pxCurrentTCB to be the highest priority task. We also set uxSchedulerSuspended to a nondeterministic value.

This proof is a work-in-progress. Proof assumptions are described in the harness. The proof also assumes the following functions are memory safe and have no side effects relevant to the memory safety of this function:

  • prvTraceGetCurrentTaskHandle
  • prvTraceGetTaskNumber
  • prvTraceStoreTaskswitch
  • ulGetRunTimeCounterValue