博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
minix中管道文件和设备文件的读写
阅读量:4643 次
发布时间:2019-06-09

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

1.管道文件

管道文件读写主要面临问题:

  一次读写完毕后,下一次可能需要等好久。

解决方法:

  文件系统将这个请求挂起,不发送应答给进程,导致进程阻塞。

  在能够执行完成的时候,重新唤醒进程。

 

2.终端设备文件

2.1 终端设备的i节点(inode)中有两个数字:1)主设备号

  主设备号给出了设备类型: ram,软盘,硬盘,终端。

2)次设备号

  此设备号指明了所使用的设备号,如终端2,驱动器1,

  有时候还会包含一些设备信息以便驱动程序处理。

 

2.2 读写设备文件步骤:

1)从文件的i节点中提取主、次设备号;

2)去访问文件系统表,找到相应的设备驱动程序的进程号;

3)若驱动程序能立即执行操作,则执行,若不能则把消息记录在它自己的内部表,

  文件系统此时将调用进程挂起;

4)驱动程序获得数据后,将数据传送到用户进程的缓冲区,

  文件系统发送应答,报告结果给用户进程,并将其解除阻塞。

 

转载于:https://www.cnblogs.com/jun14/archive/2012/12/09/2810062.html

你可能感兴趣的文章
thinkPHP使用模型更新数据
查看>>
(1)李白喝酒
查看>>
linux基础命令---df
查看>>
Linux command not found 问题解释
查看>>
LeetCode - Jump Game
查看>>
LeetCode - Populating Next Right Pointers in Each Node II
查看>>
mysql函数(一.字符函数)
查看>>
简单的数据库连接示例 基于等待超时模式
查看>>
如何把OpenWrt安装到PC?
查看>>
利用eclipse开发动态web项目
查看>>
Cortex-M0(+)内核的处理器架构简介
查看>>
mysql使用kill命令解决死锁问题,杀死某条正在执行的sql语句
查看>>
Linux服务启动报错日志分析
查看>>
【JZOJ4877】【NOIP2016提高A组集训第10场11.8】力场护盾
查看>>
猎豹MFC--在窗口中显示按钮
查看>>
kafka报错处理
查看>>
shell对字符串分割存入数组中
查看>>
netty学习:UDP服务器与Spring整合
查看>>
微信官方首次表态:微信公众平台不是营销工具
查看>>
深拷贝于浅拷贝
查看>>