网站大量收购独家精品文档,联系QQ:2885784924

操作系统理论的探索(之一).doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统理论的探索(之一).doc

  操作系统理论的探索(之一)   操作系统的定义   操作系统的定义是什么,它是否引起过你的注意,在此,将以全新的角度来分析这个古老而简单的定义,为你展示一个新的思维空间。通过引入操作协议的概念来分析操作系统的定义,并进一步按用户角度分析操作系统的需求,推导新的操作系统含义。作为整个系列的第一篇,本文从简单的操作系统定义入手进行讨论,所有的观点都是一家之言,希望能激发大家对操作系统理论的兴趣。   序言   随着开发源代码运动的持续,越来越多的人都加入了操作系统代码分析的大浪中,我也曾经下海,被代码中有很多妙的技巧吸引,不过在看过一段时间后,感觉如果只是一味地看代码,最终的结果是即使开发出新的操作系统仍旧是老模式的一个翻版。   源代码的出现,对于我们这些计算机技术落后地区的程序员来讲,提供了进行操作系统设计的一个必要条件,设计的门槛降低了,使得多数程序员自己开发一个简单的操作系统成为可能,但它仅是个必要条件,不是充分条件。它的出现本身不能改变我们的技术落后地位,最多是让我们追赶上源代码所达到的水平,想要超越,只能老老实实地进行理论上的探索,源代码是一个我们迅速缩短差距的工具。   因此我将重心转移到了理论探索上,希望能够分析出操作系统的发展方向,找到超越的突破口,然后再投入到现有代码的分析中,目的是设计下一代操作系统的模型,现在尚处于理论的探索中。   由于水平有限,感觉难度很大,期望能得到更多的帮助,因此借这个系列的方式,描述我这段时间的思考,与大家交流。所写的观点都是一家之言,肯定存在不少偏颇之处,恳请各位的指教。   1、传统定义   计算机软件分为系统软件和应用软件两大类   系统软件用于管理计算机本身和应用程序   应用软件是为满足用户特定需求而设计的软件   操作系统是最基本的系统软件,它和系统工具软件构成了系统软件   但给操作系统下定义是困难的,至今没有一个能公认的统一说法   以下列举了现今操作系统教材中常见的几种观察操作系统的角度   自顶向下的角度,操作系统是对裸机的第一层软件,是对机器的第一次扩展,为用户提供了一台与实际硬件等价的虚拟机   自底向上的角度,操作系统是资源管理,在相互竞争的程序之间有序地控制对处理器、存储器以及其他I/O接口设备的分配   从软件分类角度看,操作系统是最基本的系统软件,它控制着计算机所有的资源并提供应用程序开发的接口   从系统管理员角度看,操作系统合理地组织管理了计算机系统的工作流程,使之能为多个用户提供安全高效的计算机资源共享   从程序员角度看(即从操作系统产生的角度),操作系统是将程序员从复杂的硬件控制中解脱出来,并为软件开发者提供了一个虚拟机,从而能更方便的进行程序设计   从一般用户角度看,操作系统为他们提供了一个良好的交互界面,使得他们不必了解有关硬件和系统软件的细节,就能方便地使用计算机   从硬件设计者看,操作系统为计算机系统功能扩展提供了支撑平台,使硬件系统与应用软件产生了相对独立性,可以在一定范围内对硬件模块进行升级和添加新硬件,而不会影响原先应用软件   总的来讲,传统的操作系统定义如下:   操作系统是控制和管理计算机系统内各种硬件和软件资源、合理有效地组织计算机系统的工作,为用户提供一个使用方便可扩展的工作环境,从而起到连接计算机和用户的接口作用   此定义是以操作系统的具体功能为基础的定义方式   可以按如下示意图来描述操作系统的在计算机系统中的位置   接口示意图   按层次模型看是   在传统定义方式中,操作系统和用户的关系是被动和主动的关系,即用户将自己对计算机的需求以过交互操作的方式命令操作系统完成,而操作系统是根据完成任务的需要分配资源,它仅有的主动权就是在于如何分配与何时分配。   在此将这种对操作系统定义方式称为被动式定义,从理论上认为操作系统是完全按用户的要求来完成自己的工作。   2、操作协议   操作协议的定义   为了进一步分析操作系统的含义,引入一个新概念--操作协议   产品展现给使用者的是其操作接口,如同遥控器和软件的用户界面   为了让用户更方便使用产品,它会有一个使用说明,这个说明首先说明了产品的各种操作接口的含义,然后说明各种操作接口的限制,而用户使用产品时必须遵守这种说明,不然就不能正常使用该产品,甚至导致该产品的损坏或损坏了其他相关产品   这种说明就是要求产品使用者遵守的操作协议,因此定义如下   操作协议的定义:   一种产品说明,描述产品操作接口及其约束,并且要求产品使用者遵照说明使用产品,而且只有按说明进行操作才能得到正确的结果,否则导致操作无效。   操作接口是产品的第一说明,它描述了产品的基本功能,

您可能关注的文档

文档评论(0)

ggkkppp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档