Group: parallel processing
Topic: asynchronous processing
Topic: exception handling with resumption
Topic: device driver
Topic: hard real time systems
Topic: interrupts
Topic: monitored statements and events
Topic: non-deterministic processing
Topic: operating system kernel
Topic: real time systems
Topic: task scheduling
| |
Summary
Interrupts initiate interrupt handlers to respond to input requests and output terminations. All handlers must first prevent reoccurrence of the interrupt, then they should allow interruption by higher priority interrupts. Input requests may require rapid response. In such cases timing delays caused by other processes must be strictly bounded. Interrupt handlers may be incorporated into device drivers by a 'wait for i/o' statement. (cbb 5/80)
Subtopic: interrupts as nondeterministic requests -- worst case response
Quote: a real-time program must respond to nondeterministic requests within a time limit; otherwise drop input or cancel output [»brinP11_1978]
| Quote: a robot's environment is unpredictable and nondeterministic
| Quote: Thoth guarantees worst-case times for responding to interrupts [»cherDR2_1979]
| Subtopic: avoiding interrupts
Quote: executes simple tasks (boolean assignments only) once per scan for hard real-time processes [»weavAC_1978]
| Quote: use implicit and explicit polling for asynchronous exceptions; use hierarchical disabling, queuing, and out of order delivery [»buhrPA9_2000]
| Quote: hide interrupts via abstract processors; everything else as cooperating sequential processes [»dijkEW2_1971]
| Subtopic: bounding interrupts
Quote: several techniques for delaying or dropping excessive interrupt requests; bounds the work, granularity, and rate of the interrupt context; e.g., the first moon landing nearly aborted due to interrupt overload [»regeJ6_2005]
| Subtopic: safepoint
Quote: C-- defines safepoints that yield to an asynchronous pre-emption; every loop is cut by a safe point [»joneSP9_1999]
| Subtopic: preemption
Quote: OWL needs a partial preemption that suspends concurrent siblings instead of terminating them [»donnMD_1987]
| Subtopic: resumption
Quote: interruptible iterators allow updates to the underlying collection; efficient, easier to use [»liuJ1_2006]
| Subtopic: disabling interrupts
Quote: an interrupt scheme that combines simplicity of disabling interrupts with performance of optimistic schemes; at most 0.3% overhead [»smalC1_1997]
| Quote: prioritized interrupts leads to short critical sections, while the traditional interrupt scheme has a high overhead; up to 12% of CPU time [»smalC1_1997]
| QuoteRef: cbb_1973 ;;3/10/74 executing an interrupt always disables the interrupt otherwise would keep on interrupting
| Quote: in MicroTool, all control structures are single-entry, single-exit without recursion; only one level of interrupt with optional reset [»elshJL1_1991]
| Subtopic: hardware interrupts
Quote: hardware interrupts in PORTAL are signals from a hidden process with exactly one process waiting for them [»schiR4_1980]
| Quote: a Modula device process consists of initialization commands followed by an implicit delay to allow interrupt processing [»wirtN8_1977]
| Quote: V passes an exception hardware interrupt to the current process; it forwards the exception to an exception server; moves out of kernel [»cherDR4_1984]
| Subtopic: livelock
Quote: receive livelock--responding to interrupts all of the time; can happen with host-based routing, passive network monitoring, network file service [»moguJC8_1997]
| Quote: avoid receive livelock by round-robin polling on interrupts and interrupt only when not polling; guarantees CPU for user tasks [»moguJC8_1997]
| Subtopic: overload
Quote: on overload, drop packets early; once accept packet, process to completion
|
Related Topics
Group: parallel processing (41 topics, 1125 quotes)
Topic: asynchronous processing (30 items)
Topic: exception handling with resumption (31 items)
Topic: device driver (15 items)
Topic: hard real time systems (64 items)
Topic: interrupts (25 items)
Topic: monitored statements and events (16 items)
Topic: non-deterministic processing (19 items)
Topic: operating system kernel (67 items)
Topic: real time systems (14 items)
Topic: task scheduling (49 items)
|