首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

TTY子系统初探

一、TTY子系统介绍 1、TTY介绍 TTY,一词源于Teleprinter,译为电传打印机,在早起用来表示电脑终端设备。 现在我们通常使用TTY,是各种(物理/虚拟)终端统称!...Linux系统终端设备一般分为控制台终端、伪终端、串口终端和其他类型四种。 下面我们来进一步了解这些Linux下常用终端,为学习Linux TTY Framework打下基础!...2.1 系统控制台 系统控制台,也就是我们Linux下面的/dev/console,是与操作系统交互设备,系统所产生信息会发送到该设备上。...对于登录Shell,/dev/tty就是你正在使用控制台,设备号(5,0),/dev/tty会映射到当前设备(使用命令tty可以查看它具体对应哪个实际物理控制台设备),输出到/dev/tty内容只会显示在当前工作终端上.../tty2 ,当前控制台(/dev/tty)则指向/dev/tty2 而比较特殊是/dev/tty0,他代表当前虚拟控制台,其实就是当前所使用虚拟控制台一个别名。

1.6K20

linux tty_linux tty

文章目录 Linuxtty与pts **终端特殊设备文件一般有以下几种:** **1、串行端口终端(/dev/ttySn)** **2、伪终端(/dev/pty/)** 3、控制终端(/dev/tty...) 4、控制台终端(/dev/ttyn, /dev/console) 5、其它类型 **FAQ: 终端和控制台** Linuxtty与pts tty是真的,pts是假,相互对应 ---- 终端是一种字符型设备...tty是Teletype缩写。 Teletype是最早出现一种终端设备——可以称作电传打字机,由Teletype公司生产。ttyLinux系统设备特殊文件目录/dev/下。...它仿真了类型为Linux一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2等。 当你在控制台上登录时,使用tty1。...tty0 5、其它类型 Linux系统中还针对很多不同字符设备存在有很多其它种类终端设备特殊文件。

