School of Computing

Process-oriented device driver development

F.R.M. Barnes and C.G. Ritson

Concurrency and Computation: Practice and Experience, 22(8):182-196, June 2010 [doi].


Operating systems (OSs) are the core software component of many modern computer systems, ranging from small specialized embedded systems through to large distributed OSs. The demands placed upon these systems are increasingly complex, in particular, the need to handle concurrency in order to exploit increasingly parallel (multi-core) hardware, to support increasing numbers of user and system processes and to take advantage of increasingly distributed and decentralized systems. The languages and designs that existing OSs employ provide little support for concurrency, leading to unmanageable programming complexities and ultimately errors in the resulting systems, which are hard to detect, hard to remove and hard to prove correct. This article presents the process-oriented design of a universal serial bus device driver infrastructure for the Raw Metal occam eXperiment (RMoX) OS and its implementation in the occam-pi multiprocessing language. We show how concurrency can be used for the benefit of such systems, simplifying design and implementation, providing freedom from race-hazard and aliasing errors and the potential for guarantees of operating system scalability, reliability and efficiency.

Download publication 249 kbytes (PDF)

Bibtex Record

author = {F.R.M. Barnes and C.G. Ritson},
title = {Process-Oriented Device Driver Development},
month = {June},
year = {2010},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {10.1002/cpe.1428},
url = {},
    publication_type = {article},
    submission_id = {11187_1289137451},
    ISSN = {1532-0634},
    journal = {Concurrency and Computation: Practice and Experience},
    volume = {22},
    number = {8},
    publisher = {John Wiley & Sons, Ltd.},

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014