1
A software quality that is a measure of how easy the system can be evolved to accommodate new features, or changed to repair errors.
2
Memory that is directly addressable by the CPU
3
An input/output scheme where reading or writing involves executing a load or store instruction on a pseudomemory address mapped to the device
4
An intertask communication device consisting of a memory location and two operations – post and pend – that can be performed on it
5
A device used to route multiple lines onto fewer lines
6
The smallest portion of the operating system that provides for task scheduling, dispatching, and inertia communication
7
A device that must be reset periodically or a discrete signal is issued
8
The interval between when data are requested from the memory cell and when they are actually vailable
9
Operation on a semaphore that essentially locks the resource protected by the semaphore, or prevents the requesting task from proceeding if the resource is already locked
10
A systematic and precise,step-by-step procedure for solving a certain kind of problem oraccomplishing a task,for instance converting a particular kind of input data to a particular kind of output data
11
A fixed time quantum used to limit execution time in round-robin systems.
Memory in which the contents will be lost if power is removed
12
An address or value that is passed to a procedure or function call, as a way of communicating cleanly across procedure/function boundaries
13
An operating system where more than one processor is available to provide for simultaneity.
14
A predefined subprogram that is executed when an interrupt occurs. The handler can perform input or output, save data, update pointers, or notify other processes of the event.
15
A computer system that has more than one internal processor capable of operating collectively on a computation. Normally associated with those systems
16
An input to a processor that signals the occurrence of an asynchronous event. The processor’s response to an interrupt is to save the current machine state and execute a predefined subprogram.
17
An operating system that provides sufficient functionality to allow multiple programs to run on a single processor so that the illusion of simultaneity is created.
18
A real-time system in which missing even one deadline results in system failure
19
A collection of data associated with a task including context, process code (or a pointer to it), and other information.
20
Software that translates assembly language to machine code
21
In the task-control block model, those tasks that are waiting on a particular resource, and thus are not ready
22
Noninterrupt-driven processes in foreground/background systems
23
A group of instructions written to perform a task, independent of a main program and can be accessed by a program or another subroutine to perform the task.
24
A testing methodology where only the inputs and outputs of the unit are considered. How the outputs are generated inside the unit is ignored
25
Memory whose contents are preserved upon removing power
26
Any variables that is within the scope of all modules of the software system.
27
A set of programs that manages the operations of a computer. It oversees the interaction between the hardware and the software and provides a set of services to system users
28
A software run-time system component that periodically scans dynamically allocated storage and reclaims allocated storage that is no longer in use.
29
Operation of removing data from a mailbox. If data are not available, the process performing the pend suspends itself until the data become available.
30
An object or a set of objects that can no longer be accessed, typically because all pointers that direct accesses to the object or set have been eliminated.
31
A condition that occurs when a task is not being serviced frequently enough.
32
The condition experienced by tasks that are waiting for the occurrence of an event.
33
A first-in, last-out data structure.
34
A temporary data storage area used to interface between, for example, a fast device and a slower process servicing that device.
35
A task driven by an interrupt that occurs periodically
36
A program that translates a high-level language program into an executable machine instruction program or other lower-level form such as assembly language.
37
A real-time system in which failure to meet deadlines results in performance degradation but not necessarily failure.
38
The minimum information that is needed in order to save a currently executing task so that it can be resumed.
39
A special variable type used for protecting critical regions.
40
The process of saving and restoring sufficient information for a real-time task so that it can be resumed after being interrupted.
41
A measure of the software’s capability of meeting certain functional constraints such as timing or output precision.
42
A collection of interrupt driven or real-time processes.
43
A real-time system in which a single and repetitive test instruction is used to test a flag that indicates that some event has occurred.
44
Code used to process exceptions.
45
A quality in which the software can easily run in different environments.
46
Error or other special condition that arises during program execution
47
Operation that places data in a mailbox
48
When the next states and outputs of the system are known for each set of inputs that trigger events.
49
A series of diagnostic tests performed by a machine (such as the personal computer) when it powers on.
50
Any occurrence that results in a change in the state of a system.
51
In certain programming languages, a pseudo-op that allows assembly code to be placed in line with the high-order language code.
52
A computing machine contained in a device whose purpose is not to be a computer. For example, the computers in automobiles and household appliances are embedded computers
53
A condition that occurs when a higher-priority task interrupts a lower-priority task
54
A technique using two buffers where one is filled while the data in the other is being used
55
A system that uses preemption schemes instead of round-robin or first-come, first-served scheduling
56
In the task-control block model, a state that is best described as a TCB belonging to a task that is unavailable to the operating system
57
A condition that occurs because a noncritical task with a high execution rate will have a higher priority than a critical task with a low execution rate
58
The part of the kernel that performs the necessary bookkeeping to start a task.
59
An area of memory containing information about the context of an executing program. Although the process control block is primarily a software mechanism
60
A computer program that can take an executable image and convert it back into assembly code.
61
A scheme in which access to the computer’s memory is afforded to other devices in the system without the intervention of the CPU.
62
Transferring data to or from a peripheral device by running a program that executes individual computer instruction or commands to control the transfer.
63
A system where for each possible state, and each set of inputs, a unique set of outputs and next state of the system can be determined.
64
In the task-control block model, the state of those tasks that are ready to run, but are not running.
65
The value or status that is assumed unless otherwise specified
66
Refers to systems whose correctness depends not only on outputs but the timeliness of those outputs. Failure to meet one or more of the deadlines can result in system failure
67
A program that allows interactive analysis of a running program, by allowing the user to pause execution of the running program and examine its variables and path of execution at any point.
68
The time between the presentation of a set of inputs to a software system and the appearance of all the associated outputs.
69
A catastrophic situation that can arise when tasks are competing for the same set of two or more serially reusable resources
70
A first-in, first-out list in which simultaneous input and output to the list is achieved by keeping head and tail pointers. Data are loaded at the tail and read from the head.
71
Code that interacts with a serially reusable resource.
72
A scheme in which two or more processes are divided into states or phases, determined by a finite state automaton. Calls to a central dispatcher are made after each phase is complete.
73
A system in which several processes are executed sequentially to completion, often in conjunction with a cyclic executive
74
A system in which each executable task is assigned a fixed time quantum called a time slice in which to execute. A clock is used to initiate an interrupt at a rate corresponding to the time slice.
75
The part of the kernel that determines which task will run
76
Computer devices such as hard disks, floppy disks, tapes, and so forth, that are not part of the physical address space of the CPU.