SlideShare a Scribd company logo
1 of 5
Download to read offline
IOSR Journal of Computer Engineering (IOSR-JCE)
e-ISSN: 2278-0661, p- ISSN: 2278-8727Volume 13, Issue 1 (Jul. - Aug. 2013), PP 07-11
www.iosrjournals.org
www.iosrjournals.org 7 | Page
Towards Reliable Systems with User Action Tolerance and
Recovery
Vivek Thachil1
, Dileesh E D2
1
(Computer Science and Engineering, Govt. Engineering College/ University of Calicut, India)
2
(Computer Science and Engineering, Govt. Engineering College/ University of Calicut, India)
Abstract : This paper presents mechanisms that enables operating system to be tolerant to certain user actions
and recovery of some resources such as files. Certain user actions can make the system completely unavailing
or unreliable. To remedy this situation, we introduce series of mechanisms under the name Tolerance Driver.
Tolerance driver can transparently protect system from user actions, recover the system configurations and
resources. There are two drivers for tolerance and recovery such as strategic and stringent. Stringent driver
uses strict methods of tolerance and Strategic driver uses strategic methods for tolerance and recovery. We have
created tolerance drivers on Linux distribution Ubuntu 12.04 as character drivers. We expect the tolerance
drivers can improve the reliability of the system. Lastly these mechanism was easily added as kernel module to
kernel as part of operating system.
Keywords - Action Tap, Stringent driver, Strategic driver, Tolerance driver, User Action Tolerance
I. Introduction
Reliability is one significant factor every operating system should try to improve. System failures due
to user actions such as accidental actions are common in every domain. Failures bring user frustration and loss
of various forms. Sometimes failures can result in huge business loss.
Most of the actions are related to loss of data by accidental deletion of files. User would go about
deleting some system file or important work file and lead to unstable system or loss of data. Hence mechanisms
to tolerate user actions are important to protect system and save user business. Most of the accidental file
deletions are stopped by user privilege levels. Some files are kept at higher privilege (accessible only to
administrator) and cannot be removed by non privileged users are so protected from normal users. But problem
arises when normal users are given higher privilege for performing certain privileged actions and end up
accidentally deleting the important files.
This paper presents a new mechanism called tolerance driver which can improve system reliability by
protecting a list of files the user want to protect. The driver makes the system tolerant to harmful user actions
and helps in recovering resources which are essential for system. In general tolerance driver track user actions
and on detecting actions that are harmful it take necessary steps to tolerate that action. Sometimes the driver
would let the user to continue the harmful action and take measures to recover the system before system goes
completely unrecoverable from damage created by action. We make following assumptions regarding the the
user environment:
1. Specific user actions such as file deletion goes through same interface or procedures leading to
deletion.
2. Intention of user action is not malicious, but are accidental and sometimes harmful.
We implemented the tolerance driver as two separate drivers with different methods for tolerance on Linux
based operating systems. Our results shows that tolerance driver could :
1. Tolerate user actions such as deletion of important files.
2. Recover important files which has gone undergone actual deletion from backup before system goes
partially or completely non-operational.
3. Can be easily integrated into the operating system.
4. Requires minimum overhead.
II. Related Work
SE Linux (Security Enhanced Linux)[1] is feature of Linux that provides mechanisms to support access
control polices. It has been integrated into Linux mainline since version 2.6. It can be used to control activities
privilege of user, process and daemon. But the mechanism is not made to tolerate privileged user, process or
daemon actions. Shadow driver[4] is a mechanism used to tolerate device driver failures affecting operating
system and applications dependent on it. It makes this possible by tracking driver actions in passive mode and
handling functionality of driver being shadowed in active mode.
Towards Reliable Systems with User Action Tolerance and Recovery
www.iosrjournals.org 8 | Page
III. Kernel Module and Tolerance Driver Design
Kernel modules are units that are used to improve or add the functionality of kernel. One such kernel
module is driver. Device drivers are used to communicate with devices attached to the system. But drivers are
also used to perform some other actions other than communicating with device which require privilege. Drivers
execute in highest privilege level and can do many privileged actions. User process communicate with driver via
device file and make the driver do the required advanced functionality.
3.1 User Actions and Kernel Calls
User actions including creating, opening, reading, writing and writing are converted to kernel system
calls which will call kernels and kernel will do the required functionality. System calls are interface to the kernel
used by programs to do any operations. Tolerance driver function by creating another interface between user
actions and kernel system call interface.
3.2 Tolerance Driver
A tolerance driver act as kernel module to provide tolerance for particular user action. In some system
most of the system resources are in the form of files. Hence it is essential to protect these files from removal or
permanent removal. The user action that is tolerated by tolerance driver is removal of system resource in the
form of files. All the user actions invoke one of the kernel interfaces. Tolerance driver functionality are split into
two drivers such as Stringent and Strategic driver. Stringent Tolerance Driver function by acting as interface
between User action and Kernel Interface of system call. While Strategic tolerance driver functionality has
nothing to do with intercepting user action and kernel interface. But it function to tolerate user action by means
of backup and recovery between startup and shutdown of the system.
3.3 Active and Passive Mode
Driver function in both active and passive mode. Both strategic and stringent driver are active on the
system startup. On startup they call a program called Link Collector to collect links of the files that user wants to
protect. The links are collected from Links file associated with link collector. Link collector communicate with
driver by means of device file and export the information regarding file links. When user actions are related to
file removal or deletion, stringent tolerance driver gets into active mode. It collects information regarding the
the file being removed such as its location, name and take necessary action. It matches these information with
the data collected from Link Collector. If match found it blocks the user action to remove the file.
Strategic driver is active only on system startup and shutdown. Strategic driver is passive on actions
related to file removal. But on system startup it gets active and creates backup of links representing the files that
user require tolerance. On shutdown the driver check the existence of files represented by links collects by Link
Collector. If match found it recovers the files from backup. Backup is location hidden from user by kernel
mechanisms. Backup will develop directory structure depending on which files are to be protected similar to
system file directory structure. This helps to backup to contain files of same name.
3.4 File Classes
Tolerance driver bring protection to system files including important user files. Files protected by
drivers are classified into two such as Type1 and Type2. Type1 files are essential for system function
throughout its working. Type2 files are essential for system to start working. Stringent driver tolerant user
actions to remove Type1 file and Strategic driver tolerate that with Type2 files. Type 2 files are allowed to be
removed during system working since they are recovered by the driver on system shutdown. Since the system
could start normally with Type2 files, they are backed up to Backup on startup.
3.5 Action Taps
Stringent driver function by inserting methods called Action Taps between User Action program and
Kernel Interface. It get activated on respective user action it represents such as file read, write or removal and
stays in passive mode otherwise. Removal Action Tap is invoked on file removal. Removal action tap invoke
the Stringent driver on file removal action. Stringent driver check the file to be removed with the Link Collector
information and take action. Fig.1 show the position of the driver and Removal action tap.
Towards Reliable Systems with User Action Tolerance and Recovery
www.iosrjournals.org 9 | Page
Fig.1 Position of Tolerance Driver and Action Tap
3.6 Stringent Tolerance Driver Design
Stringent driver need to collect links (representing files) on startup and so need to call user program
Link Collector. Link collector export the links to driver. Driver need to tap file removal actions by removal
action taps. And also to check the links of files to be removed and block user action to remove the file
representing the links. Fig.2 shows the functioning of Stringent driver. Fig.3 shows the lifetime of Stringent
driver in active and passive mode.
3.7 Strategic Tolerance Driver Design
Strategic driver also need collection of links by Link collector. Unlike Stringent driver it does not
require the removal action tap but need shutdown action tap which activate the driver on system shutdown. On
startup after link collection it need to backup the files representing links to backup for which it call user program
File Backup. File Backup program backup all files represented by links from their respective location in Backup
location. And on system shutdown it need to check the existence of file links and if not present recover it from
backup by invoking File Recovery user program. This allows users to have flexibility to experiment with system
files compared to stringent mechanism. Fig.4 shows the lifetime of Strategic driver in active and passive mode.
Fig.5 shows the function of Strategic driver.
Fig.2 Functioning of Stringent Driver
Towards Reliable Systems with User Action Tolerance and Recovery
www.iosrjournals.org 10 | Page
Fig.3 Lifetime of Stringent Driver
Fig.4 Lifetime of Strategic Driver
Fig.5 Functioning of Strategic Driver
Towards Reliable Systems with User Action Tolerance and Recovery
www.iosrjournals.org 11 | Page
IV. Tolerance Driver Implementation
Drivers where implementation as character drivers in Linux distribution Ubuntu 12.04 with kernel
version 3.5. Link Collector program works as process in user space and gets called on system startup by driver.
Functionality of link collection was delegated to user program since it was file related tasks and takes time. And
since drivers are kernel modules and execute in kernel space, we didn't want the module to do file related
actions in kernel module since it lead to may system crashes. Link Collector communicate with drivers by
means of writing to device file associated with strategic or stringent character driver.
Removal and Shutdown action taps mechanism are implemented by patching system calls. So patch
system calls are called on respective user action. Patch code invoke the driver to do necessary action for
tolerance and recovery.
V. Evaluation
Evaluation of tolerance drivers at three aspects are done namely performance, action-tolerance and
limitation.
1. Performance. Performance overhead imposed by to tolerance drivers is almost nil in passive mode. But is
invoked by action tap for each action tapped. Since processing is done only for files to be protected,
overhead in active mode is also less. Strategic driver block the system shutdown until Type2 files are
recovered and add to overhead on the system.
2. Limitations. Tolerance drivers are to tolerate accidental user actions but not to tolerate malicious intentional
user action to damage the system. Updated Links file get exported to tolerance driver only on next system
startup.
3. Action-tolerance. System was found to be tolerant to user actions related to file removal as long as limited
kernel interface patched by action tap is used for removal.
IV. Conclusion
Tolerance to harmful actions is essential for improving system reliability. We have developed and
designed tolerance drivers which could tolerate accidental user actions which may be harmful. From our
experience we see that tolerance driver could block certain user actions and recovery resources easily. Finally
these tolerance mechanisms require no change to user programs or kernel.
References
Books:
[1] Bill McCarty, SELinux, NSA's Open Source Security Enhanced Linux (O'Reilly Media, 2004)
[2] Michael Kerrisk, The Linux Programming Interface: A Linux and UNIX System Programming Handbook (1st ed, No Starch Press,
2010).
[3] William von Hagen, Ubuntu Linux Bible (1st ed, Wiley Publishing Inc., 2007).
Journal Papers:
[4] Michael M.Swift, Muthukaruppan Annamalai, Brian N. Bershad and Henry M. Levy, Recovering Device Drivers, ACM
Transactions on Computer Systems, 24(2), 2006, 333 – 360.
Proceedings Papers:
[5] Michael M.Swift, Brian N. Bershad and Henry M. Levy, Improving the reliability of c ommodity operating systems, Proc.
ACM symposium on Operating systems principles, 19th, 2003, New York, USA, 207-222.

