输入/输出应用程序接口和设备驱动程序接口

文章目录

1.输入/输出应用程序接口

1.字符设备接口

get/put系统调用:向字符设备读/写一个字符

2.块设备接口

read/write系统调用︰向块设备的读写指针位置读/写多个字符;

seek系统调用:修改读写指针位置

3.网络设备接口

网络设备接口,又称"网络套接字(socket)接口"

socket系统调用︰创建一个网络套接字,需指明网络协议(TCP? UDP? )

bind:将套接字绑定到某个本地"端口"

connect:将套接字连接到远程地址

read/write:从套接字读/写数据

1.网络设备套接字通信

4.阻塞/非阻塞I/O

阻塞I/O:应用程序发I/O系统调用进程需转为阻塞态等待

eg:字符设备接口―---从键盘读一个字符get
非阻塞l/O:应用程序发出I/O系统调用,系统调用可迅速返回,进程无需阻塞等待。

eg:块设备接口---―往磁盘写数据write

2.设备驱动程序接口

1.统一标准的设备驱动程序接口

操作系统规定好设备驱动程序的接口标准,各厂商必须按要求开发设备驱动程序。

不同的操作系统,对设备驱动程序接口的标准各不相同。设备厂商必须根据操作系统的接口要求,开发相应的设备驱动程序,设备才能被使用。

相关推荐
赖small强1 分钟前
Linux 内核 8 类同步机制详解(原理、场景与示例)
linux·信号量·原子操作·自旋锁·内核同步方法·读-写自旋锁·读-写信号量
YJlio20 分钟前
PsService·下(7.21):Find/SetConfig 与服务的启动/停止/重启/暂停/恢复
linux·运维·服务器
波诺波21 分钟前
环境管理器
linux·前端·python
草莓熊Lotso23 分钟前
C++ 继承特殊场景解析:友元、静态成员与菱形继承的底层逻辑
服务器·开发语言·c++·人工智能·经验分享·笔记·1024程序员节
_OP_CHEN1 小时前
Linux系统编程:(六)深入理解 Linux 软件包管理器——从原理到 yum 实战全攻略
linux·运维·服务器·yum·软件包管理器·linux生态
路過的好心人1 小时前
Nginx 的多个场景配置
运维·网络·nginx
9ilk1 小时前
【基于one-loop-per-thread的高并发服务器】--- 前置技术
运维·服务器·c++·笔记·后端·中间件
qq_343247031 小时前
docker 下搭建 nacos
运维·docker·容器
人工智能训练1 小时前
Ubuntu系统中Docker的常用命令总结
linux·运维·人工智能·ubuntu·docker·ai
我命由我123452 小时前
IDEA - IDEA 快速回到页面首尾、页面快速滑动、快速定位到指定行
java·运维·ide·后端·java-ee·intellij-idea·intellij idea