首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 191 毫秒
1.
驱动程序的不稳定是造成操作系统内核崩溃的主要原因,该文采用类型安全的Java语言开发Linux设备驱动程序以提高系统的稳定性,并分析驱动模型的结构、内核态Java虚拟机(JVM)的设计以及Java驱动程序的编写。USB网卡的测试验证了Java驱动在提高系统稳定性上的优势。  相似文献   

2.
基于FPGA嵌入式系统,在PowerPC架构的Linux2.6操作系统环境下,对通用输入输出接口(GPIO)控制器的驱动,采用平台设备机制进行中断控制管理.通过该管理机制,将GPIO设备本身的资源注册进内核,由内核统一管理.在参照Linux2.6内核源码有关平台设备驱动的基础上,编写和测试了GPIO设备的驱动程序.该驱...  相似文献   

3.
郑豪  董小社  王恩东  陈宝可  朱正东 《软件学报》2014,25(10):2235-2250
利用虚拟化技术来整合资源已成为高性能服务器提高资源利用率的重要手段,虚拟化技术的可靠性对于高性能服务器所提供服务的质量至关重要.然而,驱动故障严重影响了虚拟机中操作系统的可靠性,也同样影响到整个服务器的可靠性.为此,提出一种在虚拟机内部通过隔离故障驱动程序来提高虚拟机可靠性的架构,该架构通过监视驱动程序所使用的内存信息来建立驱动可写权限的授权表,并在虚拟机监视器中设置虚拟机内核空间对应影子页表的写保护来捕获虚拟机的写操作,进而结合授权表判断被隔离驱动程序写操作的正确性.目前,该架构能够在无需修改驱动程序的情况下,在虚拟机内部实现对驱动程序的隔离.实验结果表明:该架构可以隔离84.63%的注入故障造成的系统崩溃失效,并且对于驱动性能的影响小于20%,提高了虚拟化环境的可靠性.  相似文献   

4.
为了减少驱动程序中存在的缺陷对系统运行造成的严重影响,研究并实现了一种在操作系统内核的基本部分与设备驱动程序之间增加“驱动隔离层”的内核驱动隔离机制,同时提供驱动程序发生故障后的检测及恢复机制.这种将驱动程序隔离运行的机制明显区别于传统的操作系统,能够对系统内核区域进行严格的访问控制保护,避免了由于驱动程序存在缺陷所导致的系统失效.实验结果表明,该内核驱动隔离系统有效地提高了系统的可用性,同时对用户和应用程序透明,具有良好的兼容性.  相似文献   

5.
串口驱动程序由于涉及硬件寄存器较少,所以是外围器件驱动程序编写中相对较为容易的一类,但其与内核操作系统的联系上和其它驱动程序都具有相同的层次结构.论文着重阐述了vxWorks操作系统下串口驱动程序与其上层虚拟驱动层的交互,并详细解释了虚拟驱动层和串口驱动程序的功能以及初始化过程.论文最后结合代码示例给出了串口驱动程序的架构.  相似文献   

6.
余劲  黄皓  诸渝  许封元 《计算机学报》2020,43(4):724-739
越来越多和宏内核操作系统中使用的设备驱动程序相关的漏洞被发现,这些漏洞严重危害操作系统的安全性和可靠性.现有的解决方案无法既能为操作系统内核提供强有力的保护又能达到与原生系统相近的性能.在本文中,我们提出了一个称为DBox的驱动程序隔离框架解决方案同时考虑系统的安全性和性能.DBox为设备驱动程序提供了一个基于虚拟化的安全容器,使得驱动程序和主机系统有效隔离,并通过通用I/O交互接口实现对多种设备驱动的支持.我们通过对EPT页表和IOMMU地址翻译表的修改,创建了一块基于连续物理内存的共享内存,实现了硬件设备、驱动程序和主机系统内核之间的高性能通信基础.我们通过多核并行化、高效消息传递、零拷贝和批量数据传输等机制深度优化了I/O性能,在大多数情况下DBox中的驱动程序都可以达到与原始内核相同的性能.在DBox中添加新驱动程序支持无需修改驱动程序代码,使得DBox方案在现实环境中易于采用.我们在DBox中实现了四个常见驱动程序类别(NIC,块设备,UART和输入设备),经过实验表明,TCP/UDP吞吐量、往返时延、块设备吞吐量、串口吞吐量、串口往返时延及键盘响应时间的性能下降均在5%以下.  相似文献   