More Related Content

What's hot

OS file systems
OS file systemsOS file systems
OS file systemsanand hd
 
lecture 1 (Introduction to Operating System.)
lecture 1 (Introduction to Operating System.)lecture 1 (Introduction to Operating System.)
lecture 1 (Introduction to Operating System.)WajeehaBaig
 
MC 7204 OS Question Bank with Answer
MC 7204 OS Question Bank with AnswerMC 7204 OS Question Bank with Answer
MC 7204 OS Question Bank with Answersellappasiva
 
Chapter 02
Chapter 02Chapter 02
Chapter 02m25farid
 
Operating system
Operating systemOperating system
Operating systemmak120
 
Operating System- Services,types.Batch files and DOS history
Operating System- Services,types.Batch files and DOS historyOperating System- Services,types.Batch files and DOS history
Operating System- Services,types.Batch files and DOS historySURBHI SAROHA
 
Software engineering socio-technical systems
Software engineering   socio-technical systemsSoftware engineering   socio-technical systems
Software engineering socio-technical systemsDr. Loganathan R
 
A Runtime Evaluation Methodology and Framework for Autonomic Systems
A Runtime Evaluation Methodology and Framework for Autonomic SystemsA Runtime Evaluation Methodology and Framework for Autonomic Systems
A Runtime Evaluation Methodology and Framework for Autonomic SystemsIDES Editor
 
