linux字符设备有:1、鼠标,是计算机的一种外接输入设备,也是计算机显示系统纵横坐标定位的指示器;2、键盘,是用于操作计算机设备运行的一种指令和数据输入装置;3、串行端口终端,使用计算机串行端口连接的终端设备;4、控制终端;5、控制台等。
本教程操作环境:linux5.9.8系统、Dell G3电脑。
Linux系统为了管理方便,将设备分成三种基本类型:
字符设备
块设备
网络设备
它们均以一个文件节点形式显示在文件系统的/dev目录下(crw--w---- 1 root tty 4, 0 7月 11 09:11 tty0 其中c代表字符设备类型)。
linux字符设备
字符设备是指设备无需缓冲即可直接进行读写的设备, 如鼠标,键盘,串口设备、调制解调器等, 它与块设备的区别在于是字符操作的基本单位是字节。
字符设备的分类
字符设备主要包括控制终端设备和串行终端设备, 例如控制台和键盘。依据功能和硬件上的差别, 字符终端设备有如下分类:
串行端口终端(/dev/ttSn):使用计算机串行端口连接的终端设备, 串行设备数据传输方式为同一字符8个bit单线传输, 在命令行输入 echo 'hello world' > /dev/ttyS0可将输入写入到对应设备。
伪终端(/dev/ttyp,/dev/ptyp): 对应底层不存在真实的硬件设备, 用于为其他程序提供终端式样的接口,如网络登陆主机时网络服务器和shell程序之间的终端接口。
控制终端(/dev/tty):主设备号为5, 进程控制终端,与进程相关联,如登陆shell进程使用的就是终端/dev/tty。
控制台(/dev/ttyn,/dev/consol): 计算机输入输出的显示器,当控制台登陆时, 使用的就是tty1, 而ubuntu 图形界面使用的tty7。
其他类型:现行的linux针对许多不同的设备建有许多其他种类的设备特殊文件,如ISIDIN设备的/dev/ttyIn设备。
下面为字符设备结构示意图
字符设备的性质及特点
字符设备属于设备文件系统的一种, 相当于底层硬件向上层提供的逻辑设备文件, 宛如将一个数据端口(数据寄存器)与一个文件对接起来,设备驱动程序直接对文件操作, 于是便直接对端口进行了读写操作。 同样作为文件, 字符设备驱动也必须实现文件的基本的操作open(),close(),write(),read()等,当然终端重定向操作也是支持的。
字符设备文件文件的读写是以单个字节为单位的, 不需要设立硬件缓冲区。 设备像访问字节流一样被操作系统访问。 字节流就像在硬件端口和文件系统搭建起了一个传送管道, 字节逐个通过管道传输并呈现给读写双方。 这个流特性在驱动程序中是以缓冲队列来实现的。例如: 控制台的结构体中的读写缓冲队列
struct tty_struct { struct termios termios; int pgrp; int stopped; void (*write)(struct tty_struct * tty); struct tty_queue read_q; //读队列 struct tty_queue write_q; //写队列 struct tty_queue secondary; //tty辅助队列(存放规格化后的字符) };
字符设备由字符设备号标识。字符设备号由主设备号和次设备号构成, 例如/dev/ttyS0的设备号为(4,64); 主设备号标识设备对应驱动程序, 内核通过主设备号将设备和驱动程序一一对应起来, 次设备号由驱动程序使用, 用于驱动程序内部区分设备细节差别使用的代码,内核其他部分不使用它。
相关推荐:《Linux视频教程》
以上是linux字符设备有哪些的详细内容。更多信息请关注PHP中文网其他相关文章!

Linux网络配置可以通过以下步骤完成:1.配置网络接口,使用ip命令临时设置或编辑配置文件持久化设置。2.设置静态IP,适合需要固定IP的设备。3.管理防火墙,使用iptables或firewalld工具来控制网络流量。

维护模式在Linux系统管理中扮演关键角色,帮助进行系统修复、升级和配置变更。1.进入维护模式可以通过GRUB菜单选择或使用命令“sudosystemctlisolaterescue.target”。2.在维护模式下,可以执行文件系统修复和系统更新等操作。3.高级用法包括重置root密码等任务。4.常见错误如无法进入维护模式或挂载文件系统,可通过检查GRUB配置和使用fsck命令修复。

使用Linux维护模式的时机和原因:1)系统启动问题时,2)进行重大系统更新或升级时,3)执行文件系统维护时。维护模式提供安全、控制的环境,确保操作的安全性和效率,减少对用户的影响,并增强系统的安全性。

Linux中不可或缺的命令包括:1.ls:列出目录内容;2.cd:改变工作目录;3.mkdir:创建新目录;4.rm:删除文件或目录;5.cp:复制文件或目录;6.mv:移动或重命名文件或目录。这些命令通过与内核交互执行操作,帮助用户高效管理文件和系统。

在Linux中,文件和目录管理使用ls、cd、mkdir、rm、cp、mv命令,权限管理使用chmod、chown、chgrp命令。1.文件和目录管理命令如ls-l列出详细信息,mkdir-p递归创建目录。2.权限管理命令如chmod755file设置文件权限,chownuserfile改变文件所有者,chgrpgroupfile改变文件所属组。这些命令基于文件系统结构和用户、组系统,通过系统调用和元数据实现操作和控制。

MaintenancemodeInuxisAspecialBootenvironmentforforcalsystemmaintenancetasks.itallowsadMinistratorStoperFormTaskSlikerSettingPassingPassingPasswords,RepairingFilesystems,andRecoveringFrombootFailuresFailuresFailuresInamInimAlenimalenimalenrenmentrent.ToEnterMainterMainterMaintErmaintErmaintEncemememodeBoode,Interlecttheboo

Linux的核心组件包括内核、文件系统、Shell、用户空间与内核空间、设备驱动程序以及性能优化和最佳实践。1)内核是系统的核心,管理硬件、内存和进程。2)文件系统组织数据,支持多种类型如ext4、Btrfs和XFS。3)Shell是用户与系统交互的命令中心,支持脚本编写。4)用户空间与内核空间分离,确保系统稳定性。5)设备驱动程序连接硬件与操作系统。6)性能优化包括调整系统配置和遵循最佳实践。

Linux系统的五个基本组件是:1.内核,2.系统库,3.系统实用程序,4.图形用户界面,5.应用程序。内核管理硬件资源,系统库提供预编译函数,系统实用程序用于系统管理,GUI提供可视化交互,应用程序利用这些组件实现功能。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

SublimeText3汉化版
中文版,非常好用