linux系统中设备分为几类

linux系统中设备分为3类:1、字符设备,是能够像字节流一样被访问的设备,当对字符设备发出读写请求,相应的IO操作立即发生;2、块设备,是Linux系统中进行TO操作时必须以块为单位进行访问的设备,块设备能够安装文件系统;3、网络设备,由Linux的网络子系统驱动,负责数据包的发送和接收,而不是面向流设备,因此在Linux系统文件系统中网络设备没有节点。

linux系统中设备分为几类

本教程操作环境:linux7.3系统、Dell G3电脑。

linux系统中设备

Linux系统中的设备可以分为字符设备、块设备和网络设备这3类。

(1)字符设备

  字符设备是能够像字节流一样被访问的设备,当对字符设备发出读写请求,相应的IO操作立即发生。Linux系统中很多设备都是字符设备,如字符终端、串口、键盘、鼠标等。在嵌入式Linux 开发中,接触最多的就是字符设备以及驱动。

(2)块设备

  块设备是Linux系统中进行TO操作时必须以块为单位进行访问的设备,块设备能够安装文件系统。块设备驱动会利用一块系统内存作为缓冲区,因此对块设备发出读写访问,并不一定立即产生硬件I/O操作。Linux系统中常见的块设备有如硬盘、软驱等等。

(3)网络设备

美图设计室 美图设计室

5分钟在线高效完成平面设计,AI帮你做设计

美图设计室 29 查看详情 美图设计室

  网络设备既可以是网卡这样的硬件设备,也可以是一个纯软件设备如回环设备。网络设备由Linux的网络子系统驱动,负责数据包的发送和接收,而不是面向流设备,因此在Linux系统文件系统中网络设备没有节点。对网络设备的访问是通过socket调用产生,而不是普通的文件操作如 open/closc和 read/write等。

驱动在linux中的地位

  驱动是Linux系统中设备和用户之间的桥梁,Linux系统中,访问设备必须通过设备驱动进行操作,用户程序是不能直接操作设备的。Linux系统中硬件、驱动和用户程序的关系如图2.2所示。

1.png

驱动程序运行与内核空间,用户程序只能通过内核提供的系统调用,由经VFS 以及驱动程序才能访问和操作硬件,硬件设备传递的数据也必须经过驱动、VFS和系统调用才能被用户程序接收。所以说,设备驱动是应用程序访问系统设备以及进行数据传递的桥梁和通道。

相关推荐:《Linux视频教程》

以上就是linux系统中设备分为几类的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/253399.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
composer的allow-plugins配置有什么安全意义
上一篇 2026年10月9日 11:35:55
掌握Python f-string:数字对齐、千位分隔符与小数位数的统一控制
下一篇 2025年12月14日 13:50:17