Session1 intro to_os
Session1 intro to_osSession1 intro to_os
Session1 intro to_osKalyani Patil
 

What's hot (20)

Os
OsOs
Os
 
Operating System
Operating SystemOperating System
Operating System
 
OS file systems
OS file systemsOS file systems
OS file systems
 
Complete Operating System notes
Complete Operating System notesComplete Operating System notes
Complete Operating System notes
 
Os question
Os questionOs question
Os question
 
lecture 1 (Introduction to Operating System.)
lecture 1 (Introduction to Operating System.)lecture 1 (Introduction to Operating System.)
lecture 1 (Introduction to Operating System.)
 
MC 7204 OS Question Bank with Answer
MC 7204 OS Question Bank with AnswerMC 7204 OS Question Bank with Answer
MC 7204 OS Question Bank with Answer
 
Chapter 02
Chapter 02Chapter 02
Chapter 02
 
Chapter 02
Chapter 02Chapter 02
Chapter 02
 
Chapter02
Chapter02Chapter02
Chapter02
 
Operating system
Operating systemOperating system
Operating system
 
Operating System- Services,types.Batch files and DOS history
Operating System- Services,types.Batch files and DOS historyOperating System- Services,types.Batch files and DOS history
Operating System- Services,types.Batch files and DOS history
 
Software engineering socio-technical systems
Software engineering   socio-technical systemsSoftware engineering   socio-technical systems
Software engineering socio-technical systems
 
Ch1
Ch1Ch1
Ch1
 
A Runtime Evaluation Methodology and Framework for Autonomic Systems
A Runtime Evaluation Methodology and Framework for Autonomic SystemsA Runtime Evaluation Methodology and Framework for Autonomic Systems
A Runtime Evaluation Methodology and Framework for Autonomic Systems
 
