FC09 — Event Groups and multi-event synchronization

This deterministic card implements two distinct protocols on one genuine FreeRTOS EventGroup:

  1. a priority-3 coordinator waits for ALL independent readiness bits;
  2. coordinator, worker A and worker B cross a three-party xEventGroupSync() barrier.

READY (0x01, 0x02) and SYNC (0x10, 0x20, 0x40) masks are disjoint. The partial mask cannot release either protocol. Every participant receives a return value containing SYNC_ALL, while the group value becomes zero after the barrier's automatic clear.

make task1 host-test check-abi sim check-determinism

The test links upstream FreeRTOS V11.3.0 event_groups.c, uses finite timeouts, records eleven commit-last events and prints a stable digest from three clean Hazard3 processes.

Interactive views: A2 structure, A4 participant topology, A5 execution flow, A6 mask/state machine, A7 runtime evidence and A8 synchronization patterns.

Source basis: FreeRTOS Kernel Book, Chapter 9.

S
Description
FC09 — Event Groups and Multi-event Synchronization
Readme 819 KiB
Languages
C 69.8%
Makefile 14%
Shell 11.5%
Assembly 3.2%
HTML 1.5%