Using Fault Injection to Analyze the Scope of Error Propagation in Linux
スポンサーリンク
概要
- 論文の詳細を見る
Operating systems (OSes) are crucial for achieving high availability of computer systems. Even if applications running on an operating system are highly available, a bug inside the kernel may result in a failure of the entire software stack. The objective of this study is to gain some insight into the development of the Linux kernel that is more resilient against software faults. In particular, this paper investigates the scope of error propagation. The propagation scope is process-local if the erroneous value is not propagated outside the process context that activated it. The scope is kernel-global if the erroneous value is propagated outside the process context that activated it. The investigation of the scope of error propagation gives us some insight into 1) defensive coding style, 2) reboot-less rejuvenation, and 3) general recovery mechanisms of the Linux kernel. For example, if most errors are process-local, we can rejuvenate the kernel without reboots because the kernel can be recovered simply by killing faulty processes. To investigate the scope of error propagation, we conduct an experimental campaign of fault injection on Linux 2.6.18, using a kernel-level fault injector widely used in the OS community. Our findings are (1) our target kernel (Linux 2.6.18) is coded defensively. This defensive coding style contributes to lower rates of error manifestation and kernel-global errors, (2) the scope of error propagation is mostly process-local in Linux, and (3) global propagation occurs with low probability. Even if an error corrupts a global data structure, other processes merely access to them.
著者
-
KONO Kenji
Keio Univ.
-
YAMADA Hiroshi
Tokyo Metro. Inst. for Neurosci.
-
Yoshimura Takeshi
Keio University
関連論文
- 「手段」としての仮想マシン技術の研究(平成21年度論文賞の受賞論文紹介)
- Reducing Security Policy Size for Internet Servers in Secure Operating Systems
- Filtering False Positives Based on Server-Side Behaviors
- Immunocytochemical Demonstration of Serotonin Neuron System in Human Brainstem
- Windows PC をグリッド環境で利用するための軽量 Linux バイナリ実行システム
- User-level Enforcement of Appropriate Background Process Execution
- TCP Reassembler for Layer7-Aware Network Intrusion Detection/Prevention Systems(Dependable Computing)
- Two tracing methods on neuronalconnections between two differently labeled neural groups
- Simultaneous Demonstration of two kinds of neuronal processes with combined PAP and GAG methods
- REAPPRAISAL FOR PHRENIC MOTOR INNERVATION IN KITTENS BY HRP AND FLUORESCENT DUAL LABELING STUDIES
- Studies on Phrenic Innervations by Retrograde Tracer Methods with HRP and Fluorescent Substances in Cat
- DEMONSTRATION OF NEURONAL LOCALIZATION IN ONUFROWCZ'S GROUP-X IN RABBIT BY DOUBLE LABELING METHOD
- Using a Virtual Machine Monitor to Slow Down CPU Speed for Embedded Time-Sensitive Software Testing
- Using a Virtual Machine Monitor to Slow Down CPU Speed for Embedded Time-Sensitive Software Testing
- A State-Aware Protocol Fuzzer Based on Application-Layer Protocols
- The Secondary Flow about a Circular Cylinder Mounted Normal to a Flat Plate
- Clustering Performance Anomalies Based on Similarity in Processing Time Changes
- MashCache: Taming Flash Crowds by Using Their Good Features
- Lightweight Recovery from Kernel Failures Using Phase-based Reboot
- Lightweight Recovery from Kernel Failures Using Phase-based Reboot
- MashCache: Taming Flash Crowds by Using Their Good Features
- Using Fault Injection to Analyze the Scope of Error Propagation in Linux
- Honeyguide: A VM Migration-Aware Network Topology for Saving Energy Consumption in Data Center Networks
- Automatically Checking for Session Management Vulnerabilities in Web Applications
- DiscNice: User-level Regulation of Disk Bandwidth