Process-oriented device driver development

Process-oriented device driver development
复制标题

面向过程的设备驱动程序开发

DOI:
10.1002/cpe.1428
复制
发表时间:
2010
期刊:
Practice and Experience
影响因子:
--
通讯作者:
Barnes F
Barnes F
中科院分区:
--
文献类型:
--
作者:
Barnes F

文献摘要

相似文献

操作系统(OS)是许多现代计算机系统的核心软件组件,从小型专用嵌入式系统到大型分布式OS。对这些系统的要求越来越复杂,特别是需要处理并发性,以利用越来越多的并行(多核)硬件,支持越来越多的用户和系统进程,并利用越来越多的分布式和分散式系统。现有操作系统采用的语言和设计几乎不支持并发性,导致无法管理的编程复杂性,最终导致系统中的错误,这些错误难以检测,难以删除,难以证明正确。本文介绍了面向过程的通用串行总线设备驱动程序基础设施的原始金属occam实验(RMoX)操作系统的设计及其在occam-pi多处理语言中的实现。我们展示了如何使用并发性来为这些系统带来好处,简化设计和实现,提供免于竞争风险和别名错误的自由,以及保证操作系统可扩展性,可靠性和效率的潜力。版权所有© 2007 F.R.M.巴恩斯和C.G. Ritson [在首次在线发布后进行了更正]
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. Copyright © 2007 F.R.M. Barnes & C.G. Ritson. [Correction made here after initial online publication]