1996 · 321 citations · 17 references
NursingDisaster PlanningEmergency PreparednessDisaster PreparednessDisaster ResponseEmergency NursingCrisis PreparednessDisaster Preparedness DecisionsDisaster Response PlanningDisaster Risk AssessmentNatural Disaster PreparednessPreparedness PlanningCatastrophic EventsCrisis Preparedness PlanningDeployment StrategiesEmergency Preparedness AssessmentReadiness For Disaster Preparedness
Extensible operating systems let applications run code in the kernel, improving flexibility and performance, but this exposes the kernel to buggy or malicious code and resource‑hoarding attacks that existing safeguards do not fully prevent. The paper analyzes VINO kernel extension mechanisms. VINO employs software fault isolation together with a lightweight transaction system to guard against errant or malicious extensions and to mitigate resource‑hoarding, while quantifying the resulting overhead. The overhead incurred is high compared to extension costs but remains low relative to the extensibility benefits.
Today’s extensible operating systems allow applications to modify kernel behavior by providing mechanisms for application code to run in the kernel address space. The advantage of this approach is that it provides improved application flexibility and performance; the disadvantage is that buggy or malicious code can jeopardize the integrity of the kernel. It has been demonstrated that it is feasible to use safe languages, software fault isolation, or virtual memory protection to safeguard the main kernel. However, such protection mechanisms do not address the full range of problems, such as resource hoarding, that can arise when application code is introduced into the kernel. In this paper, we present an analysis of extension mechanisms in the VINO kernel. VINO uses software fault isolation as its safety mechanism and a lightweight transaction system to cope with resource-hoarding. We explain how these two mechanisms are sufficient to protect against a large class of errant or malicious extensions, and we quantify the overhead that this protection introduces. We find that while the overhead of these techniques is high relative to the cost of the extensions themselves, it is low relative to the benefits that extensibility brings.
17
Efficient software-based fault isolation
Robert Wahbe, Steven Lucco, Thomas E. Anderson et al. · 1993 · 1.2K citations · Full text
Dawson Engler, M. Frans Kaashoek, James W. O’Toole · 1995 · 1.1K citations
Extensibility safety and performance in the SPIN operating system
Brian N. Bershad, Stefan Savage, Przemysław Pardyak et al. · 1995 · 955 citations
Mach: A New Kernel Foundation for UNIX Development.
Michael J. Accetta, R. Baron, William J. Bolosky et al. · USENIX Summer · 1986 · 919 citations
Informed prefetching and caching
Russel H. Patterson, Garth A. Gibson, E. Ginting et al. · 1995 · 647 citations