Improving Device Driver Reliability through Decoupled Dynamic Binary Analyses

نویسندگان

  • Olatunji O. Ruwase
  • David Andersen
  • Onur Mutlu
  • Michael Swift
چکیده

Device drivers are Operating Systems (OS) extensions that enable the use of I/O devices in computing systems. However, studies have identified drivers as an Achilles’ heel of system reliability, their high fault rate accounting for a significant portion of system failures. Consequently, significant effort has been directed towards improving system robustness by protecting system components (e.g., OS kernel, I/O devices, etc.) from the harmful effects of driver faults. In contrast to prior techniques which focused on preventing unsafe driver interactions (e.g., with the OS kernel), my thesis is that checking a driver’s execution for correctness violations results in the detection and mitigation of more faults. To validate this thesis, I present Guardrail, a flexible and powerful framework that enables instruction-grained dynamic analysis (e.g., data race detection) of unmodified kernel-mode driver binaries to safeguard I/O operations and devices from driver faults. Guardrail decouples the analysis tool from driver execution to improve performance, and runs it in user-space to simplify the deployment of new tools. Moreover, Guardrail leverages virtualization to be transparent to both the driver and device, and enable support for arbitrary driver/device combinations. To demonstrate Guardrail’s generality, I implemented three novel dynamic checking tools within the framework for detecting memory faults, data races and DMA faults in drivers. These tools found 25 serious bugs, including previously unknown bugs, in Linux storage and network drivers. Some of the bugs existed in several Linux (and driver) releases, suggesting their elusiveness to existing approaches. Guardrail easily detected these bugs using common driver workloads.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Guardrail: High Fidelity Correctness Checking of Device Drivers for Safeguarding I/O Operations

Device drivers are an Achilles’ heel of modern commodity operating systems, accounting for far too many system failures. Previous work on driver reliability has focused on protecting the kernel from unsafe driver side-effects by interposing an invariant-checking layer at the driver interface, but otherwise treating the driver as a black box. In this paper, we propose and evaluate Guardrail, whi...

متن کامل

Log Based Dynamic Binary Analysis for Detecting Device Driver Defects

The user experience of modern computing systems is greatly enriched by the availability of hardware I/O devices that provide a rich variety of functions including data storage (e.g disk and flash drives), connection to the Internet (e.g network cards, webcams), and entertainment (e.g. speakers, GPUs). I/O devices are quite popular in today’s computing environments (Handheld devices, PCs, Cloud ...

متن کامل

Evaluating the Impact of Grade Crossing Safety Factors through Signal Detection Theory

The purpose of this effort was to apply signal detection theory to descriptively model the impact of five grade crossing safety factors to understand their effect on driver decision making. The safety factors consisted of: improving commercial motor vehicle driver safety through federal regulations, increasing locomotive conspicuity with alerting lights, increasing locomotive conspicuity with r...

متن کامل

Encapsulated User-Level Device Drivers in the Mungi Operating System

The reliability of device drivers is of critical importance to the overall stability of computer systems. This paper presents the software architecture used for userlevel device drivers in the Mungi operating system. We argue that this framework provides a safer environment in which to run device drivers, while making device driver implementation easier and more flexible, thus improving overall...

متن کامل

Comparative analysis of profit between three dissimilar repairable redundant systems using supporting external device for operation

The importance in promoting, sustaining industries, manufacturing systems and economy through reliability measurement has become an area of interest. The profit of a system may be enhanced using highly reliable structural design of the system or subsystem of higher reliability. On improving the reliability and availability of a system, the production and associated profit will also increase. Re...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013