標題: 動態置換驅動程式以增進作業系統之可用性
nDriver: Online Driver Swapping for Increasing Operating System Availability
作者: 江英杰
Ying-Jay Chiang
張瑞川
林正中
Prof. Ruei-Chuan Chang
Prof. Cheng-Chung Lin
資訊科學與工程研究所
關鍵字: 驅動程式;Recovery;Device Driver;Design Diversity;Reconfiguration
公開日期: 2003
摘要: 近年來,作業系統的可靠度逐漸受到重視,因為一些需要高可用性的服務都必須依賴作業系統所提供的功能。然而,驅動程式設計上的缺陷卻容易破壞作業系統的穩定性。研究指出,在作業系統的原始碼中,驅動程式的錯誤比例是其他非驅動部分的3倍至7倍。因此,我們提出了一個架構,驅動程式設計團隊可以提供多份不同實做方式的驅動程式,透過此架構來避免驅動程式的錯誤設計讓整個系統無法運作。如果驅動程式因設計缺陷而發生錯誤後,我們的架構就會將發生錯誤的驅動程式移除,再使用另外一份的驅動程式。除此之外,我們的架構必須修補系統的狀態以及恢復遺失的系統要求。 我們將這個架構實做在目前相當流行的Linux作業系統來驗證我們的方法。根據實驗的結果,我們架構對效能所造成的額外負擔不超過百分之五,且整個修復的時間非常短。証明我們的架構是個可以有效增加作業系統可用性的方法。
The reliability of an operating system is important because all applications must depend on the functionality it provides. However, design defects of device drivers violate the reliability of an operating system. It is showed in [18] that the error rates of device drivers can be three to seven times higher than the rest of the kernel. In this paper, we propose a framework named nDriver via which a driver administrator can use multiple implementations to increase the driver robustness. In case there is a fault happening in a driver, nDriver can dynamically replace the faulty implementation rather than let it crash the system. In addition, nDriver must fix the system state and recover the lost system requests. We implement nDriver in the Linux operating system. According to the evaluation, the overhead of nDriver is no more than 5% and the time it takes to recover is very small. This indicates nDriver is a feasible mechanism to increase the availability of operating systems.
URI: http://140.113.39.130/cdrfb3/record/nctu/#GT009117515
http://hdl.handle.net/11536/49558
Appears in Collections:Thesis


Files in This Item:

  1. 751501.pdf

If it is a zip file, please download the file and unzip it, then open index.html in a browser to view the full text content.