操作系统的设计与实现要点详解.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 内容提要 代码结构组织与数据结构定义 专题1——操作系统的启动过程 专题2——操作系统的进程管理 专题3——操作系统的设备管理 专题4——操作系统的内存管理 专题5——操作系统的文件管理 内容提要 * Minix中的时钟设备管理 时钟设备的服务目标 维护日期时间 基于时间片轮转对用户进程进行调度 对CPU的使用进行记帐 定时器服务——闹钟(用户进程)、监视定时(系统任务) 直方图检视和统计信息搜集 Minix时钟任务的设计原理 两个系统任务:Clock_Task和Syn_Alarm_Task 所涉及的各种方法:时间统计、定时器处理、时间片调度 所使用的机制:基于消息的进程通信、硬件中断和软件中断处理 时钟中断的处理 硬件中断:8259捕获——底层驱动历程——发送消息——系统任务 软件中断:CPU指令——sys_call调用——发送消息——系统任务 对时钟设备管理的原理掌握和实现过程理解 具备完整的中断、消息知识体系 针对各种目标,了解处理过程和实现机制 操作系统的设备管理 * Minix时钟设备基本原理 时钟硬件设置 可编程时钟,方波模式(60HZ) 时间片设定:100微秒 时钟服务实现方法 系统时间维护:启动时间+消耗滴答 定时器实现:虚拟时钟链表 时钟服务的重要函数 硬件中断处理:clock_handler 软件中断处理:do_****和syn_alarm_task 函数层次的理解和掌握 最底层:clock_handler(硬件中断) 中间层:clock_task和syn_alarm_task(系统任务) 最高层:do_****和其他功能函数(实现代码) 操作系统的设备管理 * Minix中的时钟驱动实现 核心函数:kernel\clock.c(11000行) clock_task:循环等待消息的处理过程 syn_clock_task:自阻塞机制的处理过程 各种功能函数的实现 基于中断原理和进程通信原理的系统调用实现 用户进程发出系统调用指令——软件中断机制 时钟滴答到达时间片数目——硬件中断机制 定时器与同步闹钟的使用——信号传送机制(MM中转) 操作系统的设备管理 * 内容提要 代码结构组织与数据结构定义 专题1——操作系统的启动过程 专题2——操作系统的进程管理 专题3——操作系统的设备管理 专题4——操作系统的内存管理 专题5——操作系统的文件管理 内容提要 * Minix中的内存服务器管理 内存服务器的启动和初始化 Boot引导程序将内存服务器的可执行文件放入正确的位置 TaskTab中定义与内存服务器相关的表项 Main函数中初始化进程表项,填充服务器进程队列 restart所有系统任务和服务器进程,轮转到MM进程时进行初始化 内存服务器的主要任务 负责处理涉及到内存的重要系统调用 负责管理用户内存空间(分配与回收) 负责与内核(sys_task)通信,实现“决策+机构”的分离 内存服务器的具体实现 独立的主程序——运行在非核心空间 处理多个系统调用(图4-34) 管理进程表和空洞表 对 内存服务器实现机制的了解 清晰掌握内存空洞表的管理机制 结合进程表概念、进程通信、进程调度的基本知识,了解各种系统调用的操作细节 操作系统的设备管理 * Thanks for your time! Questions Answers 全文结束 操作系统课程讲义 操作系统课程讲义 * 内容提要 代码结构组织与数据结构定义 专题1——操作系统的启动过程 专题2——操作系统的进程管理 专题3——操作系统的设备管理 专题4——操作系统的内存管理 专题5——操作系统的文件管理 内容提要 * 代码结构组织 代码结构与数据结构 Minix系统代码结构 头文件:usr/include 源代码:usr/src 无法归类的公共头文件 Posix标准头文件:sys/ 操作系统头文件:minix/ IBM PC头文件:ibm/ 系统核心代码:kernel/ 内存管理器代码:mm/ 文件系统代码:fs/ 库例程代码:lib/ init源代码:tools/ 命令代码:commands/ 网络源代码:inet/ 测试工具源代码:test/ * 代码结构组织 代码结构与数据结构 磁盘 任务 终端 任务 时钟 任务 系统 任务 以太网 任务 …… 内存 管理器 文件 系统 网络 服务器 …… Init 进程 用户 进程 用户 进程 用户 进程 用户 进程 …… 进程管理 系统核心代码 kernel/ 独立代码模块 mm、fs... 源代码 头文件 系统配 置定义 编译环 境定义 硬件环 境定义 数据类 型定义 DS、接 口定义 常量与 宏定义 全局变 量定义 * 头文件的定义与组织 头文件有哪些功能? 功能1:定义数据结构、定义函数接口 功能2:宏

文档评论(0)

我是兰花草 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档