linux设备
来源:互联网 发布:网络电视浏览器在哪里 编辑:程序博客网 时间:2024/06/09 14:28
在Linux系统中,存在一个抽象化的设备目录,名为/dev,如图所示。该目录下存有指向系统中硬件的特殊文件。这些指向硬件设备的文件,极大地简化了程序员对硬件的操作。
Linux系统将设备分成了3种类型:
1). 字符设备: 字符设备就是能够像字节流一样访问的设备,字符终端和串口就属于字符设备。
2). 设备: 与字符设备不同,在读写操作时,块设备每次只能传输一个或多个完整的块。
3). 网络接口:网络接口存在一定的特殊性,其与内核的通信完全不同于内核与字符设备或块设备的通信。
(如果该设备是字符设备的话,将以字符“c”开头。如果是块设备的话,将以字符“b”开头)
每个设备都带有诸如“14,0”或“8,3”这样的编号, 这种号码称为主从设备号,内核通过该号码将设备文件与真实设备关联起来。前面的数字称为主设备号,指向硬件设备,而次设备号指向子设备。
在Linux系统启动时,设备驱动将被加载。设备驱动成功加载后,将向系统反馈一个主设备号,驱动程序将根据该主设备号在/dev目录下创建对应的设备文件。这样,程序就可以使用open、read、write函数或命令,通过设备文件实现对设备的访问了
传统终端指的是计算机外部的设备,而现在终端为显示器、控制器及键盘等设备的总称。终端与平常使用的计算机的根本区别在于, 没有自己的CPU单元和内存单元。终端的主要功能是发送用户输入的请求给主机,并显示主机完成运算后的结果。随着计算机技术的发展,目前终端有了新的含义。一切接入网络的计算机设备称为终端,如电脑、PDA、智能电话、数字电视等。在Linux系统中,所有终端设备都被称为tty。tty被认为是Teletypes或Tele-typerwriters的缩写。终端一种字符型的设备,有多种类型:
1). 串行端口终端(/dev/ttySn)
2). 伪终端(/dev/pts/n)
3). 控制终端(/dev/tty)
4). 控制台终端(/dev/ttyn,/dev/console)
Linux系统提供了命令或相关函数对终端进行控制,以达到用户对输出显示或终端的特定要求。
1). stty命令显示终端设置
2). reset命令将终端恢复到正确的状态
3). ttyname函数获得当前终端名称
ttyname函数
头文件
<unistd.h>
函数形式
char *ttyname(int fd);
返回值
成功
失败
是否设置errno
返回终端设备的名称
NULL
是
4). tcgetattr函数与tcsetattr函数控制终端
tcgetattr函数和tcsetattr函数
头文件
<termios.h>
<unistd.h>
函数形式
int tcgetattr(int fd, struct termios *termios_p);
int tcsetattr(int fd, int optional_actions, const struct termios *termios_p);
返回值
成功
失败
是否设置errno
0
−1
是
- linux设备
- Linux设备
- linux设备
- linux设备
- Linux 设备
- Linux设备
- Linux设备节点、设备和设备驱动
- linux 块设备,字符设备
- Linux设备模型_platform设备
- Linux 设备 设备驱动 设备结点 (设备号) 关系
- Linux设备模型(Linux设备驱动程序)
- Linux 设备文件
- linux 设备驱动编程
- linux设备驱动
- Linux系统设备驱动程序
- Linux设备驱动程序设计
- Linux系统设备驱动程序
- Linux创建RAID设备
- 10个妙招 在线视频下载方法大全
- 积分
- Windows系统故障简单恢复技巧
- Iterator 遍历map的方法
- vfork和fork函数,exit和_exit函数的联系与区别
- linux设备
- normal、sysdba、sysoper登陆oracle的区别理解
- 教你进入有密码 Windows XP 系统的方法
- 为什么你应该(从现在开始就)写博客
- 串口通讯技术
- LIN线中的节点信号配置,在文档里直接填写内容即可,DEMO版不可保存
- phpMyAdmin 的配置
- asp.net 实现邮件群发类(转)
- java性能的4,5个用法