4.7K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一文了解TTY子系统框架

    二、TTY子系统框架 1、TTY子系统框架分析 该篇主要用来分析TTY子系统框架,TTY框架图如下: image-20221231220853840 TTY子系统位于标准字符驱动之下,其中包括:TTY...TTY Core:该核心层主要负责控制跨越一个tty设备数据流和数据格式,使得TTY Driver能够以一致方式处理 到硬件 和 出自硬件 数据。...Driver 4、TTYLinux分布 TTY是所有终端统称,对于不同终端,我们有不同驱动程序,那么我们怎么知道当前系统中,哪个驱动被加载,哪个终端设备存在呢?...查看所有终端 可以查看/proc/tty/drivers文件,这个文件可以包含当前存在,不同tty驱动列表,驱动名字,驱动主编号,次编号范围,tty驱动类型。.../dev/tty /dev/console /dev/ttyS0 OK,TTY子系统框架以及目录结构分析就先了解到此,后续分析其主要数据结构!

    1.8K10

    linuxtty详解

    它仿真了类型为Linux一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2等。这些文件赋予了linux同时处理多任务,多窗口切换能力。...我们通常在linux下看到控制台一般是/dev/ttyN,用户可以使用alt+Fn切换控制台,看起来感觉存在多个屏幕。.../dev/tty1等代表第一个虚拟控制台 例如当使用ALT+F2进行切换时,系统虚拟控制台为/dev/tty2 ,当前控制台(/dev/tty)则指向/dev/tty2 你可以登录到不同虚拟控制台上去...而比较特殊是/dev/tty0,他代表当前虚拟控制台,是当前所使用虚拟控制台一个别名。...你还可以使用ps -ef | grep pts/4查看tty4终端运行进程,以及pid,找到了pid,你就可以用kill,结束tty4终端上服务。 或者使用w命令查看登录用户正在使用进程信息。

    16.2K10

    linuxtty由来

    从UNIX到Linux,你一定听说过TTY这个词。作为桌面用户,你应该会用到它,并且你经常使用它。在教程中,让我提及让你熟悉Linux术语TTY所必需一切。...例如,GNOME 终端或Konsole是你可以找到适用于Linux最好终端模拟器。 LinuxTTY 说到 LinuxTTY是UNIX 和Linux一个抽象设备。...TTYLinux和Unix中一个子系统,它通过TTY驱动程序使进程管理、行编辑和会话管理在内核中成为可能。在编程方面,你需要深入研究。但是,考虑到本文范围,这可能是一个容易消化定义。...如何在Linux中访问TTYLinux中访问TTY很容易。事实上,你经常访问它。...tty也是Linux一个命令 当你在终端模拟器中输入TTY时,它将打印连接到标准输入终端文件名,如手册页所述。 换句话说,要知道你连接TTY号码,只需输入TTY

    3.5K20

    Linuxtty与pts

    Linux系统设备特殊文件目录/dev/下,终端特殊设备文件一般有以下几种:   1.串行端口终端(/dev/ttySn)   串行端口终端(Serial Port Terminal)是使用计算机串行端口连接终端设备...不过这种命名方式目前仍然在RedHat等Linux系统中使用着。 但Linux系统上Unix98并不使用上述方法,而使用了”pty master”方式,例如/dev/ptm3。...它仿真了类型为Linux一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2等。当你在控制台上登录时,使用tty1。...使用Alt+[F1—F6]组合键时,我们就可以切换到tty2、tty3等上面去。tty1 –tty6等称为虚拟终端,而tty0则是当前所使用虚拟终端一个别名,系统所产生信息会发送到该终端上。...tty0 # 文章出处:http://www.diybl.com/course/6_system/linux/Linuxjs/2008611/124820.html

    5.7K20

    Linux 终端tty pty pts描述

    在使用Linux过程中,当我们通过ssh或者telnet等方式连接到服务器之后,会有一个相应终端来对应。而在直接登陆到Linux服务器时候也有一个对应终端。...也就是说所有登陆到当前Linux服务器用户都有一个对应终端,那他们有什么差异,终端到底是怎么一回事?本文作简要描述如下。...如果配置了Linux系统运行等级为3时候,Linux启动后就直接为文本模式,在这种情况下,当我们登陆到Linux服务器,即表明开启了一个终端模式会话。...Linux默认情况下会提供六个Terminal来让使用者登陆, 切换方式为使用:[Ctrl] + [Alt] + [F1]~[F6]组合按钮。...总结如下:    linux终端机(文字)界面与图形界面间切换热键为:    进入终端机也就是字符界面(tty1-tty6):[Ctrl] + [Alt] + [F1] - [F6]

    6.9K30

    Linux 时钟子系统

    一文搞懂 | Linux 时钟子系统 Clock 时钟就是 SoC 中脉搏,由它来控制各个部件按各自节奏跳动。比如,CPU主频设置,串口波特率设置,I2S采样率设置,I2C速率设置等等。...中间节点有很多种,包括 PLL(锁相环,用于提升频率),Divider(分频器,用于降频),Mux(从多个clock path中选择一个),Gate(用来控制ON/OFF)。...叶节点是使用 clock 做为输入、有具体功能 HW block。...fixed rate clock 这一类clock具有固定频率,不能开关、不能调整频率、不能选择parent,是最简单一类clock。可以直接通过 DTS 配置方式支持。...(即multiplier和divider),clock频率是由parent clock频率,乘以mul,除以div,多用于一些具有固定分频系数clock。

    4K30

    Linux Led 子系统

    2、概述 led 子系统驱动框架: 所有 led 共性: 有和用户通信设备节点 亮和灭 不同点: 有的 led 可能是接在 gpio 管脚上,不同 led 有不同 gpio 来控制 有的 led...可能由其他芯片来控制(节约 cpu pin,或者为了控制 led 电流等) 可以设置亮度 可以闪烁 所以 Linux led 子系统把所有 led 共性给实现了,把不同地方留给驱动工程师去做...led 子系统核心文件: driver/leds/led-class.c driver/leds/led-core.c driver/leds/led-triggers.c include/linux/...led 子系统是一个简单 Linux 子系统 ,在目录 /sys/class/leds 下展示该子系统设备,每个设备都有自己属性: brightness:设置 LED 亮度,范围 0 ~ max_brightness...LED_FULL = 255, //最大亮度 }; 3、代码框架分析 led-class.c (led 子系统框架入口) 维护 LED 子系统所有 LED 设备,为 LED 设备提供注册操作函数

    40930

    Linux Regmap 子系统

    这样 Linux 内核中就会充斥着大量重复、冗余代码,但是这些本质上都是对寄存器操作,所以为了方便内核开发人员统一访问 I2C/SPI 设备时候,为此引入了 Regmap 子系统。...1、什么是 Regmap Linux 下大部分设备驱动开发都是操作其内部寄存器,比如 I2C/SPI 设备本质都是一样,通过 I2C/SPI 接口读写芯片内部寄存器。...I2C/SPI 芯片又非常多,因此 Linux 内核里面就会充斥了大量 i2c_transfer 这类冗余代码,再者,代码复用性也会降低。...regmap 是 Linux 内核为了减少慢速 I/O 在驱动上冗余开销,提供了一种通用接口来操作硬件寄存器。...Linux 内核提供了针对不同接口 regmap 初始化函数。

    2.8K40

    Linux IIO 子系统

    Linux 内核为了管理这些日益增多 ADC 类传感器,特地推出了 IIO 子系统,我们学习如何使用 IIO 子系统来编写 ADC 类传感器驱动。...大家一般在搜索 IIO 子系统时候,会发现大多数讲都是 ADC,这是因为 IIO 就是为 ADC 类传感器准备,当然了 DAC 也是可以。...1、iio_dev 结构体 IIO 子系统使用结构体 iio_dev 来描述一个具体 IIO 设备,此设备结构体定义在include/linux/iio/iio.h 文件中 2、iio_dev 申请与释放...Linux 内核使用 iio_chan_spec 结构体来描述通道,定义在 include/linux/iio/iio.h 文件中。...2、IIO 驱动框架创建 分析 IIO 子系统时候大家应该看出了,IIO 框架主要用于 ADC 类传感器,比如陀螺仪、加速度计、磁力计、光强度计等,这些传感器基本都是 IIC 或者 SPI 接口

    2.2K40

    Linux RTC 子系统

    rtc 一般负责系统关机后计时、闹钟等,Linux 内核提供了一个 rtc 子系统,来支持所有的 rtc 设备。...rtc 设备本质上是一个字符设备,rtc 子系统在字符设备基础上抽象与硬件无关部分,并在这个基础上拓展 sysfs 和 proc 文件系统下访问。...rtc-xxx.c:各平台 RTC 设备实际驱动 rtc.h:定义与 RTC 有关数据结构 RK3399 以博主手边 RK3399 为例,RTC 驱动在 /kernel/drivers/rtc/...rx8010_set_alarm rx8010_set_time 软件逻辑就不在这里赘述了,大家可以参考下面链接 https://jasper1024.com/jasper/c089e4b/ 大家多看几个 Linux...子系统就会发现,基本上每个子系统都差不多,Linux 都会封装上中下 3 层,然后给你一些数据结构让你填充,就可以将这个子系统用起来了。

    18810

    windowsLinux子系统安装

    1.启用子系统功能 需要win系统支持子系统 进入控制面板 -> 程序和功能 -> 启用或关闭windows功能: 勾选适用于Linuxwindows子系统,确定,等待后,确认重启设备 2.下载子系统...acc status="" title="如果微软商店打不开"] 方案一:核实windows update服务是否启动 计算机右击管理→展开服务和应用程序→点击服务→核实windows update服务状态是否是正在运行...,点击获取 默认安装到C盘(若不想安装到C盘,看本篇最后),点击安装 等待下载完成后,启动即可, 3.子系统相关配置 启动后,会提示创建用户和设置密码,根据提示操作即可 [card title="修改...root密码" color="info"] 直接输入sudo passwd root修改 [/card] [card title="修改Linux国内镜像源并更新" color="success"] 输入...-18.04 d:\ubuntu18.04.tar 注:版本根据自己修改 (3)注销当前分发版 wsl --unregister Ubuntu-18.04 注:版本根据自己修改 (4)重新导入并安装分发版在

    5.4K20

    Windows下Linux子系统安装

    安装 以管理员模式打开Windows PowerShell wsl --list -online查看可以安装Linux发行版 wsl --install -d Ubuntu-20.04(安装后需要重启...) 输入用户名和密码即可,回到开始菜单,找到Ubuntu图标即可打开 wsl子系统,位置在\\wsl$直接在任务管理器搜索即可 查看版本wsl -l -v 定期更新:sudo apt update &&...,等待下载VS Code Server for x64并安装 链接到vs code(左下角出现WSL:Ununtu-20.04) 安装miniconda 参考链接:Python环境搭建:基于Win10子系统...f bash Miniconda3--py38_4.11.0-Linux-x86_64.sh 一直点Enter/yes,直到出现“Do you wish the installer to intialize...但是,下载目录为windows某一个磁盘,无法复制到wsl子系统中(不知道怎么解决,我目前又用不到,先不弄了) 使用命令行,首先加载到windows下含有cudnn文夹 sudo

    2.9K40

    Linux 网络子系统

    今天分享一篇经典Linux协议栈文章,主要讲解Linux网络子系统,看完相信大家对协议栈又会加深不少,不光可以了解协议栈处理流程,方便定位问题,还可以学习一下怎么去设计一个可扩展子系统,屏蔽不同层次差异...目录 Linux网络子系统分层 Linux网络子系统实现需要: 支持不同协议族 ( INET, INET6, UNIX, NETLINK…) 支持不同网络设备 支持统一BSD socket API...中TCP,UDP协议包在网络子系统实现流程。...创建ksoftirqd内核线程 linux内核通过调用subsys_initcall来初始化各个子系统,在源代码目录里你可以grep出许多对这个函数调用。...网络子系统分层 Linux网络子系统实现需要: 支持不同协议族 ( INET, INET6, UNIX, NETLINK…) 支持不同网络设备 支持统一BSD socket API 需要屏蔽协议

    3.5K21
    领券