7.
VxBus设备驱动架构是VxWorks操作系统中引入的最新概念,风河公司在VxWorks 6.2中加入这个架构以来,不断完善,到目前的VxWorks 6.9,设备驱动程序的开发基本上都采用VxBus架构。VxBus驱动程序架构是VxWorks操作系统未来驱动程序发展的方向,也是设计VxWorks操作系统中设备驱动的必经之路。本文分析VxBus设备驱动架构的优点,VxBus组成结构以及基于VxBus架构的设备驱动开发流程。  相似文献   

8.
来稿选摘     
设备驱动程序的扩充设计方法设备驱动程序用于控制外部设备的输入、输出操作。在以往的程序中,这部分程序作为系统内核的一部分而被严加保密,一般用户难以分析其运行机理,更无法对其进行功能扩充。而Windows95中,对于无法驱动的硬件设备,允许用户在CONF...  相似文献   

9.
基于Linux的FPGA数据通信接口驱动设计与实现   总被引:2,自引:0,他引:2  
针对现场可编程门阵列(FPGA)在嵌入式系统中的应用需求,详细讨论了在嵌入式Linux2.6操作系统环境下,FPGA设备驱动程序的实现方法,通过内存映射机制实现了对FPGA设备的操作,通过阻塞操作提高了系统效率.在参照Linux2.6.15内核源代码中有关数据结构和函数原形的基础上,编写和测试了FPGA设备的驱动程序.该FPGA接口驱动经过长时间的应用和测试,在整个系统中运行稳定.  相似文献   

10.
WDF是微软推出的下一代驱动程序开发模型,它所提供的KMDF框架为内核模式驱动开发提供了一个面向对象、事件驱动的开发框架,它隔离了设备驱动程序与操作系统内核,降低了驱动程序对内核的影响。滤器驱动程序是一类中间驱动程序。根据其在驱动程序堆栈中所处位置的不同,它可以分为上层过滤器驱动程序和下层过滤器驱动程序两种。过滤器驱动程序可以监视、拦截和修改IRP流,在不影响已有驱动程序功能的前提下增加一些附加功能。本文深入研究了WDF驱动模型和过滤器驱动技术,设计和实现了一个针对我司自主研发的USBCAN设备"BULKDevice"的数据监控系统。并通过一个简单的实例介绍了基本编程技巧。  相似文献   

11.
传统的linux系统为了获得更好的性能,将设备驱动运行在内核空间,不可避免的降低了系统的可靠性和稳定性.基于常用的USB设备提出了一种全新的驱动架构,它将驱动以进程的形式运行在用户空间,并且支持热插拔,驱动管理等特性,实验结果表明这种架构性能良好,能够满足实际应用需求.  相似文献   

12.
Zhu  Xiao-rui  Liang  Chen  Yin  Zhen-guo  Shao  Zhong  Liu  Meng-qi  Chen  Hao 《浙江大学学报:C卷英文版》2019,20(3):353-362

A new hierarchical software architecture is proposed to improve the safety and reliability of a safety-critical drone system from the perspective of its source code. The proposed architecture uses formal verification methods to ensure that the implementation of each module satisfies its expected design specification, so that it prevents a drone from crashing due to unexpected software failures. This study builds on top of a formally verified operating system kernel, certified kit operating system (CertiKOS). Since device drivers are considered the most important parts affecting the safety of the drone system, we focus mainly on verifying bus drivers such as the serial peripheral interface and the inter-integrated circuit drivers in a drone system using a rigorous formal verification method. Experiments have been carried out to demonstrate the improvement in reliability in case of device anomalies.

  相似文献   

