Final Review Flashcards
(115 cards)
What is an Embedded System?
Computer system purpose built for a specific application
What is a Real Time System?
Embedded system that returns results sufficiently quickly to affect current environment. Execution predictability is as important as speed
What is a hard deadline?
Failure to meet the deadline leads to total system failure
What is a firm deadline?
Infrequent misses can be tolerated but late data has no value
What is a soft deadline
Misses are acceptable, but late data has diminishing value
Why use C for RTS?
compact, compiled, no garbage colleciton.
How does a struct differ from a class?
no member functions, no private/public protection
Why do we define special types such as uint32_t?
Increases portability across systems
What are the 5 components of a basic computer
Input, Output, Memory, ALU, Control
How many memory locations are adressable with a 32 bit address?
2^32 Memory locations
What is the difference between big and little endian
Big endian, most significant byte is stored in a lower address. Little endian, most significant byte is stored at the lower address.
What are the four types of memory
Text, Data, Heap, Stack
What is the difference between Volatile and Non Volatile memory
Volatile memory loses its contents when power is lost.
What are examples of volatile memory
DRAM, SRAM
What are examples of non volatile memory?
Disk, Tape, NAND Flash
What is a MCU?
Memory Controller Unit. Processor with memory, I/O, UART and RTC
What is memory mapped IO?
IO devices are mapped to memory locations and can be written to to change behavior or read from to recieve data.
How does polling IO work
Repeatedly check I/O status register until data is ready.
What are the downsides to polling IO?
Wastes time repeatedly checking the status register
What is an alternative to polling IO?
Interrupt based IO
How does interupt IO work?
IO device throws a IRQ which is mapped to a corresponding ISR using a vector table. The ISR handles the IO, and restores the context
When can an ISR be interrupted?
When a higher priority IRQ is received. Otherwise, any incoming IRQs must wait for the ISR to finish
What features must ISRs have
Must be re-entrent: no static variables
What is Bare Metal Scheduling
Hard Code tasks to run at certain loop intervals, using lowest common denominator