mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-10-15 01:07:47 -04:00
* Use new version of CI-CD Actions, checkout@v3 instead of checkout@v2 on all jobs * Use cSpell spell check, and use ubuntu-20.04 for formatting check * Add in bot formatting action * Update freertos_demo.yml and freertos_plus_demo.yml files to increase github log readability * Add in a Qemu demo onto the workflows. |
||
---|---|---|
.. | ||
cbmc-viewer.json | ||
Configurations.json | ||
README.md | ||
TaskDelay_harness.c | ||
tasks_test_access_functions.h |
This proof demonstrates the memory safety of the TaskDelay function. We assume
that pxCurrentTCB
is initialized and inserted in one of the ready tasks lists
(with and without another task in the same list). We abstract function
xTaskResumeAll
by assuming that xPendingReadyList
is empty and
xPendedTicks
is 0
. Finally, we assume nondeterministic values for global
variables xTickCount
and xNextTaskUnblockTime
, and pdFALSE
for
uxSchedulerSuspended
(to avoid assertion failure).
Configurations available:
default
: The default configuration.useTickHook1
: The default configuration withINCLUDE_vTaskSuspend=0
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:
- vPortEnterCritical
- vPortExitCritical
- vPortGenerateSimulatedInterrupt