越往上越接近用户,每一次会利用下层提供的服务实现某些功能(类似计算机网络)
用户层软件
用户层软件实现与用户交互的借口,用户可以直接使用该层提供的,与io操作相关的库函数
用户层讲用户请求翻译成格式化的io请求,并通过系统调用请求操作系统内核的服务
windowsAPI
设备独立性软件
又叫设备无关性软件
1.向上层提供一个调用接口(如r/w)
2.设备的保护
3.差错控制
4.设备的分配与回收
5.数据缓冲区管理
6.建立逻辑设备名到物理设备名的映射关系;根据设备类型选择调用相应的驱动程序【可以让你选择要用哪一台打印机】
通过LUT logical unit table 来确定设备对应的物理设备
关于LUT有两种方式
1.整个系统只设置一张LUT,这就意味着所有用户不能使用相同的逻辑设备名,这个方法只适用于丹用户操作系统
2。为每个用户设置一张LUT,各个用户使用的逻辑设备名可以重复,适用于多用户的操作系统,系统会在用户登录时候,为其建立一个用户管理进程,然后lut就房子啊用户管理进程的pcb中
设备驱动软件
主要负责对硬件设备的具体控制,将上次发出的一系列命令转化成特定设备能听懂的一系列操作,包括设置设备寄存器,检查设备状态等
不同的io设备有不同的硬件特性,具体细节只有设备的厂家才知道,因此厂家要根据设备的硬件设计并提供相应驱动程序
中断处理软件
在io任务完成时,io孔怀之亲会发出一个中断信号,系统会根据这个中断信号的类型,找到对应中断处理程序并执行
