Implementation Details
Contents:
- Bottom-Half Interrupt Handlers
- Cancellation Points
- chip.h
- Context Switches
- Critical Sections
- Device Drivers
- Device Nodes
- OS Drivers Design
- File Descriptors
- Hardfaults
- Per-Thread Interrupt Controls
- ioctl
- Kernel Modules vs Shared Libraries
- Kernel Threads vs. Pthreads
- Make Build System
- Memory Configurations
- Naming of Architecture, MCU, and Board Interfaces
- Naming of OS Internal Functions
- NuttX Initialization Sequence
- NuttX Tasking
- Oneshot Timers and CPU Load Measurement
- Power Management
- Effects of Disabling Interrupts or Pre-Emption on Response Latency
- Linux Processes vs NuttX Tasks
- Short Time Delays
- Signal Handlers
- The NuttX Simulation
- SMP (Symmetric MultiProcessing)
- SysLog
- Tasks vs. Threads
- What is the difference between a thread and a task in Nuttx?
- When would I want to use a task? When would I want to use a thread?
- How do signals work in a task group with many pthreads?
- How do
atexit()andon_exit()work with task groups? - How does
waitpid()work with task groups? - What are privileged threads? How are threads handled differently when NuttX is built as a Kernel
- Tickless OS
- TLS: Thread Local Storage
- USB (Universal Serial Bus)