Unix操作系统设备驱动程序浅谈

e良师益友网】在Unix操作系统内部,I/O设备的存取通过一组固定的入口点来进行,这组入口点是由每个设备的设备驱动程序提供的。一般来说,字符型设备驱动程序能够提供如下几个入口点:

1、open入口点。打开设备准备I/O操作。对字符特别设备文件进行打开操作,都会调用设备的open入口点。open子程序必须对将要进行的I/O操作做 好必要的准备工作,如清除缓冲区等。如果设备是独占的,即同一时刻只能有一个程序访问此设备,则open子程序必须设置一些标志以表示设备处于忙状态。

2、close入口点。关闭一个设备。当最后一次使用设备终结后,调用close子程序。独占设备必须标记设备可再次使用。

3、read入口点。从设备上读数据。对于有缓冲区的I/O操作,一般是从缓冲区里读数据。对字符特别设备文件进行读操作将调用read子程序。

4、write入口点。往设备上写数据。对于有缓冲区的I/O操作,一般是把数据写入缓冲区里。对字符特别设备文件进行写操作将调用write子程序。

5、ioctl入口点。执行读、写之外的操作。

6、select入口点。检查设备,看数据是否可读或设备是否可用于写数据。select系统调用在检查与设备特别文件相关的文件描述符时使用select入 口点。如果设备驱动程序没有提供上述入口点中的某一个,系统会用缺省的子程序来代替。对于不同的Unix操作系统,也还有一些其它的入口点。

关于Unix操作系统设备驱动程序的基本结构的知识,我们今天就讲解到这里,以后希望有更多的机会来和大家来探讨。还有更多系统运维教程相关知识登录e良师益友网。

时间: 2024-08-10 23:25:09

Unix操作系统设备驱动程序浅谈的相关文章

浅谈 unix, linux, ios, android 区别和联系

浅谈 unix, linux, ios, android 区别和联系 网上的答案并不是很好,便从网上整理的相对专业的问答,本人很菜,大佬勿喷 UNIX 和 Linux ??UNIX 操作系统(尤尼斯), 是一个强大的多用户.多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由 KenThompson.Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发.目前它的商标权由国际开放标准组织所拥有,只有符合单一UNIX 规范的

浅谈 Unix I/O 模型

原文出处:http://miaoo.in/talk-about-unix-io-model.html 在实际应用中,数据操作通常分为输入和输出,那么以输入为例,在操作系统中,一个数据的输入通常分为以下两个过程: a. 等待数据准备好.b. 将准备好的数据从内核拷贝到用户空间. 下面我们将会分别讨论 I/O 模型中的两个大类,即 同步 I/O 与 异步 I/O. 1. 同步 I/O 同步与异步 I/O 的最大不同,就是在在进行数据复制时(即过程 b ),所有的同步 I/O 模型均会发生阻塞.进一步

浅谈操作系统与内存

浅谈操作系统与内存 对于计算机的发明,相信大家都有耳闻那个占地面积按平米算的第一台计算机.在那个时候,CPU的资源是极其珍贵的,随着这些年突飞猛进的发展,一片指甲盖大小的民用级CPU一秒钟能执行的指令数可以达到上亿级别. 随着计算能力的增长,芯片外围的硬件和配套的软件也是一路高歌,发生了天翻地覆的变化,今天我们简单回顾历史,来看一看操作系统和内存机制的演变,不仅要了解它们是怎样,同时也看看它们为什么会是这样. CPU的运行 一说到CPU(Center processing unit),大家都觉得

浅谈新一代Android操作系统Android L

今天早一些的时候,Google发布了新一代Android操作系统Android L.让我非常意外的是命名规则的变化,之前外界纷纷猜测会叫Android5.0,同时会给一个甜品的名字命名.因为Android操作系统发布了这么多的正式版本,一直是用甜品来命名的,现在直接用了一个L,和以往风格大大不同,让人不太理解.不过好在L非常好记,也非常容易上口. 看了一下官方宣称的Android L的新特性,主要有如下几点: A New UI Design Create a consistent experie

浅谈操作系统之进程管理

详解本文前,先来说说什么是操作系统吧,要不,大家可能都不知道自己在看些什么.下图,可以非常形象的表示操作系统及它的相关内容.本文主要详细介绍一下操作系统的进程管理功能. 上图可以看出,操作系统是位于计算机硬件和应用软件之间的,有效组织和管理系统中各种软.硬件资源.它通过资源管理,提高了计算机系统的效率:也改善了人机界面,不需要我们直接面对简单且复杂的0和1了,向用户提供了友好的工作环境.下面来细说说进程管理吧. 首先,我们需要了解,什么是进程,与其相关的,什么又是线程?进程,可以认为它就是程序的

浅谈Linux与unix系统的来历

在今天的UNIX是商业化的,UNIX系统大多是与硬件配套的,也就是说,大多数UNIX系统如AIX.HP-UX等是无法安装在 x86 服务器和个人计算机上的,UNIX系统是一个分时系统,而UNIX是至关重要的,在它最早被开发后的时间里,FreeBSD,Linux等操作系统都或多或少有来自UNIX 的启迪.UNIX 的出现最早是由大佬Ken Thompson在1970年用汇编语言来写出的,初代Unix公开后,引起学术界的广泛兴趣并对其源码索取,各大学和公司开始通过UNIX 源码对Unix进行了各种各

浅谈中间件

浅谈中间件 1. 由来 因为工作的原因,我从金蝶集团调入金蝶中间件公司工作以来,经常遇到一个问题就是中间件公司是个什么公司,中间件是什么?,金蝶不是做ERP的吗?怎么也做中间件?.这是我以前在金蝶集团时无法想象的问题.因为金蝶,金蝶ERP的品牌以及大众对ERP的了解,是无需我解析什么是ERP,什么是财务软件一类的问题的. 毕竟,中间件在实际的应用过程中,是对应用软件起到支撑作用,最终用户并不直接使用中间件,中间件不是大众消费类软件产品.因此,除非是一个行业专业人士,一般不大可能与中间件打交道,不

浅谈图片服务器的架构演进

浅谈图片服务器的架构演进 现在几乎任何一个网站.Web App以及移动APP等应用都需要有图片展示的功能,对于图片功能从下至上都是很重要的.必须要具有前瞻性的规划好图片服务器,图片的上传和下载速度至关重要,当然这并不是说一上来就搞很NB的架构,至少具备一定扩展性和稳定性.虽然各种架构设计都有,在这里我只是谈谈我的一些个人想法. 对于图片服务器来说IO无疑是消耗资源最为严重的,对于web应用来说需要将图片服务器做一定的分离,否则很可能因为图片服务器的IO负载导致应用 崩溃.因此尤其对于大型网站和应

浅谈导致电脑不能启动的系统文件

笔者前不久碰到了一个问题,就是同学的电脑开不了机了.具体情况是按下开机键后电脑没啥反应,我曾今也遇到过这个问题,解决方案也好像很少. 1.一般情况下,电脑开机会自检,如果可以,它会提示系统启动不了,这时可以选择安全模式启动让电脑进行修复,或者恢复到上一次正常时的情况.2.如果故障依旧,那就建议重装操作系统. 笔者是一个喜欢研究的人.于是乎,就上网查询了一些关于电脑开机启动了哪些文件啊,读取了啥文件等等,以便对电脑有更深了解,将来保不准会用到的.得到下面一些基本资料:电脑启动会加载很多重要文件(