我们为什么需要操作系统(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)?的更多相关文章

  1. [No000035]操作系统Operating System之OS Interface操作系统接口

    接口(Interface) 仍然从常识开始… 日常生活中有很多接口:电源插座:汽车油门… 那什么是接口? 连接两个东西.信号转换.屏蔽细节… Interface: electrical circuit ...

  2. VMware安装操作系统(Operating System not found一个错误原因)

    因为指定的IOS文件是多种操作系统的组合,如Win7(32位和64位完全版),那么安装的时候选择一个操作系统类型和ios文件的类型就匹配不上,所以出现这种错误.

  3. 计算机四级网络工程师--《操作系统(Operating System)》重点内容学习

    开篇语 今天开始看<操作系统>,没办法,计算机网络技术还算有点底子.至于操作系统要不是以前看过一些这方面的书籍,以及上学期学了单片机工作原理,我估计我真的是懵逼的!所幸,在网上找的233网 ...

  4. 快速了解 Robot Operating System(ROS) 机器人操作系统

     http://www.ros.org/ 关于ROS About ROS http://www.ros.org/about-ros/ 机器人操作系统(ROS)是用于编写机器人软件的灵活框架.目的在简化 ...

  5. China Operating System 电脑操作系统 2016全球互联网排名

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 电脑操作系统 China Operating System 2016全球互联网排名 == ...

  6. 操作系统(Operating System,OS)

    操作系统(Operating System,OS) 是配置在计算机硬件上的第一层软件,是对计算机硬件系统的首次扩充,是一个计算机系统最基础,也是最重要的系统软件. 操作系统的作用 1 实现对计算机资源 ...

  7. SI - 系统 - 操作系统简述 (Operating System)

    Unix 操作系统:System V.BSD Microsoft Windows Apple Mac OS Linux FreeBSD 安装 https://jingyan.baidu.com/art ...

  8. CREATE FILE encountered operating system error 5(Access is denied.)

    这篇博文主要演示"CREATE FILE encountered operating system error 5(Access is denied.)"错误如出现的原因(当然只是 ...

  9. Linux启动报错missing operating system

    用UltraISO制作了一个Red Hat Enterprise Linux Server release 5.7系统的U盘启动盘,然后在一台PC上安装,由于安装过程中在干别的事情,有些选项没有细看. ...

  10. u盘安装CENTOS后,启动missing operating system ,只能用U盘才能启动系统

    好久之前就想把家里闲置的那台老的不能再老的笔记本换成linux的,用来学习 从N久之前用光盘安装的时候发现光驱坏掉了之后就没有再装过,最近又想安装于是就试了U盘安装 U盘安装过程也很简单,只需要制作一 ...

随机推荐

  1. 心电芯片ADS1292 KS1081 AD8232等的比较

    首先看ADS1292, 从品牌和信誉,TI出品,这个来说应该是相对好一点的,医疗级水准的信号.内置24位的ADC,,噪声和整体功能都很全面,放大倍数1-12倍.应用在穿戴场合的缺点是:这个芯片封装尺寸 ...

  2. posix API的一些理解

    TCP Posix API的理解 我们主要从TCP连接讲解整个的流程. 连接的建立 消息的收发 连接的断开 连接的建立 先看一下一个TCP server的创建过程. #include<stdio ...

  3. 用于演示文稿的新 Dapr 幻灯片

    Dapr 官方博客上(https://blog.dapr.io/posts/2024/03/10/new-dapr-slide-deck-for-your-presentations/)发布了一个新的 ...

  4. day08-Axios

    Axios 1.基本说明 Axios是一个基于promise的网络请求库,作用于node.js和浏览器中.它是 isomorphic 的 (即同一套代码可以运行在浏览器和node.js中).在服务端它 ...

  5. 「AntV」基于众源轨迹数据的三维路网生成与L7可视化

    1. 引言 L7 地理空间数据可视分析引擎是一种基于 WebGL 技术的地理空间数据可视化引擎,可以用于实现各种地理空间数据可视化应用.L7 引擎支持多种数据源和数据格式,包括 GeoJSON.CSV ...

  6. 开源一个教学型分库分表示例项目 shardingsphere-jdbc-demo

    在笔者心中,消息队列,缓存,分库分表是高并发解决方案三剑客. 分库分表之所以被广泛使用,因为工程相对简单,但分库分表并不仅仅是分片,还是需要考虑如何扩缩容(全量同步.增量同步.数据校验等). 因此笔者 ...

  7. python opencv DNN 人脸检测

    import cv2 modelFile = "res10_300x300_ssd_iter_140000_fp16.caffemodel" configFile = " ...

  8. BeanUtils.copyProperties() 详解

    BeanUtils.copyProperties会进行类型转换:BeanUtils.copyProperties方法简单来说就是将两个字段相同的对象进行属性值的复制. 如果 两个对象之间存在名称不相同 ...

  9. YOLOv1/v2/v3简述 | 目标检测

    YOLO系列是目标检测领域里十分经典的结构,虽然目前已经出了很多更高质量更复杂的网络,但YOLO的结构依然可以给算法工程师们带来很多的启发.这3篇论文看下来,感觉像是一本调参说明书,教你如何使用各种t ...

  10. archlinux运行appimage

    1.cd进入appimage所在的目录 cd your_folder 2.赋予appimage运行权限 chmod +x your_file.appimage 3.运行appimage格式文件 ./y ...