Introduction of operating system
Introduction of operating systemIntroduction of operating system
Introduction of operating system
 
Operating System
Operating SystemOperating System
Operating System
 
Operating systems1[1]
Operating systems1[1]Operating systems1[1]
Operating systems1[1]
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Session1 intro to_os
Session1 intro to_osSession1 intro to_os
Session1 intro to_os
 

Viewers also liked

Antibiotická rezistencia – súčasný stav a trendy
Antibiotická rezistencia – súčasný stav a trendyAntibiotická rezistencia – súčasný stav a trendy
Antibiotická rezistencia – súčasný stav a trendyVladimir Patras
 
Dimitri biological lights
Dimitri biological lightsDimitri biological lights
Dimitri biological lightsiamdz2
 
The NEW New West Economic Forum: Dr. Nigel Murray, Panel Speaker
The NEW New West Economic Forum: Dr. Nigel Murray, Panel SpeakerThe NEW New West Economic Forum: Dr. Nigel Murray, Panel Speaker
The NEW New West Economic Forum: Dr. Nigel Murray, Panel Speakerinvestnewwest
 
HRwisdom Employee Attraction & Retention Guide
HRwisdom Employee Attraction & Retention GuideHRwisdom Employee Attraction & Retention Guide
HRwisdom Employee Attraction & Retention Guideemployeeretentionplan
 
130729【let53全国研究大会】003.key
130729【let53全国研究大会】003.key130729【let53全国研究大会】003.key
130729【let53全国研究大会】003.keySei Sumi
 
Aman narain , viva la revolution how banking should and will be disrupted and...
Aman narain , viva la revolution how banking should and will be disrupted and...Aman narain , viva la revolution how banking should and will be disrupted and...
Aman narain , viva la revolution how banking should and will be disrupted and...Vincent Fong
 
Evaluation of Uncertain Location
Evaluation of Uncertain Location Evaluation of Uncertain Location
Evaluation of Uncertain Location IOSR Journals
 
Presentazione dogsinthecity
Presentazione dogsinthecityPresentazione dogsinthecity
Presentazione dogsinthecitylucaminetti
 
The Impact Of Positive Thinking On Your Internet Business
The Impact Of Positive Thinking On Your Internet BusinessThe Impact Of Positive Thinking On Your Internet Business
The Impact Of Positive Thinking On Your Internet Businessbelieve52
 
Tracking your emails with mailtracking.com
Tracking your emails with mailtracking.comTracking your emails with mailtracking.com
Tracking your emails with mailtracking.combelieve52
 
Use of Storage Water in a Hydroelectric System
Use of Storage Water in a Hydroelectric SystemUse of Storage Water in a Hydroelectric System
Use of Storage Water in a Hydroelectric SystemIOSR Journals
 
Performance Comparison of K-means Codebook Optimization using different Clust...
Performance Comparison of K-means Codebook Optimization using different Clust...Performance Comparison of K-means Codebook Optimization using different Clust...
Performance Comparison of K-means Codebook Optimization using different Clust...IOSR Journals
 
Design of Uhf Band Microstrip-Fed Antenna for Rfid Applications
Design of Uhf Band Microstrip-Fed Antenna for Rfid ApplicationsDesign of Uhf Band Microstrip-Fed Antenna for Rfid Applications
Design of Uhf Band Microstrip-Fed Antenna for Rfid ApplicationsIOSR Journals
 
Role of Machine Translation and Word Sense Disambiguation in Natural Language...
Role of Machine Translation and Word Sense Disambiguation in Natural Language...Role of Machine Translation and Word Sense Disambiguation in Natural Language...
Role of Machine Translation and Word Sense Disambiguation in Natural Language...IOSR Journals
 
Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...
Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...
Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...IOSR Journals
 

Viewers also liked (20)

Antibiotická rezistencia – súčasný stav a trendy
Antibiotická rezistencia – súčasný stav a trendyAntibiotická rezistencia – súčasný stav a trendy
Antibiotická rezistencia – súčasný stav a trendy
 
Dimitri biological lights
Dimitri biological lightsDimitri biological lights
Dimitri biological lights
 
The NEW New West Economic Forum: Dr. Nigel Murray, Panel Speaker
The NEW New West Economic Forum: Dr. Nigel Murray, Panel SpeakerThe NEW New West Economic Forum: Dr. Nigel Murray, Panel Speaker
The NEW New West Economic Forum: Dr. Nigel Murray, Panel Speaker
 
HRwisdom Employee Attraction & Retention Guide
HRwisdom Employee Attraction & Retention GuideHRwisdom Employee Attraction & Retention Guide
HRwisdom Employee Attraction & Retention Guide
 
130729【let53全国研究大会】003.key
130729【let53全国研究大会】003.key130729【let53全国研究大会】003.key
130729【let53全国研究大会】003.key
 
