Font Size: a A A

Research On Device Driver Reliability In Operating Systems

Posted on:2014-03-17Degree:DoctorType:Dissertation
Country:ChinaCandidate:C MaFull Text:PDF
GTID:1268330422460576Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With the development of computer technology, hardware devices emerge inlarge numbers, making people’s life more and more convenient and comfortable.Because of the market competition, time spent in developing hardware devicebecomes less and less, which leads to serious vulnerability in device drivers.The vulnerability of device drivers threatens the reliability of the host operatingsystem and unreliable device drivers may cause operating systems abnormalityand failure. Therefore, technique on the reliability of device drivers has beenwidely researched.This thesis discusses some key problems on the reliability of device drivers.The important vulnerability includes problems of concurrency errors, kernelfunction usage rule violation and device protocol violations which are caused byhardware device failures. The main contributions include:(1) A novel device driver architecture named SerialDriver which is basedon invocation serialization. Serialization is an effective technique to avoidconcurrency errors of device drivers. Compared with other architectures,SerialDriver does not need to rewrite device drivers and is able to achieve thegoal of high performance and low overhead. Besides, SerialDriver can be widelyused in most operating systems.(2) The KFUR model which is used to check kernel function usage ruleviolation in device drivers. There are a large number of situations that kernelfunction usage rules are violated in device drivers. The KFUR model describeskernel function usage rules and provides the condition in which usage rules areviolated. The system based on the KFUR model can check whether kernelfunction usage rules are violated. When some rule is violated, the system canprevent the operating system from failure or crash.(3) A tainted variables tracking model named Smelter, which is based onthe theory of the directed graph. Programmers do not consider about toleratinghardware device failures in drivers and thus analyzing device drivers to insertfault-tolerant codes at the compiler time is a good method to improve thereliability. The Smelter model supports cross procedure and complex data structure analysis to improve the precise. Therefore the Smelter model is ofgreat benefit to hardware device failure tolerance.(4) A device driver recovery approach named ISD which is based on driverbackup. Because methods in compiler time can not solve the issue of hardwaredevice failure tolerance in the runtime thoroughlyk, ISD uses the backuptechnique to improve the reliability. ISD adopts the backup driver to record dataand states of the running driver when the hardware device is correct. When thehardware device fails and the running driver works incorrectly, ISD replaces thebroken driver with the backup driver to keep the operating system in the correctstate.
Keywords/Search Tags:reliability, invocation serialization, KFUR model, tainted variabletracking, driver backup
PDF Full Text Request
Related items