Please use this identifier to cite or link to this item: http://hdl.handle.net/11455/8024
標題: 增進Linux驅動程式穩定性與開發速度之工具:TFC
TFC: A Tool of Trace, Fault Injection and Crash Rescue for Linux Device Drivers
作者: 許玉霞
Hsu, Yu-Hsia
關鍵字: Linux;驅動程式;Driver
出版社: 電機工程學系所
摘要: 
為使系統在遭受裝置驅動程式發生錯誤時, 仍能保持正常運作, 本文提出新的機制, 並實作一個工具程式稱為 “TFC” (Trace, Fault injection, and Crash rescue for Linux device drivers). TFC 使用 kprobes 機制能動態地觀測驅動程式, 經由實際測試 Linux 作業系統下的 PCI 網路介面卡驅動程式, 證明 TFC 的確能幫助系統在裝置驅動程式出現錯誤時, 繼續正常的工作.
同時, 雖然目前已存有數種針對核心程式追蹤與除錯的工具, TFC 提供另一種最直觀的追蹤與除錯功能, 能明白指出造成執行期錯誤的系統呼叫參數, 並保持系統正常的運作, 不受錯誤的影響.
另外, TFC 也含有注入錯誤的功能, 程式設計者不需更動驅動程式, 便可觀察驅動程式在錯誤發生時的反應.
與過去的研究或除錯追蹤工具比較, TFC 是一套更完整顯示觀測的資訊, 能加快 Linux 裝置驅動程式開發的工具; 最大的創新為能在系統執行期, 動態地, 完全地, 被載入或被卸載. 不需更動作業系統核心, 或裝置驅動程式本身任何的地方.

This paper presents a new mechanism that enables system to run correctly when device drivers fail. Moreover, the presented tool: TFC uses the kprobes infrastructure to dynamically instrument the kernel applications (driver module) and is confirmed from observed results (tests on the PCI network interface card driver for the Linux operation system) to be helpful to Trace, Fault injection, and Crash rescue for Linux device drivers. With TFC, the system can indeed survive the failure of the device driver.
There are several techniques programmers can use to monitor kernel code and trace errors. TFC is most easy understanding for pinpointing runtime errors from system calls automatically and saving system from crash concurrently. Often the other debugging tools in the application or demo program isn't verbose enough to be useful for debugging, and being able to tell exactly which arguments to which system call triggered the error can be a great help.
TFC also provides fault injection function for programmers to observe the driver response. TFC is a totally solution to provide the instrumentation data to speed the Linux device driver programming.
The primary advantage of the TFC clearly lies in its permitting users to dynamically load and unload into the running kernel. The TFC can be introduced without any changes to the OS kernel and with no changes at all to existing device drivers.
URI: http://hdl.handle.net/11455/8024
Appears in Collections:電機工程學系所

Show full item record
 

Google ScholarTM

Check


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.