stty详解-Unix/Linux编程实践教程第五章 学习stty

本文是Unix/Linux编程实践教程第五章的学习笔记,重点介绍了stty命令及其在终端连接属性中的应用。文章详细讲解了设备与文件的区别,磁盘连接的属性,特别是缓冲和自动添加模式的概念,并探讨了终端驱动程序的编写和终端IO的复杂性。通过示例程序展示了如何使用stty读取和修改终端驱动程序的设置。
摘要由CSDN通过智能技术生成

读书笔记-第五章 连接控制 学习stty

先放上思维导图
在这里插入图片描述

为设备编程&设备就像文件

前面所学的知识都是基于文件的,而在unix/linux系统中,所有的设备(打印机,终端,话筒,摄像头等等)也属于文件,它拥有文件名,支持系统调用,有类似于文件的属性(读、写、最近修改时间等)
举个?

  1. 文件名:通常的表示设备的文件存放在/dev中,如终端就在/dev/pts当中(对于centos系统在/dev/pts/1中,可能根据linux版本不同有区别,输入tty,显示的就是终端的文件),我们可以尝试命令who > /dev/pts/1 ,可以看到终端输出了登陆过系统的人及登陆时间,这说明终端设备的文件名就是这个/dev/pts中的1啦
    在这里插入图片描述
  2. 支持系统调用:如read,我们从话筒中读取声音数据相当于读取文件中的数据,再如write,我们向/dev/pts/1写入数据相当于是往终端中写入,再打印在屏幕上
  3. 属性:从上图中的ls -i /dev/pts/1可以看出来文件拥有inode 4,权限位为rw–w--w-,1个链接,文件所有者root和组tty,最近修改时间是4月21日 08:14,文件类型是c,表示文件是以字符为单位来传送的,区别:
    - 设备文件是链接不是容器
    - inode存储的是指向内核子程序的指针(内核中 传输设备数据的子程序被称为设备驱动程序)
    - 还有个主设备号确定处理该设备实际的子程序
    - 还有个从设备号被作为参数传输到该子程序

设备与文件的不同之处

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值