Definitions of terms used on this website.

There are 23 entries in this glossary.
Search for glossary terms (regular expression allowed)
Begins with Contains Exact term
All | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | R | S | T | U | V | W | X

All

Term Definition
VxWorks
A Unix-like real time operating system made and sold by Wind River Systems
Watchdog
A hardware timer that will cause a hardware reset if certain conditions are not continued to be met.
Baud
Rate of serial communication, the number of distinct symbol changes made to the transmission medium per second.
Semaphore
A data structure used for synchronising tasks. Semaphores are often provided by the operating system and can come in various forms such as binary or counting. Binary semaphores can be used for mutual exclusion.
Atomic
Operations that cannot be interrupted are called atomic, and are inherently reentrant. They cannot be pre-empted or corrupted by other tasks.
x86
The generic term x86 refers to the instruction set of the Intel 8086 and subsequent compatible processors
uClinux
The original uClinux was a derivative of Linux 2.0 kernel intended for microcontrollers without Memory Management Units (MMUs). However, the Linux/Microcontroller Project has grown both in brand recognition and coverage of processor architectures. Today\'s uClinux as an operating system includes Linux kernel releases for 2.0 2.4 and 2.6 as well as a collection of user applications, libraries and tool chains. http://www.uclinux.org
Scheduler
The scheduler decides which task to run next. The decision is based on the state of each task, the priorities of those that are ready to run, and the specific scheduling algorithm implemented.
Recursive
Software that calls itself is said to be recursive. In an embedded system, recursion should generally be avoided, as a larger stack will be required.
Reentrant
Code that can be executed multiple times simultaneously is knwon as reentrant.
Priority
The relative urgency of one task or interrupt compared to another. In the case of tasks, the priority is an integer and the scheduler in a preemptive priority-based operating system compares the priorities of all that are ready to run and selects the one with the highest urgency to run.
Preemptive
An operating system is said to be preemptive if it allows the running task to be suspended when a task of higher priority becomes ready (or a task of equal priority is granted a turn). Nonpreemptive schedulers are easier to implement but less appropriate for embedded systems, which must be responsive to external events.
Mutual Exclusion
Mutual exclusion is where a single task requires access to a shared resource, and it must be guaranteed to be exclusive. In embedded systems, shared resources (such as blocks of memory, global variables, or I/O) often need mutual exclusion if more than a single task will access them. Mutual exclusion is typically achieved with the use of a binary semaphore.
Memory Mapped I/O
A common hardware design methodology in which peripheral control and status registers are mapped into the memory space rather than the I/O space. From the software developer\'s point of view, memory-mapped I/O devices look very much like memory devices. Their registers can even be accessed via ordinary pointers and data structures, greatly simplifying device driver implementation.
MAC Address
Globally unique 48-bit hardware address assigned to each device on a network. Every system on a physical network, includes a network controller, which is an interface to the physical communications medium. As part of its initialization, the network controller must be fed a unique hardware address to use when communicating over the network.
Kernel
The heart of any real-time operating system, the kernel consists of the scheduler and context switch routine. It provides an API for user applications and interacts with drivers for hardware, filesystems as well as network stacks.
Task Synchronisation
In a multitasking environment, timing and ordering between tasks must be coordinated. Most RTOSes include resources (semaphores, monitors, etc.) to safely synchronize without the risk of race conditions.
Latency
The time taken between an input and a resulting output.
Interrupt
An asynchronous electrical signal that signals to the processor an event has occurred. When this happens, the current context is saved and an interrupt service routine is executed. When the interrupt service routine exits, control of the processor is returned to the previously running task.
I/O space
A special memory region provided by some processors and generally reserved for the attachment of I/O devices. Memory locations and registers within a processor\'s I/O space can only be accessed via special opcodes.
Heap
An area of memory used for dynamic memory allocation. Calls to malloc() and free() result in run-time manipulation of the heap.
Deadline
In a hard real time system, the time at which a particular set of computations or data transfers must be completed. There are typically consequences associated with missing a deadline.
Driver
A software module that hides the details of a particular device and provides a higher-level programming interface to it. Each driver is typically specific to an operating system and will allow application software to attach to, read and write data from, and change the behavior of the peripheral device. The more complex the operating system environment, the more likely it is that the device driver code will have to conform to a certain high-level API. For example, Windows and Unix both require every network device driver to conform to a common API.
Glossary 2.5 is technology by Black Sheep Research