Linux下dev/console、tty、pts、ttySn的理解

本文介绍了Linux系统中dev目录下的设备,包括字符设备和块设备的概念,以及物理设备和虚拟设备的区别。重点讲解了Console、tty、pts之间的关系:tty、console对应tty0-n,ttySn,而pts是伪终端,由ptmx控制。
摘要由CSDN通过智能技术生成

dev设备

按照读取方式:

  • 字符设备(Character devices):无缓冲且只能顺序读取。
  • 块设备(Block devices):有缓冲且可以随机(乱序)读取。

按照是否对应物理实体:

  • 物理设备:对实际存在的物理硬件的抽象。
  • 虚拟设备:不依赖特定的物理硬件,仅是内核自身提供的某种功能。(虚拟设备与真实设备的关系是多对多)

无论哪种设备,在dev目录下都有一个对应的文件(节点),并且每个设备文件都必须有主/次设备号,主设备号相同的设备是同类设备,使用同一个驱动程序(虽然目前的内核允许多个驱动共享一个主设备号,但绝大多数设备依然遵循一个驱动对应一个主设备号的原则)。可以通过 cat /proc/devices 命令查看当前已经加载的设备驱动程序的主设备号。

设备号的来历
linux的设备管理是和文件系统紧密结合的,各种设备都以文件的形式存放在/dev目录下,称为设备文件。应用程序可以打开、关闭和读写这些设备文件,完成对设备的操作,就像操作普通的数据文件一样。为了管理这些设备,系统为设备编了号,每个设备号又分为主设备号和次设备号。主设备号用来区分不同种类的设备,而次设备号用来区分同一类型的多个设备。

crw-------  1 root root      5,   1 Feb 11 02:08 console
crw-rw-rw-  1 root tty       5,   0 Feb 10 21:22 tty
crw--w----  1 root tty       4,   0 Feb 10 19:18 tty0
cr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值