FreeRTOS-Kernel/FreeRTOS/Test/CBMC/proofs/Task/TaskResumeAll
Yuhui Zheng 8156f64d1c Copying CBMC proofs from aws/amazon-freertos repo ./tools/cbmc to this repo ./FreeRTOS/Test/CBMC as is.
The commit ID in aws/amazon-freertos is 0c8e0217f2a43bdeb364b58ae01c6c259e03ef1b.
2020-03-31 14:21:53 -07:00
..
Configurations.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
TaskResumeAll_harness.c 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 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

This proof demonstrates the memory safety of the TaskResumeAll function. We assume that task lists are initialized and filled with a few list items. We also assume that some global variables are set to a nondeterministic value, except for uxSchedulerSuspended which cannot be 0 and xPendedTicks which is either 1 (to unwind a loop in a reasonable amount of time) or 0.

Configurations available:

  • default: The default configuration.
  • useTickHook1: The default configuration with configUSE_TICK_HOOK=1

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:

  • vApplicationTickHook
  • vPortEnterCritical
  • vPortExitCritical
  • vPortGenerateSimulatedInterrupt