- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(华清远见10年特献)《linux设备驱动开发详解》第14章(华清远见10年特献)《linux设备驱动开发详解》第14章
《LINUX 设备驱动开发详解》
作者:华清远见
第 14章 Linux终端设备驱动
本章简介
在 Linux系统中,终端设备非常重要,没有终端设备,系统将无法向用户反馈
信息,Linux系统中包含控制台、串口和伪终端 3类终端设备。
14.1节阐述了终端设备的概念及分类,14.2节给出了 Linux终端设备驱动的框
架结构,重点讲解 tty_driver结构体及其成员。
14.3~14.5 节在 14.2 节的基础上,分别讲解 Linux 终端设备驱动的模块加载/
卸载函数和 open()、close()函数,数据读写流程及 tty设备线路设置的编程方法。
在 Linux 系统中,串口驱动完全遵循 tty 驱动的框架结构,但是进行了底层操
作的再次封装,14.6 节讲解了 Linux 系统针对串口 tty 驱动的这一封装,14.7 节则
具体给出了串口 tty驱动的实现方法。
14.8节基于 14.6节和 14.7节的讲解给出了串口 tty驱动的设计实例,即S3C2410
集成 UART的驱动。
专业始于专注 卓识源于远见
‐ 2 ‐
终端设备
在 Linux系统中,终端是一种字符型设备,它有多种类型,通常使用 tty来简称各种类型的终端设备。
tty是 Teletype的缩写,Teletype是最早出现的一种终端设备,很像电传打字机,是由 Teletype公司生产的。
Linux系统中包含如下几类终端设备。
1.串行端口终端(/dev/ttySn)
串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口
都看作是一个字符设备。这些串行端口所对应的设备名称是/dev/ttyS0(或/dev/tts/0)、/dev/ttyS1(或/dev/tts/1)
等,设备号分别是(4,0)、(4,1)等。
在命令行上把标准输出重定向到端口对应的设备文件名上就可以通过该端口发送数据,例如,在命
令行提示符下输入“echo test /dev/ttyS1”会把单词“test”发送到连接在 ttyS1端口的设备上。
2.伪终端(/dev/pty/)
伪终端(Pseudo Terminal)是成对的逻辑终端设备,并存在成对的设备文件,如 /dev/ptyp3 和
/dev/ttyp3,它们与实际物理设备并不直接相关。如果一个程序把 ttyp3 看作是一个串行端口设备,则它对
该端口的读/写操作会反映在该逻辑终端设备对应的 ttyp3上,而 ttyp3则是另一个程序用于读写操作的逻辑
设备。这样,两个程序就可以通过这种逻辑设备进行通信,使用 ttyp3 的程序会认为自己正在与一个串行
端口进行通信。
以 telnet为例,如果某人在使用 telnet程序连接到 Linux系统,则 telnet程序就可能会开始连接到设备
ptyp2上,而此时一个 getty程序会运行在对应的 ttyp2端口上。当 telnet从远端获取了一个字符时,该字符
就会通过 ptyp2、ttyp2传递给 getty程序,而 getty程序则会通过 ttyp2、ptyp2和 telnet程序返回“login:”字
符串信息。这样,登录程序与 telnet 程序就通过伪终端进行通信。通过使用适当的软件,可以把两个或多
个伪终端设备连接到同一个物理串行端口上。
3.控制台终端(/dev/ttyn,/dev/console)
如果当前进程有控制终端(Controlling Terminal),那么/dev/tty就是当前进程的控制终端的设备特殊文
件。可以使用命令“ps–ax”来查看进程与哪个控制终端相连,使用命令“tty”可以查看它具体对应哪个实
际终端设备。/dev/tty有些类似于到实际所使用终端设备的一个连接。
在 UNIX 系统中,计算机显示器通常被称为控制台终端(Console)。它仿真了类型为 Linux 的一种终
端(TERM = Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2 等。当用户在控制台上登录
时,使用的是 tty1。按[Alt+F1]~[Alt+F6]组合键时,我们就可以切换到 tty2、tty3等。tty1~tty6等称为虚
拟终端,而 tty0则是当前所使用虚拟终端的一个别名,系统所产生的信息会发送到该终端上。因此不管当
前正
您可能关注的文档
- (湖南专用)考语文一轮复习 第二部分 第二单元 第二节 鉴赏诗歌的语言.ppt
- (湖南专用)考语文一轮复习 第一部分 第三单元 正确使用词语(包括熟语).ppt
- (湖南专用)考语文一轮复习 第四部分 第一单元 第一节 把握故事情节.ppt
- (湖南专用)考语文一轮复习 第二部分 第二单元 第四节 评价诗歌的思想内容和作者的观点态度.ppt
- (湖南专用)考语文一轮复习 第二部分 第一单元 第二节 文言虚词.ppt
- (湖南专用)考语文一轮复习 第二部分 第二单元 第三节 鉴赏诗歌的表达技巧.ppt
- (湖南专用)考语文一轮复习 第四部分 第一单元 第三节 鉴赏人物形象.ppt
- (湖南专用)考语文一轮复习 第四部分 第一单元 第五节 探究.ppt
- (湖南专用)考语文一轮复习 第一部分 第四单元 辨析并修改病句.ppt
- (湖南专用)考语文一轮复习 第四部分 第一单元 第二节 分析环境描写.ppt
最近下载
- 辽2015T402 民用建筑空调与供暖冷热计量设计与安装.docx
- 《学校绿化养护服务方案》.doc
- 河北建筑国企招聘笔试题库.pdf VIP
- 副高卫生职称《放射医学》(题库)模拟试卷三.docx VIP
- 第四章原产地规则.ppt VIP
- 《海南全景解析》课件.ppt VIP
- 2016年张掖市中考化学试卷及答案.doc VIP
- AP微观经济学 2019年真题 附答案和评分标准 AP Microeconomics 2019 Real Exam with Answers and Scoring Guidelines.pdf VIP
- 外研版八年级上册英语单词表(附自测单).doc
- 入职通知书模板 .doc VIP
文档评论(0)