平时考核成绩:占课程总成绩的15%:(其中考勤占10%,作业占5%) 实验考核成绩:占课程总成绩的25%;(其中实验报告占70%,上机操作30%) 期末考核成绩:占课程总成绩的60%; 八、推荐教材和教学参考书 教材:《Java程序设计》,辛运帏编著,清华大学出版社,2017年第4版。 参考书:《Java程序设计(基础篇)》,Daniel编著,机械工业出版社,2015年第l0版。 参考书:《Java程序设计教程》,Struart Reges编著,机械工业出版社,20l5年第3版。 参考书:《Java程序设计教程》,John Lewis编著,电子工业出版社,20l5年第8版。 参考书:《Java程序设计教程》,雍俊海编著,清华大学出版社,2014年第3版。 撰写人:段林涛 审核人: 学院分管领导签字(盖章): 年月日 18
18 平时考核成绩:占课程总成绩的 15%;(其中考勤占 10%,作业占 5%) 实验考核成绩:占课程总成绩的 25%;(其中实验报告占 70%,上机操作 30%) 期末考核成绩:占课程总成绩的 60%; 八、推荐教材和教学参考书 教 材:《Java 程序设计》,辛运帏编著,清华大学出版社,2017 年第 4 版。 参考书:《Java 程序设计(基础篇)》,Daniel 编著,机械工业出版社,2015 年第 10 版。 参考书:《Java 程序设计教程》,Struart Reges 编著,机械工业出版社,2015 年第 3 版。 参考书:《Java 程序设计教程》,John Lewis 编著,电子工业出版社,2015 年第 8 版。 参考书:《Java 程序设计教程》,雍俊海编著,清华大学出版社,2014 年第 3 版。 撰写人:段林涛 审核人: 学院分管领导签字(盖章): 年 月 日
《操作系统原理》课程教学大纲 一、课程概况 课程代码:04420630 课程名称:操作系统原理 课程学分:3.5 课程学时:56(理论学时:44;实验(实践)学时:12) 课程性质:考试 开课部门:信息科学与工程学院 建议修读学期:04 建议先修课程:计算机导论、C语言程序设计、计算机组成原理、数据结构与算法 适用专业(方向):计算机科学与技术、物联网、网络工程 二、课程地位、作用与任务 《操作系统原理》是计算机科学与技术专业、物联网专业和网络工程专业的一门重要的 专业基础课,同时也是计算机相关专业研究生入学考试课程。操作系统原理与实现是计算机 专业人员必须掌握的专业知识。课程在人才培养方案中对本专业毕业生在以下4个方面起了 重要的支撑作用:(1)具有扎实的操作系统理论基础知识;(2)能够运用自然科学和工程科 学的基本原理,通过查阅科技文献,分析系统中遇到的问题;(3)能够体现科学原理的设计 性,能够利用综合性实验对系统问题进行研究;(4)具有自主学习意识培养的能力。该课程 的特点是理论性强,同时与实践结合紧密。课程的主要任务是运用软件工程原理、数据结构 与算法等专业基础知识向学生系统地介绍操作系统的设计原理和实现技术,使学生理解操作 系统原理的基本概念,培养学生使用操作系统原理去理解和分析操作系统运行机制,掌握操 作系统原理的基本概念、操作系统的地位、功能和保证操作系统高效率运行的重要技术和方 法。 三、课程目标 (一)教学目标 操作系统原理具体要求达到的特定教学目标包括: 1教学目标1.了解操作系统发展历史和特点以及在计算机系统中所处的重要地位;掌握操 作系统体系结构:掌握操作系统原理基础理论知识;熟悉进程、线程管理;了解实时调度算 法;熟悉文件系统;了解作业管理;熟悉处理器和/O设备管理;熟悉操作系统对存储器的 管理。(指标点1.2) 19
19 《操作系统原理》课程教学大纲 一、课程概况 课程代码:04420630 课程名称:操作系统原理 课程学分:3.5 课程学时:56(理论学时:44;实验(实践)学时:12) 课程性质:考试 开课部门:信息科学与工程学院 建议修读学期:04 建议先修课程:计算机导论、C 语言程序设计、计算机组成原理、数据结构与算法 适用专业(方向):计算机科学与技术、物联网、网络工程 二、课程地位、作用与任务 《操作系统原理》是计算机科学与技术专业、物联网专业和网络工程专业的一门重要的 专业基础课,同时也是计算机相关专业研究生入学考试课程。操作系统原理与实现是计算机 专业人员必须掌握的专业知识。课程在人才培养方案中对本专业毕业生在以下 4 个方面起了 重要的支撑作用:(1)具有扎实的操作系统理论基础知识;(2)能够运用自然科学和工程科 学的基本原理,通过查阅科技文献,分析系统中遇到的问题;(3)能够体现科学原理的设计 性,能够利用综合性实验对系统问题进行研究;(4)具有自主学习意识培养的能力。该课程 的特点是理论性强,同时与实践结合紧密。课程的主要任务是运用软件工程原理、数据结构 与算法等专业基础知识向学生系统地介绍操作系统的设计原理和实现技术,使学生理解操作 系统原理的基本概念,培养学生使用操作系统原理去理解和分析操作系统运行机制,掌握操 作系统原理的基本概念、操作系统的地位、功能和保证操作系统高效率运行的重要技术和方 法。三、课程目标 (一)教学目标 操作系统原理具体要求达到的特定教学目标包括: 1.教学目标 1. 了解操作系统发展历史和特点以及在计算机系统中所处的重要地位;掌握操 作系统体系结构;掌握操作系统原理基础理论知识;熟悉进程、线程管理;了解实时调度算 法;熟悉文件系统;了解作业管理;熟悉处理器和 I/O 设备管理;熟悉操作系统对存储器的 管理。(指标点 1.2)
2.教学目标2.任务共享有限资源必然存在资源竞争、调度延时等问题,运行科学和工程的 方法和技术,通过查阅文献,分析操作系统中存在的进程、线程同步,互斥,死锁等问题。 在实时性要求高的操作系统环境下,如何优化调度算法与策略来保证任务因竞争资源延时调 度仍然能满足时间约束条件。(指标点2.2) 3教学目标3.能够运用操作系统原理知识,分析设计算法,对操作系统以下问题进行分析研 究:(1)分析不同进程/线程调度算法对系统资源、系统吞吐量、响应时间以及实时性的影 响;(2)分析管道、内存共享、消息系统,掌握本地计算机内进程通信相关技术;(3)分 析作业调度算法,了解不同作业调度算法对周转时间的影响;(4)分析虚拟存储器管理算 法,熟悉不同页面换入换出策略对系统性能的影响;(5)分析磁盘调度算法,熟悉磁盘调 度算法对I/O性能的影响。(指标点22,指标点4.1) 4.教学目标4.掌握操作系统软件体系结构,了解Liux内核实现,能应用C语言阅读、设 计并实现操作系统关键算法,并能分析系统性能。(指标点12.1)》 (二)本课程支撑的半业要求 1.本课程支撑的毕业要求:(毕业要求1、2、4、12)(半业要求见2018版人才培养方案) 2.本课程支撑的指标点:指标点1.2、2.2、4.1、12.1 (1)指标点1.2:具有扎实的工程基础知识和专业基本理论知识。 (2)指标点22:能够运用数理、自然科学和工程科学的基本原理,通过查阅科技文献,分 析复杂工程中遇到的问题。 (3)指标点4.1:能够体现科学原理的设计性,能够利用综合性实验对复杂工程问题进行研 究。 (4)指标点12.1:具有自主学习意识培养的能力。 (三)课程教学目标与毕业要求对应表 《操作系统原理》课程教学目标与半业要求的对应表 课程名称:操作系统原理 任课教师:段林涛 课程性质:专业必修 课程学分:3.5 课程支撑的半业要求 课程目标、达成途径、评价依据 毕业要求1: 教学目标:了解操作系统发展历史、特点以及在计算机 1.2:具有扎实的工程基础知识和 系统中所处的重要地位;掌握操作系统软件体系结构; 专业基本理论知识 掌握操作系统原理基础理论知识。 达成途径:通过掌握操作系统软件层次结构和系统功能 (作业、进程、线程管理,处理器调度,文件系统,/O 设备管理,存储器管理),训练学生综合运用操作系统原 理基础知识,分析一般操作系统问题。 评价依据:课堂提问、实验、作业和考试。 毕业要求2: 教学目标:任务共享有限资源必然存在资源竞争、调度 22:能够运用数理、自然科学和 延时等问题,运行科学和工程的方法和技术,通过查阅 工程科学的基本原理,通过查阅 文献,分析操作系统中存在的进程、线程同步,互斥, 科技文献,分析复杂工程中遇到 死锁等问题。 20
20 2.教学目标 2. 任务共享有限资源必然存在资源竞争、调度延时等问题,运行科学和工程的 方法和技术,通过查阅文献,分析操作系统中存在的进程、线程同步,互斥,死锁等问题。 在实时性要求高的操作系统环境下,如何优化调度算法与策略来保证任务因竞争资源延时调 度仍然能满足时间约束条件。(指标点 2.2) 3.教学目标 3.能够运用操作系统原理知识,分析设计算法,对操作系统以下问题进行分析研 究:(1)分析不同进程/线程调度算法对系统资源、系统吞吐量、响应时间以及实时性的影 响;(2)分析管道、内存共享、消息系统,掌握本地计算机内进程通信相关技术;(3)分 析作业调度算法,了解不同作业调度算法对周转时间的影响;(4)分析虚拟存储器管理算 法,熟悉不同页面换入换出策略对系统性能的影响;(5)分析磁盘调度算法,熟悉磁盘调 度算法对 I/O 性能的影响。(指标点 2.2,指标点 4.1) 4.教学目标 4. 掌握操作系统软件体系结构,了解 Linux 内核实现,能应用 C 语言阅读、设 计并实现操作系统关键算法,并能分析系统性能。(指标点 12.1) (二)本课程支撑的毕业要求 1. 本课程支撑的毕业要求:(毕业要求 1、2、4、12)(毕业要求见 2018 版人才培养方案) 2. 本课程支撑的指标点:指标点 1.2、2.2、4.1、12.1 (1)指标点 1.2:具有扎实的工程基础知识和专业基本理论知识。 (2)指标点 2.2:能够运用数理、自然科学和工程科学的基本原理,通过查阅科技文献,分 析复杂工程中遇到的问题。 (3)指标点 4.1:能够体现科学原理的设计性,能够利用综合性实验对复杂工程问题进行研 究。 (4)指标点 12.1:具有自主学习意识培养的能力。 (三)课程教学目标与毕业要求对应表 《操作系统原理》课程教学目标与毕业要求的对应表 课程名称:操作系统原理 任课教师:段林涛 课程性质:专业必修 课程学分:3.5 课程支撑的毕业要求 课程目标、达成途径、评价依据 毕业要求 1: 1.2:具有扎实的工程基础知识和 专业基本理论知识 教学目标:了解操作系统发展历史、特点以及在计算机 系统中所处的重要地位;掌握操作系统软件体系结构; 掌握操作系统原理基础理论知识。 达成途径:通过掌握操作系统软件层次结构和系统功能 (作业、进程、线程管理,处理器调度,文件系统,I/O 设备管理,存储器管理),训练学生综合运用操作系统原 理基础知识,分析一般操作系统问题。 评价依据:课堂提问、实验、作业和考试。 毕业要求 2: 2.2:能够运用数理、自然科学和 工程科学的基本原理,通过查阅 科技文献,分析复杂工程中遇到 教学目标:任务共享有限资源必然存在资源竞争、调度 延时等问题,运行科学和工程的方法和技术,通过查阅 文献,分析操作系统中存在的进程、线程同步,互斥, 死锁等问题
的问题。 达成途径:分析死锁产生原因,分析设计预防避免和解 除死锁的方法;在实时性要求高的操作系统环境下,分 析如何优化调度算法与策略来保证任务因竞争资源延时 调度仍然能满足时间约束条件。 评价依据:课堂提问、实验、作业和考试。 毕业要求4: 教学目标:培养学生利用基础理论知识分析工程问题的 4.1:能够体现科学原理的设计 能力,能够运用操作系统原理知识,分析设计算法,对 性,能够利用综合性实验对复杂 操作系统存在的关键问题进行分析研究。 工程问题进行研究。 达成途径:分析不同进程/线程调度算法对系统资源、系 统吞吐量、响应时间以及实时性的影响;分析管道、内 存共享、消息系统,掌握本地计算机内进程通信相关技 术;分析作业调度算法,了解不同作业调度算法对周转 时间的影响;分析虚拟存储器管理算法,熟悉不同页面 换入换出策略对系统性能的影响;分析磁盘调度算法, 熟悉磁盘调度算法对I/O性能的影响。 评价依据:课堂提问、实验、作业和考试。 毕业要求12: 教学目标:了解操作系统内核设计方法,掌握操作系统 12.1:具有自主学习意识培养的 软件体系结构,了解Liux内核实现。 能力。 达成途径:掌握C语言高级编程能力,能应用C语言阅 读部分Linuⅸ内核源码,了解Linuⅸ内核实现方法,设 计并实现现代操作系统中的部分关键算法,并能分析不 同算法对操作系统系统性能的影响。 评价依据:课堂提问、实验、作业和考试。 四、课程内容 教学内容 作业要求 第一章操作系统概述 自学内容:安装Linux,搭建并配置C语言 1.10操作系统的目标和作用 运行环境(编辑环境、编译器、运行、调试 1.11操作系统发展过程 器。 1.12操作系统基本特征 课堂作业: 1.13操作系统主要功能 1.14操作系统结构设计 1批处理系统、分时系统、实时系统、网络 知识点: 系统各有什么特点? 2.说明Cache的作用? 1操作系统在现代计算机系统中的地位,设计 3.列举操作系统为方便用户操作计算机系 目标和作用 统提供的五个功能。 2操作系统分类机器各自特点 课外作业: 3.操作系统的基本特征 4.操作系统提供软件(作业、进程、线程、文 1.完成本章小结 件)和硬件(处理器、内存、/O)管理功能 2.并发性和并行性的区别? 5.操作系统体系结构 3.操作系统为用户提供了哪些使用接口? 4.单处理器系统、多处理器系统、分布式系 统中如何保持缓存一致性的? 21
21 的问题。 达成途径:分析死锁产生原因,分析设计预防避免和解 除死锁的方法;在实时性要求高的操作系统环境下,分 析如何优化调度算法与策略来保证任务因竞争资源延时 调度仍然能满足时间约束条件。 评价依据:课堂提问、实验、作业和考试。 毕业要求 4: 4.1:能够体现科学原理的设计 性,能够利用综合性实验对复杂 工程问题进行研究。 教学目标:培养学生利用基础理论知识分析工程问题的 能力,能够运用操作系统原理知识,分析设计算法,对 操作系统存在的关键问题进行分析研究。 达成途径:分析不同进程/线程调度算法对系统资源、系 统吞吐量、响应时间以及实时性的影响;分析管道、内 存共享、消息系统,掌握本地计算机内进程通信相关技 术;分析作业调度算法,了解不同作业调度算法对周转 时间的影响;分析虚拟存储器管理算法,熟悉不同页面 换入换出策略对系统性能的影响;分析磁盘调度算法, 熟悉磁盘调度算法对 I/O 性能的影响。 评价依据:课堂提问、实验、作业和考试。 毕业要求 12: 12.1:具有自主学习意识培养的 能力。 教学目标:了解操作系统内核设计方法,掌握操作系统 软件体系结构,了解 Linux 内核实现。 达成途径:掌握 C 语言高级编程能力,能应用 C 语言阅 读部分 Linux 内核源码,了解 Linux 内核实现方法,设 计并实现现代操作系统中的部分关键算法,并能分析不 同算法对操作系统系统性能的影响。 评价依据:课堂提问、实验、作业和考试。 四、课程内容 教学内容 作业要求 第一章 操作系统概述 1.10 操作系统的目标和作用 1.11操作系统发展过程 1.12 操作系统基本特征 1.13 操作系统主要功能 1.14 操作系统结构设计 知识点: 1.操作系统在现代计算机系统中的地位,设计 目标和作用 2.操作系统分类机器各自特点 3.操作系统的基本特征 4.操作系统提供软件(作业、进程、线程、文 件)和硬件(处理器、内存、I/O)管理功能 5. 操作系统体系结构 自学内容:安装 Linux,搭建并配置 C 语言 运行环境(编辑环境、编译器、运行、调试 器)。 课堂作业: 1.批处理系统、分时系统、实时系统、网络 系统各有什么特点? 2.说明 Cache 的作用? 3.列举操作系统为方便用户操作计算机系 统提供的五个功能。 课外作业: 1.完成本章小结 2.并发性和并行性的区别? 3.操作系统为用户提供了哪些使用接口? 4.单处理器系统、多处理器系统、分布式系 统中如何保持缓存一致性的?
第二章进程管理 自学内容:客户服务器系统的通信 21进程基本概念 课堂作业: 2.2进程控制 2.3进程同步与互斥 1.叙述进程上下文切换时内核处理流程? 2.4进程通信 2.说明程序段在什么情况下可以并发执行, 2.5线程 在什么情况下需要顺序执行? 知识点: 3.说明引起进程/线程状态变迁的原因? 课外作业: 1.程序执行方式(并行、并发、顺序) 1完成本章小结 2.进程状态变迁 2.什么是原语,进程控制为什么需要设计为 3.进程控制块 原语? 4进程的创建、终止、阻塞、唤醒、挂起、激 3.基于共享内存实现进程间通信 活原语 4.基于管道实现进程间通信 5.信号量 5.举例说明在什么情况下多个线程并发执 6.同步与互斥问题 行性能不及单线程顺序执行? 7.进程通信的类型与实现方法 6.使用P,V操作描述生产者消费者同步与互 8线程基本概念 斥问题。 9.线程控制与状态变迁 10.线程间的同步与互斥 第三章处理器调度与死锁 自学内容:多处理器调度算法 3.1处理器调度层次 3.2调度模型与调度准则 课堂作业: 3.3调度算法 1.哪种进程调度算法可能导致进程饥饿, 3.4死锁产生原因与条件 为什么? 3.5死锁预防 2.有哪些常见的调度算法,各有什么特 3.6死锁避免 点? 3.7死锁检测与解除 3.抢占式与非抢占式各有什么特点,系统重 知识点: 新进行调度和处理器分派的条件是什么? 1.高级调度、中级调度与低级调度 课外作业: 2.基于(多级)队列的调度模型 1.完成本章小结 3.先来先服务、短进程优先、高优先级优先、 2.介绍实时系统经典的调度算法? 时间片轮转、(抢占/非抢占)实时调度算法 3.死锁产生原因和四个必要条件是什么? 4静态资源分配的预防死锁算法 4.银行家算法流程是什么,如何运用银行家 5,系统安全状态 算法避免死锁? 6.动态资源分配的银行家算法 7检测死锁发生后的主动解除死锁方法 第四章存储器管理 自学内容:Intel Pentium处理器体系结构。 4.1存储器的层次结构 4.2程序的装入与链接 课堂作业: 4.3内存的连续分配与回收方式 1什么是碎片?不同内存管理方法产生什 4.4分页存储管理方式 么类型的碎片? 4.5分段存储管理方式 4.6段页式存储管理方式 2.可变分区回收有哪几种情况? 4.7虚拟存储器管理 4.8页面置换算法 3.固定分区分配与回收方式有什么优势和 22
22 第二章 进程管理 2.1 进程基本概念 2.2 进程控制 2.3 进程同步与互斥 2.4 进程通信 2.5 线程 知识点: 1.程序执行方式(并行、并发、顺序) 2.进程状态变迁 3.进程控制块 4.进程的创建、终止、阻塞、唤醒、挂起、激 活原语 5.信号量 6.同步与互斥问题 7.进程通信的类型与实现方法 8.线程基本概念 9.线程控制与状态变迁 10.线程间的同步与互斥 自学内容:客户服务器系统的通信 课堂作业: 1.叙述进程上下文切换时内核处理流程? 2.说明程序段在什么情况下可以并发执行, 在什么情况下需要顺序执行? 3.说明引起进程/线程状态变迁的原因? 课外作业: 1.完成本章小结 2.什么是原语,进程控制为什么需要设计为 原语? 3.基于共享内存实现进程间通信 4.基于管道实现进程间通信 5.举例说明在什么情况下多个线程并发执 行性能不及单线程顺序执行? 6.使用 P,V 操作描述生产者消费者同步与互 斥问题。 第三章 处理器调度与死锁 3.1 处理器调度层次 3.2 调度模型与调度准则 3.3 调度算法 3.4 死锁产生原因与条件 3.5 死锁预防 3.6 死锁避免 3.7 死锁检测与解除 知识点: 1.高级调度、中级调度与低级调度 2.基于(多级)队列的调度模型 3.先来先服务、短进程优先、高优先级优先、 时间片轮转、(抢占/非抢占)实时调度算法 4.静态资源分配的预防死锁算法 5.系统安全状态 6.动态资源分配的银行家算法 7.检测死锁发生后的主动解除死锁方法 自学内容:多处理器调度算法 课堂作业: 1. 哪种进程调度算法可能导致进程饥饿, 为什么? 2. 有哪些常见的调度算法,各有什么特 点? 3.抢占式与非抢占式各有什么特点,系统重 新进行调度和处理器分派的条件是什么? 课外作业: 1.完成本章小结 2.介绍实时系统经典的调度算法? 3.死锁产生原因和四个必要条件是什么? 4.银行家算法流程是什么,如何运用银行家 算法避免死锁? 第四章 存储器管理 4.1 存储器的层次结构 4.2 程序的装入与链接 4.3 内存的连续分配与回收方式 4.4 分页存储管理方式 4.5 分段存储管理方式 4.6 段页式存储管理方式 4.7 虚拟存储器管理 4.8 页面置换算法 自学内容:Intel Pentium 处理器体系结构。 课堂作业: 1.什么是碎片?不同内存管理方法产生什 么类型的碎片? 2.可变分区回收有哪几种情况? 3.固定分区分配与回收方式有什么优势和