C0151216
C0151216C0151216
C0151216
 
Aman narain , viva la revolution how banking should and will be disrupted and...
Aman narain , viva la revolution how banking should and will be disrupted and...Aman narain , viva la revolution how banking should and will be disrupted and...
Aman narain , viva la revolution how banking should and will be disrupted and...
 
Evaluation of Uncertain Location
Evaluation of Uncertain Location Evaluation of Uncertain Location
Evaluation of Uncertain Location
 
Presentazione dogsinthecity
Presentazione dogsinthecityPresentazione dogsinthecity
Presentazione dogsinthecity
 
The Impact Of Positive Thinking On Your Internet Business
The Impact Of Positive Thinking On Your Internet BusinessThe Impact Of Positive Thinking On Your Internet Business
The Impact Of Positive Thinking On Your Internet Business
 
Tracking your emails with mailtracking.com
Tracking your emails with mailtracking.comTracking your emails with mailtracking.com
Tracking your emails with mailtracking.com
 
Odyssey Company Presentation
Odyssey Company Presentation   Odyssey Company Presentation
Odyssey Company Presentation
 
Use of Storage Water in a Hydroelectric System
Use of Storage Water in a Hydroelectric SystemUse of Storage Water in a Hydroelectric System
Use of Storage Water in a Hydroelectric System
 
Performance Comparison of K-means Codebook Optimization using different Clust...
Performance Comparison of K-means Codebook Optimization using different Clust...Performance Comparison of K-means Codebook Optimization using different Clust...
Performance Comparison of K-means Codebook Optimization using different Clust...
 
Chapter 1 biostat
Chapter 1 biostatChapter 1 biostat
Chapter 1 biostat
 
Design of Uhf Band Microstrip-Fed Antenna for Rfid Applications
Design of Uhf Band Microstrip-Fed Antenna for Rfid ApplicationsDesign of Uhf Band Microstrip-Fed Antenna for Rfid Applications
Design of Uhf Band Microstrip-Fed Antenna for Rfid Applications
 
A0930105
A0930105A0930105
A0930105
 
Role of Machine Translation and Word Sense Disambiguation in Natural Language...
Role of Machine Translation and Word Sense Disambiguation in Natural Language...Role of Machine Translation and Word Sense Disambiguation in Natural Language...
Role of Machine Translation and Word Sense Disambiguation in Natural Language...
 
Crypt Sequence DNA
Crypt Sequence DNACrypt Sequence DNA
Crypt Sequence DNA
 
Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...
Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...
Using Data-Mining Technique for Census Analysis to Give Geo-Spatial Distribut...
 

Similar to Towards Reliable Systems with User Action Tolerance and Recovery

A Survey On Operating System Challenges And Security Issues Associate To It
A Survey On Operating System Challenges And Security Issues Associate To ItA Survey On Operating System Challenges And Security Issues Associate To It
A Survey On Operating System Challenges And Security Issues Associate To ItMichele Thomas
 
Android Training (android fundamental)
Android Training (android fundamental)Android Training (android fundamental)
Android Training (android fundamental)Khaled Anaqwa
 
Description Of A Network Administrator
Description Of A Network AdministratorDescription Of A Network Administrator
Description Of A Network AdministratorGina Alfaro
 
Computer system software
Computer system softwareComputer system software
Computer system softwareMozaSaid
 
Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...Jennifer Lopez
 
Operating Systems R20 Unit 1.pptx
Operating Systems R20 Unit 1.pptxOperating Systems R20 Unit 1.pptx
Operating Systems R20 Unit 1.pptxPrudhvi668506
 
NE223_chapter 1_Overview of operating systems.ppt
NE223_chapter 1_Overview of operating systems.pptNE223_chapter 1_Overview of operating systems.ppt
NE223_chapter 1_Overview of operating systems.pptMemMem25
 
Chapter 10
Chapter 10Chapter 10
Chapter 10cclay3
 
CHAPTER FOUR buugii 2023.docx
CHAPTER FOUR buugii 2023.docxCHAPTER FOUR buugii 2023.docx
CHAPTER FOUR buugii 2023.docxRUKIAHASSAN4
 
01. english version operating system
01. english version   operating system01. english version   operating system
01. english version operating systemJimmi Sitorus
 
System and its types
System and its typesSystem and its types
System and its typesnidhipandey79
 
Transaction Management
Transaction ManagementTransaction Management
Transaction ManagementA. S. M. Shafi
 
2 opreating system
2 opreating system2 opreating system
2 opreating systemHekmatFaisal
 
operating systems By ZAK
operating systems By ZAKoperating systems By ZAK
operating systems By ZAKTabsheer Hasan
 
