mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-10-23 21:27:45 -04:00
* Fix Tasks.c patch, line numbers were out of sync and patching was
broken.
* Add assumption to TaskCreate proof that a task's priority is less than
the configured max.
With the introduction of
|
||
|---|---|---|
| .. | ||
| Makefile.json | ||
| README.md | ||
| TaskCreate_harness.c | ||
| tasks_test_access_functions.h | ||
This proof demonstrates the memory safety of the TaskCreate function.
We initialize task lists, but we set other data structures to
unconstrained (arbitrary) values, including the data structures
pxCurrentTCB, uxCurrentNumberOfTasks, pcName and pxCreateTask.
STACK_DEPTH is set to a fixed number (10) since it is not possible to
specify a range.
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:
- prvTraceGetObjectHandle
- prvTraceGetTaskNumber
- prvTraceSetObjectName
- prvTraceSetPriorityProperty
- prvTraceStoreKernelCall
- prvTraceStoreTaskReady
- pxPortInitialiseStack
- vPortEnterCritical
- vPortExitCritical
- vPortGenerateSimulatedInterrupt