本课程是校重点建设课程、校精品在线开放课程,所属的计算机科学与技术专业为“双万计划”国家级一流本科专业建设点,首批卓越计划试点专业,2016年通过工程教育专业认证。授课团队长期从事计算机专业的教学与研究工作,研究成果丰硕,指导学生竞赛获奖50多项。
一、课程主要内容
《操作系统原理与Linux实践》作为计算机科学与技术专业的核心课程之一,是构建计算机系统知识体系结构的重要支撑课程。课程从计算机软、硬件资源管理的视角深入剖析现代操作系统的基本原理和实现方法,训练学生问题求解、系统设计和编码实现的能力,养成抽象的计算思维模式,培养具有软件、乃至系统软件设计和开发能力的计算机专业人才。
二、课程授课对象
课程面向计算机及相关专业,在第三或第四学期开设,希望深入了解计算机工作原理的爱好者也可选择。社会学习者要具备计算机基础知识,如基本掌握C或C++语言、数据结构以及计算机硬件基础知识。
三、教学策略与特色
以MOOC在线学习模式开展教学,辅以慕课堂开展在线微测,以平台留言+QQ等开展线下辅导,课程以微课讲述、实验、微测、练习、翻转课堂、项目研讨析等多种形式开展教学。
1.突出应用型特点。课程结合互联网+、ACM、软件外包等学科竞赛、引入企业真实项目,提高学生的算法分析和设计能力,尤其Linux平台下算法应用解决实际问题的能力。
2.突出能力提升训练。以项目式研讨和案例分析比较贯穿教学过程,依托大学MOOC平台和慕课堂开展算法分析和编码训练,提高学生的自主学习能力,实现从知识传授到能力提升的转变。
3.突出综合素质养成。线上学习共同体模式开展讨论和个性化指导,提高学生的团队合作能力;以项目教学提升动手能力,促进计算思维养成;以学科竞赛辅导提高学生创新创业能力。
4.突出过程评价。每章节配套作业、微测、实验指导等,形成60%的平时成绩以及40%的期终考核,教学团队和研究生助教可以保障及时反馈与问题响应。
课程目标1:能理解现代操作系统的基本原理和主要功能模块,如用户界面、进程管理、存储管理、文件系统和设备管理的实现方法和主要算法,从而能解剖分析、深入理解现代操作系统,初步具备计算机系统软件设计能力。
课程目标2:能根据进程管理、存储器管理、设备管理等的具体要求,优化方案设计,选择或设计算法,设计实验环境,实验过程中能准确记录实验数据并能分析和解释数据,调整和改进实验过程,撰写报告。
课程目标3:能选择并运用Windows、Linux系统环境、C/C++语言编辑、编译、调试工具进行实验系统的构建和开发,并能够理解这些工具的局限性。
课程目标4:能对Windows、Linux操作系统实例和三类用户接口进行合理分析、设计和评价,了解对社会、健康、安全、法律和文化的影响,理解方案选择时的局限性和社会责任。
作业及课堂表现 | 15% |
期中测试 | 10% |
实验成绩 | 15% |
期终考试 | 60% |
总计 | 100% |
第1章 绪论
1.1 操作系统的概念与历史
1.2 操作系统的基本类型与功能
第1章作业
第2章 操作系统用户界面
2.1一般用户的输入输出界面和命令控制界面
2.2 Linux 命令接口
2.3 系统调用
第2章作业:Linux接口练习1-2-3
第3章 进程管理
3.1 进程概念
3.2 进程控制
3.3 进程互斥
3.4 进程同步
3.5 经典进程同步问题
3.6进程通信
3.7死锁
3.8线程
第3章作业一
第3章作业二
第4章 处理机调度
4.1 调度与调度算法
4.2 处理机调度
第4章作业
期中测试
第5章 存储管理
5.1 存储管理导言
5.2 分区管理系统
5.3 页式管理系统
5.4 请求分页管理系统
5.5 分段管理系统
5.6 段页式管理系统
第5章作业
第6章进程与存储管理示例
6.1 Linux进程管理
6.2 Linux存储管理
6.3 Windows进程与存储管理
第6章讨论
实验指导书与实验报告
第7章文件系统
7.1 文件系统概念
7.2 文件的逻辑结构和物理结构
7.3 文件存储空间的管理
7.4 文件目录
第7章作业
第8章设备管理
8.1 设备管理概念
8.2 设备分配
8.3 设备控制
8.4 设备驱动
第8章作业
期末测试
先修课程:程序设计基础(C语言)、数据结构、计算机组成
建议教材:
[1] 张尧学、宋虹、张高编著,计算机操作系统教程(第4版)[M],北京:清华大学出版社,2013.10
参考资料:
[1] Abraham Silberschatz等著,Operating System Concepts (Seventh Edition)[M],北京:高等教育出版社,2007.3
[2] Abraham Silberschatz等著,郑扣根译,操作系统概念(原书第7版)[M],北京:高等教育出版社,2010.1
[3] Andrew S. Tanenbaum著,陈向群、马洪兵等译,现代操作系统(原书第3版)[M],北京:机械工业出版社,2009.7
[4] William Stallings著,陈向群、陈渝等译,操作系统精髓与设计原理(原书第6版)[M],北京:机械工业出版社,2010.9
[5] Robert Love著,陈莉君、康华译,Linux内核设计与实现(原书第3版)[M],北京:机械工业出版社,2011.5
[6] 汤小丹、梁红兵、哲凤屏、汤子瀛编著,计算机操作系统(第4版)[M],陕西西安:西安电子科技大学出版社,2014.5