ppt of features of operating system.pptx
ppt of features of operating system.pptxppt of features of operating system.pptx
ppt of features of operating system.pptxNehaAnand998175
 

Similar to Towards Reliable Systems with User Action Tolerance and Recovery (20)

A Survey On Operating System Challenges And Security Issues Associate To It
A Survey On Operating System Challenges And Security Issues Associate To ItA Survey On Operating System Challenges And Security Issues Associate To It
A Survey On Operating System Challenges And Security Issues Associate To It
 
Operating System
Operating SystemOperating System
Operating System
 
Android Training (android fundamental)
Android Training (android fundamental)Android Training (android fundamental)
Android Training (android fundamental)
 
Description Of A Network Administrator
Description Of A Network AdministratorDescription Of A Network Administrator
Description Of A Network Administrator
 
Computer system software
Computer system softwareComputer system software
Computer system software
 
Operating System
Operating SystemOperating System
Operating System
 
Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...
 
Operating Systems R20 Unit 1.pptx
Operating Systems R20 Unit 1.pptxOperating Systems R20 Unit 1.pptx
Operating Systems R20 Unit 1.pptx
 
NE223_chapter 1_Overview of operating systems.ppt
NE223_chapter 1_Overview of operating systems.pptNE223_chapter 1_Overview of operating systems.ppt
NE223_chapter 1_Overview of operating systems.ppt
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
CHAPTER FOUR buugii 2023.docx
CHAPTER FOUR buugii 2023.docxCHAPTER FOUR buugii 2023.docx
CHAPTER FOUR buugii 2023.docx
 
01. english version operating system
01. english version   operating system01. english version   operating system
01. english version operating system
 
Operating system notes pdf
Operating system notes pdfOperating system notes pdf
Operating system notes pdf
 
System and its types
System and its typesSystem and its types
System and its types
 
Unit 1
Unit 1Unit 1
Unit 1
 
Transaction Management
Transaction ManagementTransaction Management
Transaction Management
 
operating system
 operating system  operating system
operating system
 
2 opreating system
2 opreating system2 opreating system
2 opreating system
 
operating systems By ZAK
operating systems By ZAKoperating systems By ZAK
operating systems By ZAK
 
ppt of features of operating system.pptx
ppt of features of operating system.pptxppt of features of operating system.pptx
ppt of features of operating system.pptx
 

More from IOSR Journals (20)

A011140104
A011140104A011140104
A011140104
 
M0111397100
M0111397100M0111397100
M0111397100
 
L011138596
L011138596L011138596
L011138596
 
K011138084
K011138084K011138084
K011138084
 
J011137479
J011137479J011137479
J011137479
 
I011136673
I011136673I011136673
I011136673
 
G011134454
G011134454G011134454
G011134454
 
H011135565
H011135565H011135565
H011135565
 
F011134043
F011134043F011134043
F011134043
 
E011133639
E011133639E011133639
E011133639
 
D011132635
D011132635D011132635
D011132635
 
C011131925
C011131925C011131925
C011131925
 
B011130918
B011130918B011130918
B011130918
 
A011130108
A011130108A011130108
A011130108
 
I011125160
I011125160I011125160
I011125160
 
H011124050
H011124050H011124050
H011124050
 
G011123539
G011123539G011123539
G011123539
 
F011123134
F011123134F011123134
F011123134
 
E011122530
E011122530E011122530
E011122530
 
D011121524
D011121524D011121524
D011121524
 

Recently uploaded

Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 

Recently uploaded (20)

Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 

