courtesy of GPT4
Priority inversion: A situation where a higher-priority task is indirectly blocked by a lower-priority task holding a shared resource.
Mutex vs semaphore: Mutex ensures mutual exclusion for a shared resource, while semaphore controls access to a resource by multiple tasks with a counter.
Preemption: The act of interrupting and temporarily suspending a task, allowing another task to execute.
Interrupts: Signals to a CPU to temporarily stop its current task to handle an event or perform a specific function.
Interrupt latency: The time between the arrival of an interrupt and the start of the interrupt service routine (ISR).
ISR vs function: ISR handles an interrupt, cannot be called directly, and must complete quickly; a function is a reusable block of code that can be called as needed.
Interrupt vs exception: Interrupts are external events requiring CPU attention, while exceptions are internal events caused by the execution of an instruction.
Hard vs soft real time: Hard real-time systems have strict deadlines that must be met, while soft real-time systems have more flexible deadlines.
CPU boot process: Initialization sequence a CPU follows upon startup, including loading firmware, running tests, and loading an operating system.
Board bring up: Process of validating and configuring new hardware to ensure correct functionality.
Memory sections: Code (executable instructions), Data (initialized variables), BSS (uninitialized variables).
TLB: Translation Lookaside Buffer, a cache for memory address translations in virtual memory systems.
Big vs little endian: Big endian stores the most significant byte first, while little endian stores the least significant byte first.
32 vs 64 bit processors: 32-bit processors have 32-bit wide registers and address spaces, while 64-bit processors have 64-bit wide registers and address spaces, allowing for larger memory and better performance.
Null pointer dereference: Undefined behavior occurs, often leading to a crash or unpredictable results.