博客
关于我
Linux /dev目录设备文件
阅读量:799 次
发布时间:2023-01-31

本文共 745 字,大约阅读时间需要 2 分钟。

在Linux系统中,硬件设备通常以文件形式存在,这种文件被称为设备文件。设备文件在操作系统与外部设备之间建立了桥梁,使得用户能够像操作普通文件一样操作外部设备。

设备文件的接口

设备文件的操作与普通文件类似,可以通过文件描述符进行操作。常用的接口包括:

  • int open(const char *path, int oflag, ...)
  • int close(int fd)
  • ssize_t write(int fd, const void *buf, size_t nbyte)
  • ssize_t read(int fd, void *buf, size_t nbyte)
  • int ioctl(int d, int request, ...)

这些接口提供了基本的设备操作功能。设备驱动可以动态加载和删除,具体操作可通过以下命令进行管理:

  • lsmod:查看已加载的模块
  • insmod <module_file>:加载指定模块
  • modprobe <module>:加载指定模块及依赖
  • rmmod <module>:卸载指定模块

常见设备文件命名规律

设备文件的命名方式各有特点:

  • 软驱(/dev/fd):fd0代表第一软盘,fd1代表第二软盘。
  • IDE 磁盘(/dev/hd):用于IDE接口的磁盘设备。
  • SCSI 磁盘(/dev/sd):SCSI接口的磁盘设备,例如sda代表第一块SCSI磁盘,sdc5代表第三块SCSI设备的第五个逻辑分区。
  • 终端(/dev/tty):用于虚拟终端或物理终端设备。
  • 虚拟磁盘(/dev/vd):用于virtio-block类型的设备,命名规则较为特殊,例如vda、vdX等。

设备文件的命名并非固定,随着设备加载或系统重启,设备文件的命名可能会发生变化。

转载地址:http://tywfk.baihongyu.com/

你可能感兴趣的文章
P4313 文理分科
查看>>
P4491 [HAOI2018] 染色
查看>>
SpringBoot中集成LiteFlow(轻量、快速、稳定可编排的组件式规则引擎)实现复杂业务解耦、动态编排、高可扩展
查看>>
P5-js python中的map()函数
查看>>
SpringBoot中集成influxdb-java实现连接并操作Windows上安装配置的influxDB(时序数据库)
查看>>
P8738 [蓝桥杯 2020 国 C] 天干地支
查看>>
PA
查看>>
Package Header Cursor
查看>>
package,source folder,folder相互转换
查看>>
SpringBoot中集成Flyway实现数据库sql版本管理入门以及遇到的那些坑
查看>>
package.json文件常用指令说明
查看>>
SpringBoot中集成eclipse.paho.client.mqttv3实现mqtt客户端并支持断线重连、线程池高并发改造、存储入库mqsql和redis示例业务流程,附资源下载
查看>>
Padding
查看>>
paddlehub安装及对口罩检测
查看>>
SpringBoot中集成Actuator实现监控系统运行状态
查看>>
PaddleSlim 模型量化 源代码解读
查看>>
paddle的两阶段基础算法基础
查看>>
Page Object模式:为什么它是Web自动化测试的必备工具
查看>>
SpringBoot中重写addCorsMapping解决跨域以及提示list them explicitly or consider using “allowedOriginPatterns“ in
查看>>
PageHelper 解析及实现原理
查看>>