第一章:计算机的软硬件基本结构_4
第一章:计算机的软硬件基本结构_4
1.4 操作系统做什么
操作系统的一个功能是提供抽象的接口,另一个主要功能是管理硬件资源。
1.4.1 不要让CPU打盹
在计算机发展的早期,CPU资源十分昂贵,当CPU运行一个程序的时候,该程序需要读写磁盘,CPU就空闲下来了。这极大的浪费了CPU的资源。于是人们编写了一个监控程序,当某个程序暂时无须使用CPU时,监控程序就把另外正在等待CPU资源的程序启动,使得CPU能充分利用起来。这被称为 多道程序。但是这种程序的调度策略太过粗糙。程序之间不分轻重缓急。
稍微改进了一下,程序运行模式就变成了一种协作的模式。每个程序运行一段时间以后都主动让出CPu给其他程序,使得一段时间内每个程序都有机会运行一小段时间。这种程序协作模式叫做 分时系统。但是这种方式如果有一个非常耗时的计算在运行,那就会一直霸占着计算机。
于是出现了更先进的操作系统模式,这便是我们熟悉的 多任务系统,操作系统接管了所有硬件资源,并且本身运行在一个受硬件保护的级别。所有应用程序都以 进程的方式运行在比操作系统权限更低的级别。每个进程都有自己独立的地址空间,使得进程之间的地址空间相互隔离。CPU由操作系统统一分配,每个进程根据进程的优先级高低都有机会得到CPU,但是运行时间超过了一定时间,操作系统就会暂停该进程,将CPU资源分配给其他等待运行的进程。这种CPu的分配方式便是所谓的 抢占式,操作系统可以强制剥夺CPU的资源并分配给它认为目前你最需要的进程。
1.4.2 设备驱动
操作系统作为硬件层的上层,它是对硬件的管理和抽象。对于操作系统上面的运行库和应用程序来说,他们希望看到的是一个统一的硬件访问模式。
当成熟的操作系统出现以后,硬件逐渐被抽象成了一系列概念。在UNIX中,硬件设备的访问方式和访问普通文件方式是一样的;在windos中,图形硬件被抽象成了GDI,声音和多媒体设备被抽象成了DirectX对象;磁盘被抽象成了普通文件系统。硬件的细节全部交给操作系统中的硬件驱动程序来完成。驱动程序可以看作是操作系统的一部分,它往往跟操作系统内核一起运行在特权级,但是它又与操作系统内核间有一定的独立性,使得驱动程序有比较好得灵活性。
第一章:计算机的软硬件基本结构_4相关推荐
- 第一章:计算机的软硬件基本结构_3
第一章:计算机的软硬件基本结构_3 1.3 站得高,望得远 系统软件可以分为两块,一块是平台性的,比如操作系统内核,驱动程序,运行库,和数以千计的系统工具.另一块是用于程序开发的,比如编译器,汇编器, ...
- 【软件设计师】第一章 计算机组成与结构
目录 第一章 计算机组成与结构 第一节 数据的表示 1.进制的转化 2.源码.补码.反码.移码 3.浮点数运算(小阶向大阶对齐,小阶尾数右移) 第二节 计算机结构 运算器与控制器的组成 第三节 指令寻 ...
- 电子计算机的基本结构基于存储程序思想是由,第一章计算机基础知识习题
<第一章计算机基础知识习题>由会员分享,可在线阅读,更多相关<第一章计算机基础知识习题(3页珍藏版)>请在人人文库网上搜索. 1.第一章 计算机基础知识习题一.单项选择题1.通 ...
- 第一章 计算机系统概述 1.2.1 计算机硬件的基本组成 [计算机组成原理笔记]
第一章 计算机系统概述 1.2.1 计算机硬件的基本组成 本笔记参考书目: 计算机组成原理(第六版.立体化教材)白中英.戴志涛 2021王道计算机组成原理视频公开课 本节重点: 冯诺依曼机结构 现代计 ...
- 计算机组成原理-第一章 计算机系统概述(详细知识点总结)
第一章 计算机系统概述 大纲 大纲: (一).计算机发展历程 (二).计算机系统层次结构 计算机硬件的基本组成.计算机软件的分类.计算机的工作过程 (三).计算机性能指标 吞吐量.响应时间.CPU时钟 ...
- 【计算机系统结构】第一章 计算机系统结构基本概念
文章目录 第一章 计算机系统结构基本概念 1.1 计算机系统结构的概念 1.2 计算机体系结构的发展 1.3 系统结构中并行性的发展 1.4 系统结构的设计 1.5 定量分析技术基础 第一章 计算机系 ...
- 医用计算机基础 刘燕,1第一章 计算机基础知识1.ppt
1第一章 计算机基础知识1.ppt CT断层扫描成像设备 眼底成像仪 获取病例数据 数据处理(三维重构) 利用计算机软硬件技术.网络通讯技术等现代化手段,对医院及其所属各部门对人流.物流.财流进行综合 ...
- 人工操作阶段计算机是如何工作的,第一章计算机基础概述全解.ppt
第一章计算机基础概述全解 1.2.3 汉字编码 汉字的编码 国标码:中文内码之一,汉字信息交换的标准编码.国标码是不可能在计算机内部直接采用.于是, 汉字的机内码采用变形国标码 . 国标码:作为转换为 ...
- 操作系统:第一章 计算机系统概述
本文已收录至 Github(MD-Notes),若博客中有图片打不开,可以来我的 Github 仓库:https://github.com/HanquanHq/MD-Notes,涵盖了互联网大厂面试必 ...
最新文章
- css3 各种纸张贴纸效果
- 【错误记录】NDK 配置错误 ( C/C++ debug|arm64-v8a : Could not get version from cmake.dir path )
- 计算机专业毕业论文的参考文献,计算机专业毕业专著类参考文献 计算机专业毕业论文参考文献哪里找...
- redis如何解决秒杀超卖java_Spring Boot + redis解决商品秒杀库存超卖,看这篇文章就够了...
- OpenCV在图像中寻找轮廓的实例(附完整代码)
- Python的日志记录-logging模块的使用
- 飞鸽传书2011帮助文档
- 【NOIp2002】矩形覆盖
- 写给初学asp.net的新人们 新手学习经验
- 基于MATLAB函数mesh绘制由多张曲面围成的三维封闭曲面详解
- gtp java 文件传输_GitHub - zhmgczh/GTPService: 围棋GTP协议应用实例(一个自动对弈程序,命令行交互或命令行与GUI对弈)...
- ligerUI的dialog
- 前度字符串转数组_java中的hashcode 前度刘郎
- 搜索算法之爬山法总结和实现
- 用poi将word表格转excel
- Leecode159:至多包含两个不同字符的最长子串
- 20-Django REST framework-Serializer序列化器
- 奶爸日记24 白砂糖
- android自定义手势,Android编程实现自定义手势的方法详解
- 深入谈谈String.intern()在JVM的实现
热门文章
- 【Pygame实战】末世来临,真正从零开始的残酷生存游戏,你能活多久?
- 分享史上java最牛逼 最简短的代码
- 在美团投放广告的优势、展现形式介绍!
- 计算机毕业设计Java的健身房管理系统(源码+系统+mysql数据库+lw文档)
- 微信二次开发第一弹 —— 与微信握手
- 条码标签纸的种类,常见的条码标签纸有哪些?条码标签纸的用途
- 四个角不是直角的四边形_四边形的特点是有四条直的边和四个直角对吗
- mac怎么更新python_mac上更新python的方法
- 【pwnable.kr】 passcode
- CAD图纸文件太大?三种小方法教你如何清理CAD超大文件。