我们为什么需要操作系统(Operating System)?
我们为什么需要操作系统(Operating System)?
a) 从计算机体系的角度,OS向下统筹了所有硬件资源(1),向上为所有软件提供API调用(2),使得软件程序员不必知晓硬件的具体细节,实现了计算机体系的分层;

b) 从资源管理的角度,OS对有限的计算资源进行分配(3),是软件按照“某种理想的状态序列”运行(4),以获得“性能与用户体验上的最优解”(5)。
带来的一些问题:
1> OS怎么统筹硬件资源?
答:暂时不知道,但肯定具有统一的协议.
2> OS 与 OS之间怎么统一API,使得软件具有可移植性?
答:POSIX协议.
3> 为什么要分配计算资源,而不是每个程序直接执行即可?
答:合理地分配计算资源,可以更高效地完成任务;
3.1> 怎么分配计算资源?
答:首先要对计算资源进行虚拟化,其次是其次;
3.2> 什么叫资源的虚拟化?
答:就是将物理资源转换为更通用、更easy to use 的虚拟形式【建立抽象层】,这也是我们为什么要对资源进行虚拟化的原因。
4/5> 什么叫软件的“理想的状态序列”?
答:我们希望当很多软件按照这个“理想的状态序列”运行的时候,能够兼顾高性能与用户体验;
4.1> 怎么得到“理想的状态序列”?
答:通过OS的进程调度算法(这是我接下来会鸽的话题);
5> 什么叫高性能?什么叫用户体验?
答:高性能定义为一些作业从开始到结束的平均时间,时间越短,性能越高(好学术啊),总之同样的作业,完成的越快性能越高嘛;用户体验的话,比如你开始一个作业,却因为前面有作业正在占用计算资源,你的作业迟迟得不到回应,你肯定很急,但不考虑用户体验的OS只告诉你先别急;
5.1> 一定要兼顾么?不能只取其一么?
答:可以,具体看应用场景的需求。
总结一下,操作系统的目的之一是:在所有资源受控的情况下,为一些用户提供提供高性能与高体验的服务。
// 爆肝更新cpu虚拟化部分中…
我们为什么需要操作系统(Operating System)?的更多相关文章
- [No000035]操作系统Operating System之OS Interface操作系统接口
接口(Interface) 仍然从常识开始… 日常生活中有很多接口:电源插座:汽车油门… 那什么是接口? 连接两个东西.信号转换.屏蔽细节… Interface: electrical circuit ...
- VMware安装操作系统(Operating System not found一个错误原因)
因为指定的IOS文件是多种操作系统的组合,如Win7(32位和64位完全版),那么安装的时候选择一个操作系统类型和ios文件的类型就匹配不上,所以出现这种错误.
- 计算机四级网络工程师--《操作系统(Operating System)》重点内容学习
开篇语 今天开始看<操作系统>,没办法,计算机网络技术还算有点底子.至于操作系统要不是以前看过一些这方面的书籍,以及上学期学了单片机工作原理,我估计我真的是懵逼的!所幸,在网上找的233网 ...
- 快速了解 Robot Operating System(ROS) 机器人操作系统
http://www.ros.org/ 关于ROS About ROS http://www.ros.org/about-ros/ 机器人操作系统(ROS)是用于编写机器人软件的灵活框架.目的在简化 ...
- China Operating System 电脑操作系统 2016全球互联网排名
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 电脑操作系统 China Operating System 2016全球互联网排名 == ...
- 操作系统(Operating System,OS)
操作系统(Operating System,OS) 是配置在计算机硬件上的第一层软件,是对计算机硬件系统的首次扩充,是一个计算机系统最基础,也是最重要的系统软件. 操作系统的作用 1 实现对计算机资源 ...
- SI - 系统 - 操作系统简述 (Operating System)
Unix 操作系统:System V.BSD Microsoft Windows Apple Mac OS Linux FreeBSD 安装 https://jingyan.baidu.com/art ...
- CREATE FILE encountered operating system error 5(Access is denied.)
这篇博文主要演示"CREATE FILE encountered operating system error 5(Access is denied.)"错误如出现的原因(当然只是 ...
- Linux启动报错missing operating system
用UltraISO制作了一个Red Hat Enterprise Linux Server release 5.7系统的U盘启动盘,然后在一台PC上安装,由于安装过程中在干别的事情,有些选项没有细看. ...
- u盘安装CENTOS后,启动missing operating system ,只能用U盘才能启动系统
好久之前就想把家里闲置的那台老的不能再老的笔记本换成linux的,用来学习 从N久之前用光盘安装的时候发现光驱坏掉了之后就没有再装过,最近又想安装于是就试了U盘安装 U盘安装过程也很简单,只需要制作一 ...
随机推荐
- iview 多弹框,显示z-index 不对,被遮挡的解决方案 goTop函数 modal Drawer 抽屉
iview 多弹框,显示z-index 不对,被遮挡的解决方案 goTop函数 modal 原因 弹多个modal框的时候,会被遮挡,导致后显示的框在下面 解决原理 获取当前弹框的z-index,然后 ...
- C# 常用特性(Attribute)
目录 指定方法实现的属性MethodImplAttribute 标记不再使用的程序元素ObsoleteAttribute 指定属性或事件的说明DescriptionAttribute 未完待续... ...
- day03-分析SpringBoot底层机制
分析SpringBoot底层机制 Tomcat启动分析,Spring容器初始化,Tomcat如何关联Spring容器? 1.创建SpringBoot环境 (1)创建Maven程序,创建SpringBo ...
- 应用层01-HTTP
2.1 应用层协议原理 2.1.1 网络应用程序体系结构 研发网络应用的程序的核心是写出能够运行在不同的端系统和通过网络彼此通信的程序. 例如: Web应用程序 客户:浏览器程序(进程) 服务:Web ...
- 10_PCM转WAV
播放器是无法直接播放PCM的,因为播放器并不知道PCM的采样率.声道数.位深度等参数.当PCM转成某种特定的音频文件格式后(比如转成WAV),就能够被播放器识别播放了. 本文通过2种方式(命令行.编程 ...
- 关于全景(360)图片拼接的方法(Opencv3.0 Stitcher)
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...
- python高级技术(网络编程一)
一 socket是什么 链接socket前要熟悉计算机网络基础请看链接:https://www.cnblogs.com/coderxueshan/p/17344739.html Socket是应用层 ...
- k8s-master 设置调度污点
k8s master 调度污点 NoSchedule:K8Snode添加这个effecf类型污点,新的不能容忍的pod不能再调度过来,但是老的运行在node上不受影响 NoExecute:K8Snod ...
- Clang Preprocessor 类的创建
参考: Create a working compiler with the LLVM framework, Part 2 How to parse C programs with Clang: A ...
- springboot mybatis 多数据源整合
1.在application.properties中配置两个数据库: # db01 database spring.datasource.db01.jdbc-url=jdbc:oracle:thin: ...