操作系统第8章.pptVIP

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 面向对象操作系统的设计 8.1 面向对象的基本概念 8.2 面向对象和操作系统 8.3 面向对象操作系统的分类 8.1 面向对象的基本概念 “面向对象”或“对象”的概念起源于20世纪60年代末期。进入80年代以后,随着计算机软、硬件技术的发展,面向对象技术在数据库、程序设计语言、CAD/CAM、人工智能技术、程序设计以及操作系统和计算机网络通信等几乎所有的软件领域都受到了极大重视和广泛研究。特别是在操作系统领域中,由于面向对象技术除了在设计方法上更接近于设计人员脑子中的“思维形象”之外,它还具有隐蔽数据以及由消息激活对象等特性,从而它比传统技术更容易应用于分布式操作系统的设计与实现。 因此,许多面向对象的操作系统都正在被研究和开发,以便用作分布式网络操作系统。 例如Windows NT,Solaris 2.x和mache等。这些系统的共同特点是:使用面向对象技术设计和实现操作系统,从而使得所实现的操作系统能够管理一个超大规模的、开放式的、自我发展的以及分布式的计算环境。这里,首先介绍面向对象的基本概念。 1. 对象和面向对象 对象可分为物理对象、抽象对象和计算机对象三个层次。计算机对象是把抽象对象的属性、特征和行为数据化和过程化的结果。本书中所述对象都指计算机对象。 对象是一个由一组数据集以及对这些数据集进行操作的封装模块。对象接收其他对象发来的消息,并由对象自己根据本身的状态和所具有的功能决定是否根据接收到的消息进行操作。另外,对象一般具有自己的存储结构,对存储内容的访问、操作和变更只能由对象自己完成。 面向对象的系统具有两个重要特性,即封闭性(encapsulation)和继承性(inheritance)。封闭性对应于系统中对象的分类抽象化,即每一种类型的对象都定义有对该类对象的属性及操作方法,且只允许按定义的方法对该类对象进行操作。换句话说,一种类型对象的动态性质封闭于该类对象的属性和方法之中。继承性对应于系统的一般化,即具有某些共同属性的对象所组成的类(class)可继承它们的超类(superclass)所具有的属性和操作。 2. 对象的动作 被激活的对象在系统中怎样动作呢?一个面向对象的系统应具备以下两种功能:第一,向其他对象发送消息。这是对象间相互通信的唯一手段。第二,能生成或创建新的对象。这是用对象来描述系统变化所必须的手段。 3. 消息 面向对象的系统中环境对某一对象发出消息以激活该对象,从而通知它需要做什么。消息中一般包含请求对象的标识符以及完成该工作所必需的信息,例如参数值等。另外,请求对象的对象名也可包含在消息中。 4. 类和实例 具有相同属性和行为的对象集合称为类。换句话说,属于同一类中的对象具有相同的存储结构,使用相同的过程集合对数据进行操作。每一个类都具有一个反映其特征的型(type),型提供选择和区分对象操作的依据。 类也可以被看作是对象,而且,类具有分层构造特点,即从具有共同属性和行为特征的对象的集合中,可进一步抽出具有某些特殊属性或行为特征的对象构成该类的子类;而该类又是该子类的超类。 这些超类、类、子类等构成类的层次结构,子类继承其所有高层超类的属性和行为特征,但反过来,超类或类不具有子类所具有的独特的属性与行为特征。 一个类中的对象即是该类的一个实例,实例具体描述一个对象。一般来说,一个类中有多个实例。类和实例的关系近似于数据结构与具体数据的关系。 5. 过程或方法 过程或方法是定义于某一特定类的操作与法则。一种类型的对象只能被事先定义好的过程或方法所操作。不过,不同类型的对象可以分别包含同一过程或方法。例如,在实数子类和二进制数子类中定义“+”法,则实数子类中的对象和二进制数子类中的对象都可使用该方法改变自身的状态。显然,对于同一消息(1,1),实数子类的输出结果是2,而二进制子类的输出结果将是0。 关于对象的几个主要关键词如图所示。 8.2 面向对象和操作系统 本节主要讲述为什么要把面向对象技术引入操作系统和怎样用面向对象技术开发操作系统。 8.2.1 面向对象技术的引入 面向对象技术最初在操作系统中出现是在20世纪60年代后期,J. Dennis等从资源保护的角度出发提出了权能(capability)的概念,权能的概念也是造成面向对象概念产生的重要因素之一。 在操作系统中,无论是软件资源还是硬件资源,传统的设计方法都是使用相应的表格或队列链等数据结构以及相应的标识符(或过程名)来描述它们。对这些资源的访问和使用顺序则是由进程中的程序来规定的。也就是说,对操作系统资源数据的使用是依靠程序员或设计人员所设计的算法来决定的。设计人员必须保证这些算法的正确性,否则将会由于不当的访问操作带来不可估量的恶果。 首先开始解决资源保护问题的尝试是分段。分段把一个

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

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

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档