Towards Reliable Systems with User Action Tolerance and Recovery

  • 1. IOSR Journal of Computer Engineering (IOSR-JCE) e-ISSN: 2278-0661, p- ISSN: 2278-8727Volume 13, Issue 1 (Jul. - Aug. 2013), PP 07-11 www.iosrjournals.org www.iosrjournals.org 7 | Page Towards Reliable Systems with User Action Tolerance and Recovery Vivek Thachil1 , Dileesh E D2 1 (Computer Science and Engineering, Govt. Engineering College/ University of Calicut, India) 2 (Computer Science and Engineering, Govt. Engineering College/ University of Calicut, India) Abstract : This paper presents mechanisms that enables operating system to be tolerant to certain user actions and recovery of some resources such as files. Certain user actions can make the system completely unavailing or unreliable. To remedy this situation, we introduce series of mechanisms under the name Tolerance Driver. Tolerance driver can transparently protect system from user actions, recover the system configurations and resources. There are two drivers for tolerance and recovery such as strategic and stringent. Stringent driver uses strict methods of tolerance and Strategic driver uses strategic methods for tolerance and recovery. We have created tolerance drivers on Linux distribution Ubuntu 12.04 as character drivers. We expect the tolerance drivers can improve the reliability of the system. Lastly these mechanism was easily added as kernel module to kernel as part of operating system. Keywords - Action Tap, Stringent driver, Strategic driver, Tolerance driver, User Action Tolerance I. Introduction Reliability is one significant factor every operating system should try to improve. System failures due to user actions such as accidental actions are common in every domain. Failures bring user frustration and loss of various forms. Sometimes failures can result in huge business loss. Most of the actions are related to loss of data by accidental deletion of files. User would go about deleting some system file or important work file and lead to unstable system or loss of data. Hence mechanisms to tolerate user actions are important to protect system and save user business. Most of the accidental file deletions are stopped by user privilege levels. Some files are kept at higher privilege (accessible only to administrator) and cannot be removed by non privileged users are so protected from normal users. But problem arises when normal users are given higher privilege for performing certain privileged actions and end up accidentally deleting the important files. This paper presents a new mechanism called tolerance driver which can improve system reliability by protecting a list of files the user want to protect. The driver makes the system tolerant to harmful user actions and helps in recovering resources which are essential for system. In general tolerance driver track user actions and on detecting actions that are harmful it take necessary steps to tolerate that action. Sometimes the driver would let the user to continue the harmful action and take measures to recover the system before system goes completely unrecoverable from damage created by action. We make following assumptions regarding the the user environment: 1. Specific user actions such as file deletion goes through same interface or procedures leading to deletion. 2. Intention of user action is not malicious, but are accidental and sometimes harmful. We implemented the tolerance driver as two separate drivers with different methods for tolerance on Linux based operating systems. Our results shows that tolerance driver could : 1. Tolerate user actions such as deletion of important files. 2. Recover important files which has gone undergone actual deletion from backup before system goes partially or completely non-operational. 3. Can be easily integrated into the operating system. 4. Requires minimum overhead. II. Related Work SE Linux (Security Enhanced Linux)[1] is feature of Linux that provides mechanisms to support access control polices. It has been integrated into Linux mainline since version 2.6. It can be used to control activities privilege of user, process and daemon. But the mechanism is not made to tolerate privileged user, process or daemon actions. Shadow driver[4] is a mechanism used to tolerate device driver failures affecting operating system and applications dependent on it. It makes this possible by tracking driver actions in passive mode and handling functionality of driver being shadowed in active mode.
  • 2. Towards Reliable Systems with User Action Tolerance and Recovery www.iosrjournals.org 8 | Page III. Kernel Module and Tolerance Driver Design Kernel modules are units that are used to improve or add the functionality of kernel. One such kernel module is driver. Device drivers are used to communicate with devices attached to the system. But drivers are also used to perform some other actions other than communicating with device which require privilege. Drivers execute in highest privilege level and can do many privileged actions. User process communicate with driver via device file and make the driver do the required advanced functionality. 3.1 User Actions and Kernel Calls User actions including creating, opening, reading, writing and writing are converted to kernel system calls which will call kernels and kernel will do the required functionality. System calls are interface to the kernel used by programs to do any operations. Tolerance driver function by creating another interface between user actions and kernel system call interface. 3.2 Tolerance Driver A tolerance driver act as kernel module to provide tolerance for particular user action. In some system most of the system resources are in the form of files. Hence it is essential to protect these files from removal or permanent removal. The user action that is tolerated by tolerance driver is removal of system resource in the form of files. All the user actions invoke one of the kernel interfaces. Tolerance driver functionality are split into two drivers such as Stringent and Strategic driver. Stringent Tolerance Driver function by acting as interface between User action and Kernel Interface of system call. While Strategic tolerance driver functionality has nothing to do with intercepting user action and kernel interface. But it function to tolerate user action by means of backup and recovery between startup and shutdown of the system. 3.3 Active and Passive Mode Driver function in both active and passive mode. Both strategic and stringent driver are active on the system startup. On startup they call a program called Link Collector to collect links of the files that user wants to protect. The links are collected from Links file associated with link collector. Link collector communicate with driver by means of device file and export the information regarding file links. When user actions are related to file removal or deletion, stringent tolerance driver gets into active mode. It collects information regarding the the file being removed such as its location, name and take necessary action. It matches these information with the data collected from Link Collector. If match found it blocks the user action to remove the file. Strategic driver is active only on system startup and shutdown. Strategic driver is passive on actions related to file removal. But on system startup it gets active and creates backup of links representing the files that user require tolerance. On shutdown the driver check the existence of files represented by links collects by Link Collector. If match found it recovers the files from backup. Backup is location hidden from user by kernel mechanisms. Backup will develop directory structure depending on which files are to be protected similar to system file directory structure. This helps to backup to contain files of same name. 3.4 File Classes Tolerance driver bring protection to system files including important user files. Files protected by drivers are classified into two such as Type1 and Type2. Type1 files are essential for system function throughout its working. Type2 files are essential for system to start working. Stringent driver tolerant user actions to remove Type1 file and Strategic driver tolerate that with Type2 files. Type 2 files are allowed to be removed during system working since they are recovered by the driver on system shutdown. Since the system could start normally with Type2 files, they are backed up to Backup on startup. 3.5 Action Taps Stringent driver function by inserting methods called Action Taps between User Action program and Kernel Interface. It get activated on respective user action it represents such as file read, write or removal and stays in passive mode otherwise. Removal Action Tap is invoked on file removal. Removal action tap invoke the Stringent driver on file removal action. Stringent driver check the file to be removed with the Link Collector information and take action. Fig.1 show the position of the driver and Removal action tap.
  • 3. Towards Reliable Systems with User Action Tolerance and Recovery www.iosrjournals.org 9 | Page Fig.1 Position of Tolerance Driver and Action Tap 3.6 Stringent Tolerance Driver Design Stringent driver need to collect links (representing files) on startup and so need to call user program Link Collector. Link collector export the links to driver. Driver need to tap file removal actions by removal action taps. And also to check the links of files to be removed and block user action to remove the file representing the links. Fig.2 shows the functioning of Stringent driver. Fig.3 shows the lifetime of Stringent driver in active and passive mode. 3.7 Strategic Tolerance Driver Design Strategic driver also need collection of links by Link collector. Unlike Stringent driver it does not require the removal action tap but need shutdown action tap which activate the driver on system shutdown. On startup after link collection it need to backup the files representing links to backup for which it call user program File Backup. File Backup program backup all files represented by links from their respective location in Backup location. And on system shutdown it need to check the existence of file links and if not present recover it from backup by invoking File Recovery user program. This allows users to have flexibility to experiment with system files compared to stringent mechanism. Fig.4 shows the lifetime of Strategic driver in active and passive mode. Fig.5 shows the function of Strategic driver. Fig.2 Functioning of Stringent Driver
  • 4. Towards Reliable Systems with User Action Tolerance and Recovery www.iosrjournals.org 10 | Page Fig.3 Lifetime of Stringent Driver Fig.4 Lifetime of Strategic Driver Fig.5 Functioning of Strategic Driver
  • 5. Towards Reliable Systems with User Action Tolerance and Recovery www.iosrjournals.org 11 | Page IV. Tolerance Driver Implementation Drivers where implementation as character drivers in Linux distribution Ubuntu 12.04 with kernel version 3.5. Link Collector program works as process in user space and gets called on system startup by driver. Functionality of link collection was delegated to user program since it was file related tasks and takes time. And since drivers are kernel modules and execute in kernel space, we didn't want the module to do file related actions in kernel module since it lead to may system crashes. Link Collector communicate with drivers by means of writing to device file associated with strategic or stringent character driver. Removal and Shutdown action taps mechanism are implemented by patching system calls. So patch system calls are called on respective user action. Patch code invoke the driver to do necessary action for tolerance and recovery. V. Evaluation Evaluation of tolerance drivers at three aspects are done namely performance, action-tolerance and limitation. 1. Performance. Performance overhead imposed by to tolerance drivers is almost nil in passive mode. But is invoked by action tap for each action tapped. Since processing is done only for files to be protected, overhead in active mode is also less. Strategic driver block the system shutdown until Type2 files are recovered and add to overhead on the system. 2. Limitations. Tolerance drivers are to tolerate accidental user actions but not to tolerate malicious intentional user action to damage the system. Updated Links file get exported to tolerance driver only on next system startup. 3. Action-tolerance. System was found to be tolerant to user actions related to file removal as long as limited kernel interface patched by action tap is used for removal. IV. Conclusion Tolerance to harmful actions is essential for improving system reliability. We have developed and designed tolerance drivers which could tolerate accidental user actions which may be harmful. From our experience we see that tolerance driver could block certain user actions and recovery resources easily. Finally these tolerance mechanisms require no change to user programs or kernel. References Books: [1] Bill McCarty, SELinux, NSA's Open Source Security Enhanced Linux (O'Reilly Media, 2004) [2] Michael Kerrisk, The Linux Programming Interface: A Linux and UNIX System Programming Handbook (1st ed, No Starch Press, 2010). [3] William von Hagen, Ubuntu Linux Bible (1st ed, Wiley Publishing Inc., 2007). Journal Papers: [4] Michael M.Swift, Muthukaruppan Annamalai, Brian N. Bershad and Henry M. Levy, Recovering Device Drivers, ACM Transactions on Computer Systems, 24(2), 2006, 333 – 360. Proceedings Papers: [5] Michael M.Swift, Brian N. Bershad and Henry M. Levy, Improving the reliability of c ommodity operating systems, Proc. ACM symposium on Operating systems principles, 19th, 2003, New York, USA, 207-222.