操作系统结构.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 操作系统结构 如何设计操作系统 考察所提供的服务 考察为用户和程序员提供的接口 研究系统的各个组成部分及其相互关系 操作系统服务 操作系统负责提供一个环境以执行程序,向程序和使用程序的用户提供一定的服务。 服务包含许多有用的函数 操作系统服务 用户界面 命令行界面 批界面 图形用户界面 操作系统服务 程序执行 – 系统能将程序装入内存并运行,结束包括正常或不正常结束 I/O 操作 – 用户通常不能直接控制I/O 设备,操作系统必须提供进行I/O 操作的方法。 文件系统操作 – 程序需要读、写、创建、删除文件 操作系统服务 通信 – 进程间交换信息一种发生在同一台计算机上运行的两个进程之间,另一种发生在由计算机网络连接起来的不同计算机上的进程之间。通信通过共享内存或消息传递来实现 错误检测 –错误可能发生在CPU和内存中、 I/O 设备中、用户程序中,对于每种错误,操作系统应采取适当行动,以确保正确和一致的计算 资源分配 – 当多个用户登录到系统上或多个作业同时执行时,系统必须为每个进程分配资源 统计– 跟踪记录哪些用户使用了多少和什么类型的计算机资源。这种记录用于记帐或建立使用统计数据 保护 – 确保所有对系统资源的访问都是受控制的,特别是在多用户计算机系统中 操作系统的用户界面 用户与操作系统的界面 命令行界面 图形用户界面 命令解释程序 在 MS-DOS中称为命令行解释程序 UNIX中称为外壳(shell) (cf. kernel) 作用:获取并执行用户指定的下一条命令。 文件的创建、删除、列出、打印、复制、执行 命令解释程序 执行命令的方法: 命令解释程序本身包含代码 命令的数量决定了命令解释程序的大小 由系统程序实现命令 rm file.txt 搜索名为rm的文件,将文件装入内存,并用参数file.txt来执行。 图形用户界面 GUI提供基于鼠标的窗口和菜单系统作为接口 系统调用 系统调用 提供了进程与操作系统之间的接口 调用通常以汇编语言指令的形式提供 有些语言 (e.g. C, C++)已经取代了汇编语言而直接用于系统编程,允许直接调用系统调用,这时系统调用通常类似预定义的函数或子程序调用 Win32 application programming interface (API) for Microsoft Windows 例:从一个文件读取数据并复制到另一个文件 系统调用 一般根据应用程序接口(API)设计程序 API是一系列适用于程序员的函数,含参数及返回值 win32 API POSIX API Java API 处理一个调用open( )系统调用的用户应用程序 系统调用 运行程序向操作系统传递参数通常用三种方法 通过寄存器来传递参数 将参数存放在内存的块或表中,并将块的地址作为参数传递给寄存器 参数也可放在或压到堆栈中,并通过操作系统弹出堆栈。 参数作为表传递 系统调用类型 进程控制 包括分配释放内存 文件管理 设备管理 信息维护 通信 进程控制 正常中断 (退出) 非正常中断 (终止) 创建进程 (fork, exec),终止进程 等待时间,事件,信号, etc. 分配释放内存 (malloc, free) 文件管理 创建,删除文件 打开, 关闭 读,写,重定位 获取,设置文件属性 设备管理 请求,释放设备 读,写,重定位 获取,设置设备属性 信息维护 获取,设置时间或日期 获取,设置系统数据 CPU 等级, 内存大小, 空闲内存 用户数,操作系统版本,当前用户数 获取,设置目标属性 进程 文件 设备 通信 两种通信模型: 消息传递 or 共享内存 系统程序 系统程序 提供一个方便的环境,以开发和执行程序 (cf. Fig 1.1) 硬件 操作系统 系统程序 应用程序 绝大多数用户所看到的操作系统是由系统程序而不是实际系统调用定义的. 系统程序 系统程序可分为: 文件管理 状态信息 文件修改 (e.g. text editors) 程序语言支持 编译器, 汇编器, 链接程序,解释程序,调试程序 程序装入和执行 绝对加载程序、重定位加载程序、链接编辑器 通信 邮件,浏览器, etc. 操作系统设计和实现 设计目标 机制和策略 实现 设计目标 系统设计受到硬件选择和系统类型的影响 用户目标 – 容易使用、容易学习、可靠、安全、快速 系统目标 – 容易设计、实现和维护、灵活、可靠、没有错误且高效 不同的要求能形成对不同环境的不同解决方案 机制和策略 机制决定了如何来做 策略决定做什么 实现 操作系统的传统实现方式是用汇编语言编写,现在大多使用高级语言如C或者C++ 使用高级语言的优点: 代码编写更快 更为紧凑 更容易理解和调试 更容易从一个硬件移植到另一个硬件上 反对

文档评论(0)

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

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

1亿VIP精品文档

相关文档