IO-1、输入输出设备

显示器 输出设备

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

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

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

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

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

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

IO-1、输入输出设备_第1张图片

图一:输出过程

 

键盘 输入设备

按下键盘开始中断

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

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

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


IO-1、输入输出设备_第2张图片

图二:输入过程

你可能感兴趣的:(操作系统,IO设备)