相关推荐

  • linux什么命令可以过滤控制字符

    linux什么命令可以过滤控制字符linux什么命令可以过滤控制字符linux什么命令可以过滤控制字符linux什么命令可以过滤控制字符

    linux中可以过滤控制字符的命令是“col”。col命令是linux下的一个文档编辑命令,其英文全称是“colation”,翻译过来就是“过滤”,col命令主要有一个功能,能够在许多说明文件里有效地过滤掉控制字符,语法“col [-bfx][-l]”。col命令就相当于一个标准输入文本过滤器,它会…

    2026年10月9日 • 用户投稿
    100
  • linux tgz是什么格式

    linux tgz是什么格式linux tgz是什么格式linux tgz是什么格式linux tgz是什么格式

    在linux中,tgz是压缩文件格式;TGZ文件是Gzip压缩的Tar文件,TAR文件归档生成的多个文件经Gzip压缩后归为一个文件,从而减小占用的空间。Linux中可以利用tar命令来解压tgz文件,语法“tar  zxvf  文件名.tgz  -C /指定路径”或“tar zxvf  文件名.t…

    2026年10月9日 • 用户投稿
    100
  • Linux setfacl与getfacl命令详解

    答案:getfacl和setfacl命令用于查看和设置文件的ACL权限,实现更精细的访问控制。1. getfacl显示文件或目录的ACL信息,包括用户、组、掩码和其他权限;2. setfacl通过-m添加或修改ACL规则,-x删除指定条目,-b清除所有扩展ACL;3. 可使用-d设置默认ACL以供新…

    2026年10月9日
    000
  • 在CI/CD流程中如何高效地使用composer

    在CI/CD流程中如何高效地使用composer在CI/CD流程中如何高效地使用composer在CI/CD流程中如何高效地使用composer在CI/CD流程中如何高效地使用composer

    启用缓存~/.composer/cache、使用composer install –prefer-dist、生成优化自动加载并执行composer audit,可提升CI/CD中Composer的效率与安全性。 在CI/CD流程中高效使用Composer,关键在于减少依赖安装时间、提升缓…

    2026年10月9日 • 用户投稿
    200
  • linux怎么查看jdk是什么版本

    linux怎么查看jdk是什么版本linux怎么查看jdk是什么版本linux怎么查看jdk是什么版本linux怎么查看jdk是什么版本

    查看方法:1、如果没有设置jdk环境变量,则需要先使用cd命令进入jdk所在目录,语法“cd 目录地址”,然后执行“./bin/java -version”命令即可获取版本信息。2、设置了环境变量,则直接执行“java -version”即可获取版本信息。 本教程操作环境:linux7.3系统、De…

    2026年10月9日 • 用户投稿
    100
  • CentOSStream版本怎么看_滚动更新版本查询方法

    CentOSStream版本怎么看_滚动更新版本查询方法CentOSStream版本怎么看_滚动更新版本查询方法CentOSStream版本怎么看_滚动更新版本查询方法CentOSStream版本怎么看_滚动更新版本查询方法

    查看 /etc/os-release 文件中 PRETTY_NAME 或 NAME 是否包含“CentOS Stream”;2. 检查 /etc/centos-release 文件内容是否显示“CentOS Stream release”;3. 运行 hostnamectl 命令查看 Operati…

    2026年10月9日 • 用户投稿
    000
  • linux中的vnc server是什么

    linux中的vnc server是什么linux中的vnc server是什么linux中的vnc server是什么linux中的vnc server是什么

    在linux中,vnc server是一般Linux发行版都会附带的vnc服务器软件;它是一个用来共享linux服务器上的资源给其他分布式用户的服务,只要在一台linux系统的机器上安装vnc server,然后开启服务,其他机器就可以通过vnc server访问这台机器上的共享资源。 本教程操作环…

    2026年10月9日 • 用户投稿
    000
  • linux有内核级线程么

    linux有内核级线程么linux有内核级线程么linux有内核级线程么linux有内核级线程么

    linux有内核级线程,linux支持内核级的多线程。Linux内核可以看作服务进程(管理软硬件资源,响应用户进程的各种进程);内核需要多个执行流并行,为了防止可能的阻塞,支持多线程。内核线程就是内核的一个分身,可以用以处理一件特定事情,内核线程的调度由内核负责,一个内核线程的处于阻塞状态时不影响其…

    2026年10月9日 • 用户投稿
    000
  • linux建立group是什么意思

    linux建立group是什么意思linux建立group是什么意思linux建立group是什么意思linux建立group是什么意思

    在linux,建立group的意思为“建立用户组”,可以使用groupadd命令实现。groupadd命令用于创建一个新的用户组,新用户组的信息将被添加到系统文件中,语法“groupadd [options] groupname”;参数“options”是groupadd命令使用的参数,而“grou…

    2026年10月9日 • 用户投稿
    100
  • linux重命名文件怎么实现

    linux重命名文件怎么实现linux重命名文件怎么实现linux重命名文件怎么实现linux重命名文件怎么实现

    linux重命名文件的方法:1、打开终端命令窗口;2、执行“mv A B”命令将目录A重命名为B,或者通过执行命令如“mv abc 1234”重命名指定文件;3、使用另一个“rename”命令实现重命名即可。 本教程操作环境:linux5.9.8系统、Dell G3电脑。 linux重命名文件怎么实…

    2026年10月9日 • 用户投稿
    000
  • Linus 将 Bcachefs 文件系统标记为由外部维护

    Linus 将 Bcachefs 文件系统标记为由外部维护Linus 将 Bcachefs 文件系统标记为由外部维护Linus 将 Bcachefs 文件系统标记为由外部维护Linus 将 Bcachefs 文件系统标记为由外部维护

    根据 Linux 内核的提交历史,Linus Torvalds 最近修改了内核中的 MAINTAINERS 文件,将 Bcachefs 文件系统的维护状态调整为“外部维护”。这一变动表明,他将不再接收针对 Bcachefs 的新功能补丁提交(PR),相当于关闭了该文件系统进入主线内核的更新通道。 此…

    2026年10月9日 • 用户投稿
    100
  • linux less命令怎么用

    linux less命令怎么用linux less命令怎么用linux less命令怎么用linux less命令怎么用

    linux less命令的作用是随意浏览文件,并且支持翻页和搜索,还支持向上翻页和向下翻页,其使用方法如“less log2013.log”表示查看“log2013.log”文件,“ps -ef |less”则表示通过ps查看进程信息并使用less分页显示。 本教程操作环境:linux5.9.8系统…

    2026年10月9日 • 用户投稿
    200
  • linux怎么共享文件夹

    linux怎么共享文件夹linux怎么共享文件夹linux怎么共享文件夹linux怎么共享文件夹

    linux共享文件夹的设置方法:1、通过“sudo apt-get install samba”命令安装samba;2、通过“mkdir urd360”命令创建了一个名为urd360的文件夹;3、点击该文件夹,右键选择properties,设置共享属性即可。 本教程操作环境:Ubuntu16.04系…

    2026年10月9日 • 用户投稿
    000
  • 文件夹的后缀名

    文件夹的后缀名文件夹的后缀名文件夹的后缀名文件夹的后缀名

    文件夹没有传统后缀名,因其类型由文件系统元数据标识,而非扩展名;如.git、.app等特殊命名实为命名约定或封装形式,并非真正后缀;系统通过属性识别文件夹,避免命名冲突与解析混乱,确保结构清晰。 文件夹通常是没有传统意义上的“后缀名”的。我们平时所说的后缀名,比如 .txt 、 .jpg 、 .ex…

    2026年10月9日 • 用户投稿
    600
  • linux怎么查找文件位置

    linux怎么查找文件位置linux怎么查找文件位置linux怎么查找文件位置linux怎么查找文件位置

    linux查找文件位置的方法:1、通过“whereis bash”命令查看可执行文件或源代码文件在文件系统中的位置;2、通过find命令在目录结构中搜索文件,并查找文件位置;3、使用which命令在PATH变量指定的路径中,搜索某个系统命令的位置。 本教程操作环境:linux5.9.8系统、Dell…

    2026年10月9日 • 用户投稿
    100
  • linux怎么查看主机名

    linux怎么查看主机名linux怎么查看主机名linux怎么查看主机名linux怎么查看主机名

    linux查看主机名的方法:1、通过hostnamectl命令查看系统主机名;2、使用hostname查看主机名;3、使用uname查看主机名;4、使用nmcli查看主机名;5、使用sysctl查看主机名;6、使用“cat /etc/hostname”查看主机名;7、使用“cat  /etc/hos…

    2026年10月9日 • 用户投稿
    100
  • linux明明有文件却找不到怎么办

    linux明明有文件却找不到怎么办linux明明有文件却找不到怎么办linux明明有文件却找不到怎么办linux明明有文件却找不到怎么办

    linux明明有文件却找不到的解决办法:1、打开终端命令窗口;2、通过执行“mv elasticsearch.yml elasticsearch.yml”命令查看文件即可。 本教程操作环境:linux5.9.8系统、Dell G3电脑。 linux明明有文件却找不到怎么办? Linux系统中文件明明…

    2026年10月9日 • 用户投稿
    200
  • Windows 上安装使用 Claude Code 指南

    Windows 上安装使用 Claude Code 指南Windows 上安装使用 Claude Code 指南Windows 上安装使用 Claude Code 指南Windows 上安装使用 Claude Code 指南

    大家好,我是 immerse,一位独立开发者兼内容创作者。 • 欢迎关注我的公众号:#沉浸式趣谈,获取最新文章(更多独家内容仅在公众号发布)• 个人网站: https://yaolifeng.com ,同步更新技术文章• 转载请务必在文首注明作者出处及版权信息 在这里,我会持续分享关于 编程 、 独…

    2026年10月9日 • 用户投稿
    100
  • linux查看内存大小的命令是什么

    linux查看内存大小的命令是什么linux查看内存大小的命令是什么linux查看内存大小的命令是什么linux查看内存大小的命令是什么

    linux查看内存大小的命令是“free”命令;通过“free”命令可以查看系统的内存使用情况,内存大小单位为KB;通过“free -m”命令查看系统的内存使用情况,内存大小单位为MB;通过“free -g”命令查看系统的内存使用情况,内存大小单位为GB。 本教程操作环境:linux5.9.8系统、…

    2026年10月9日 • 用户投稿
    100
  • [1039]linux使用sz命令下载大于4G的文件到windows

    [1039]linux使用sz命令下载大于4G的文件到windows[1039]linux使用sz命令下载大于4G的文件到windows[1039]linux使用sz命令下载大于4G的文件到windows[1039]linux使用sz命令下载大于4G的文件到windows

    在linux系统中使用 sz 命令下载大于4gb的文件到windows时,需要先将大文件拆分成多个小文件。以下是详细步骤和相关代码的伪原创版本: 拆分文件 在Linux中,使用以下命令将大文件拆分为2GB的小文件: cat tomcat7.zip | split -b 2G – tomcat7.zi…

    2026年10月9日 • 用户投稿
    1500

发表回复

登录后才能评论
关注微信