13.
An operating system (OS) kernel forms the lowest level of any system software stack. The correctness of the OS kernel is the basis for the correctness of the entire system. Recent efforts have demonstrated the feasibility of building formally verified general-purpose kernels, but it is unclear how to extend their work to verify the functional correctness of device drivers, due to the non-local effects of interrupts. In this paper, we present a novel compositional framework for building certified interruptible OS kernels with device drivers. We provide a general device model that can be instantiated with various hardware devices, and a realistic formal model of interrupts, which can be used to reason about interruptible code. We have realized this framework in the Coq proof assistant. To demonstrate the effectiveness of our new approach, we have successfully extended an existing verified non-interruptible kernel with our framework and turned it into an interruptible kernel with verified device drivers. To the best of our knowledge, this is the first verified interruptible operating system with device drivers.  相似文献   

14.
论文首先从内核性能和安全性的角度分析驱动程序对微内核与单体内核的影响;然后讨论硬件抽象层对驱动抽象能力的影响以及与移植性及内核大小的关系;分析传统UNIX系列与Windows NT操作系统内核结构以及驱动模型优缺点;最后介绍一个构件化驱动模型的特点。该模型基于构件装配运行平台技术,运行在和欣2.0操作系统平台上。驱动模型底层是一个合适的硬件抽象层,方便移植,用户态程序可以灵活地调用驱动程序。  相似文献   

15.
设备驱动是影响操作系统适用性的重要因素。考虑到完全重新开发设备驱动代价过大,重用已有操作系统中的设备驱动便成为了提高操作系统适用性的首选方法。设备驱动的重用过程本质上是在目标环境中建立设备驱动的运行环境的过程,重用一个设备驱动并不需要实现所有内核服务。代码依赖分析可以分析驱动代码对内核服务的依赖关系,因此可以使用代码依赖分析技术自动构建设备驱动运行环境。通过在嵌入式操作系统ucore OS中重用e1000网卡驱动来证明方法的可行性。  相似文献   

16.
Linux is an open‐source operating system, which has increased in its popularity and size since its birth. Various studies have been conducted in literature on the evolution of the Linux kernel, which have shown that there are considerable maintenance problems arising out of the coupling issues in the Linux kernel and this may hamper the evolution of the kernel in future. We propose an object‐oriented (OO) wrapper‐based approach to Linux kernel to provide OO abstractions to external modules. As the major growth of the size of the Linux kernel is in device drivers, our approach provides substantial benefits in terms of developing the device drivers in C++, although the kernel is in C. Providing reusability and extensibility features to device drivers improves the maintainability of the kernel. The OO wrappers provide several benefits to module developers in terms of understandability, development ease, support for OO modules, etc. The design and implementation of C++ wrappers for Linux kernel and the performance of a device driver re‐engineered in C++ are presented in this paper. Copyright © 2008 John Wiley & Sons, Ltd.  相似文献   

17.
嵌入式Linux设备驱动程序开发   总被引:11,自引:6,他引:11  
阐述在嵌入式Linux环境下设备驱动程序的开发,详细探讨了嵌入式Linux设备驱动程序的通用模块框架和具体开发流程,说明了驱动程序与内核的关系,归纳嵌入式Linux设备驱动程序的共性.解析Linux设备驱动程序模块的概念,进一步分析了驱动模块的初始化和卸载这两个关键函数.通过实例论述如何设计和编写模块化的嵌入式Linux设备驱动程序,以及解释驱动程序的关键代码.最后归纳了开发嵌入式Linux设备驱动程序的核心思想.  相似文献   

18.
操作系统设备驱动可靠性研究综述   总被引:1,自引:0,他引:1  
目前,对设备驱动可靠性的研究着重于设备驱动与操作系统内核的有效分离,设备驱动框架按照驱动被隔离所处位置大致可分为内核态、用户态和虚拟机三种。本文按照该分类方法,全面系统地阐述了操作系统领域对设备驱动可靠性提高方面的研究现状,讨论和分析了各种设备驱动框架所用隔离技术和方法的优缺点,并阐明了进一步的研究方向。  相似文献   

19.
秦莹  戴华东  颜跃进 《计算机科学》2011,38(4):182-184,220
设备驱动程序是操作系统内核中代码量最大、缺陷最多的组件。单一内核操作系统中驱动程序处于内核态执行,驱动程序缺陷引发的错误往往直接导致内核崩溃,极大地降低系统可用性。分析了单一内核驱动程序存在的缺陷并将其按照位置分类,介绍了驱动程序缺陷解决方法。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号