【操作系统】I/O软件层次结构

1. 前言

偶然看到“程序员的护城河是什么”这个话题,作为一个工作两年多的程序员吧,经常看到网上关于各种35岁危机、裁员甚至猝死之云云。最近也不仅思考起了这个问题:我的护城河是什么

我的护城河不单单是指一直作为一个程序员不被开除,而是我有哪些能力让自己始终不担心生计?或者说是应该提升哪些能力使得自己不对未来那么担忧和迷茫。

思考了一段时间。

首先,要排除家里“有矿”的前提(就算有矿那也得在精神层面不断提升自己吧)。我觉得第一就是要有始终学习的习惯,不然淘汰只会提前到来;第二是要分析自己,找到自己更容易获得资源的那个方向(这样至少机会多点),然后先慢慢积累着。耐心的等待着量变到质变的那一刻;第三就是做好手上的事情,始终觉得“不务正业”的风险太高了,做好擅长的事情,除此之外还要尽可能的了解其他知识达到扩展知识面的目的;最后就是觉得应该在工作中积极争取,不能只做一亩三分地,要主动出击,争取机会(当然了,也不能超出能力范围太多,否则适得其反)。

以上就是我这个工作不算久的职场人的一点思考,或许还略显浅显,欢迎大家交流。

那么接下来继续学习吧。


2. I/O软件层次结构

为了让IO相关的硬件设备能够被上层方便的使用,相关的软件程序是必不可少的。我们通过下图看些IO的软件层次结构:

在这里插入图片描述

2.1 用户层软件

用户层软件工作在用户态,主要有两个作用:

  • 实现用户交互接口;
  • 通过库函数实现系统调用;

2.2 设备独立性软件

设备独立性软件相当于所有设备的管理者。它向上一层提供调用接口,具有设备保护、容错处理、设备分配与回收、数据缓冲区管理、逻辑设备与物理设备映射等功能。

2.3 设备驱动程序

不同设备硬件特性不同,但CPU的指令相同,因此需要各硬件设备商负责编写自己的驱动程序软件。驱动程序负责控制硬件设备,将CPU指令转换成设备操作。

驱动程序是以独立进程的形式存在的

2.4 中断处理程序

对于IO软件而言,中断处理程序也是必不可少的。当CPU发出IO指令后,调用中断程序,保存现场并阻塞当前进程,转向IO操作;当设备完成IO后再次向CPU发起中断信号,中断程序继续执行。因此中断程序还具有直接操作硬件的能力。

在这里插入图片描述

专栏推荐:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Honey Ro

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值