IO-1、输入输出设备

显示器 输出设备

1、程序调用库函数printf();

2、开始调用系统函数write(),同时确定是需要访问的终端tty。

3、在字符设备接口的函数数组crw_table[]中找到对应的输出函数。

4、根据上面终端tty,确定是进入终端输出函数tty_write()。

5、将字符流写到缓存队列中(弥补IO设备与CPU速度不匹配)。

6、显示器调用con_write()把缓存队列中的字符流显示出来。


图一:输出过程

 

键盘 输入设备

按下键盘开始中断

1、扫描按下的键 查询扫描码 并且翻译成对应的ASCII码。

2、把ASCII码放到read_q缓冲队列的头部,进行相应后再放到secondary队列中,等待系统的使用。

3、在此同时部分的信息还需要回显,比如打了字需要在屏幕上面显示,所以被处理过后的信息还需要放入write_q队列中,然后执行显示器写,最后显示到显示器上。


图二:输入过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值