《Operating Systems:Three easy pieces》:对操作系统的介绍(一)

2 操作系统的介绍

        如果你正在上大学的操作系统的课程,你应该已经对计算机程序在运行的时候做些什么有了一些了解。如果没有,学习这本书(以及相应的课程)将会是很困难的——所以你应该停止阅读本书,或跑到附近的书店迅速补充这些必要的背景知识。

        当程序运行的时候到底会发生些什么呢?

       Well,运行中的程序做了很简单的事:执行指令。数百万(近些年来,数以十亿计)次每秒,处理器从内存中获取指令,解码,并执行指令。当这条指令完成的时候,处理器继续执行下一条指令,更多的指令直到程序执行完毕。

       就这样,我们刚刚描述了冯诺依曼计算机模型的基础。听起来很简单,是吗?但是在这堂课里,我们将要学习的是,当程序运行时,为了使系统更易于使用,许多其他疯狂的事情正在进行中。


课外补充:

Note:发展历史:电子计算机的问世,奠基人是英国科学家艾兰· 图灵(Alan Turing)和美籍匈牙利科学家冯· 诺依曼(John Von· Neumann)。图灵的贡献是建立了图灵机的理论模型,奠定了人工智能的基础。而冯· 诺依曼则是首先提出了计算机体系结构的设想。冯诺依曼体系结构要点:

(1)计算机处理的数据和指令一律用二进制数表示

(2)顺序执行程序:计算机运行过程中,把要执行的程序和处理的数据首先存入主存储器(内存),计算机执行程序时,将自动地并按顺序从主存储器中取出指令一条一条地执行,这一概念称作顺序执行程序。

(3)计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成:https://img-blog.csdnimg.cn/20181227152816379


关键问题一:如何虚拟化资源

我们将要回答的核心问题之一非常简单:操作系统如何虚拟化资源?这是我们的核心问题之一。为什么操作系统这样做不是主要研究的问题,就像答案一样显而易见:提高系统易用性。所以我们问题关注点集中于怎么实现的:操作系统实现了哪些机制和策略来实现虚拟化?操作系统是如何高效工作的?需要哪些硬件支持?

       实际上,有一组软件负责简化程序的运行(甚至允许您同时运行许多程序),允许程序共享内存,允许程序与设备交互,以及诸如此类的其他有趣的事情。该软件主体称为操作系统,因为它负责确保系统以易于使用的方式正确有效地运行。

       操作系统实现这一点的主要方式是通过一种叫虚拟化的通用技术。也就是说,操作系统采用物理资源(如处理器、内存或磁盘),并将其转换为更通用、更强大、更易于使用的虚拟形式。因此,我们有时将操作系统称为虚拟机。

       当然,为了让用户告诉操作系统该做些什么以及让虚拟机的特性发挥充分作用(如运行程序、或者分配内存或访问文件),操作系统提供了一些可调用的接口(APIs)。实际上,一个典型的操作系统会导出几百个对应用程序可用的系统调用。由于操作系统提供这些调用来运行程序、访问内存和设备以及其他相关操作,我们有时还说操作系统为应用程序提供了一个标准库。

        最后,因为虚拟化技术允许许多程序运行(因此共享CPU),许多程序并发地访问它们自己的结构和数据(因此共享内存),还有许多程序访问设备(因此共享磁盘等等),OS常被称为资源管理器。每个CPU、内存和磁盘都是系统的资源;因此,操作系统的角色是管理这些资源,有效地、公平地或实际上考虑到许多其他可能的目标。为了更好地理解操作系统的作用,我们会在下一节通过一些实例体验。

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值