课程名称 |
操作系统实验 |
Experiments of Operating System |
开课单位 |
计算机科学与工程学院 |
课程性质 |
必修课 |
课程类别 |
实践环节 |
课程代码 |
210731100701 |
学分 |
1 |
学时 |
22 |
适用专业 |
计算机科学与技术、软件工程、物联网工程、信息安全、智能科学与技术 |
先修课程 |
高等数学、线性代数、概率论与数理统计、程序设计基础、数据结构、计算机组成原理 |
支撑课程 |
操作系统 |
授课语言 |
中文 |
一、课程简介
(一)课程中文简介
操作系统是计算机科学技术、软件工程、物联网工程、信息安全和智能科学与技术专业必修的学科基础课程,操作系统实验的目的是使学生一步理解和掌握操作系统的设计原则和实现思路,尤其是通过对课程重点、难点问题进行实验设计和实现,培养学生的操作系统应用能力、分析能力和设计及创新能力。通过本课程实验使学生能够对计算机应用领域的复杂工程问题设计综合实验方案。
本课程主要实验内容包括:理解进程和并发的概念,根据进程之间的关系,应用信号量机制,针对实际问题应用进程同步机制,正确实现进程的同步与互斥,从而解决实际问题;应用进程通信的基本原理及管道、Socket等机制实现进程之间的通信;根据内存管理的主要任务和不同内存分配方案及虚拟存储技术,模拟实现内存分配方法或针对实际系统分析内存的管理方案;针对具体实际系统通过构造快速文件系统,理解文件系统的内部功能及实现方式;通过虚拟设备模式,实现虚拟设备驱动程序,加深对设备工作过程的理解。
(二)课程英文简介
Operating system is a compulsory basic course for majors in computer science technology, software engineering, Internet of Things engineering, information security and intelligence science and technology. The purpose of operating system experiments is to enable students to understand and master the design principles and implementation ideas of operating systems in one step, especially It is to train students' operating system application ability, analysis ability and design and innovation ability through experimental design and realization of the key and difficult problems of the course. Through the experiments in this course, students can design comprehensive experimental schemes for complex engineering problems in the field of computer applications.
The main experimental content of this course includes: understanding the concept of process and concurrency, applying the semaphore mechanism according to the relationship between the processes, applying the process synchronization mechanism for actual problems, correctly achieving the synchronization and mutual exclusion of the processes, so as to solve the actual problems; applying the process The basic principles of communication and mechanisms such as pipes and sockets realize communication between processes; according to the main tasks of memory management, different memory allocation schemes and virtual storage technologies, simulate the realization of memory allocation methods or analyze memory management schemes for actual systems; specific to specific The actual system understands the internal functions and implementation methods of the file system by constructing a fast file system; through the virtual device mode, realizes the virtual device driver, and deepens the understanding of the working process of the device.
二、实验课程目标
本课程的目标包括:
CO1:运用操作系统基本工作原理和方法,对实际操作系统的实现机制,如功能模块添加、裁剪等进行验证,提高对系统的运用能力。
CO2:针对进程管理、内存管理、设备管理、外存储器等关键环节进行分析,设计相应实验方案,搭建系统完成实验过程,并对实验数据分析。
CO3:针对实际计算机应用中的复杂问题,应用进程并发和同步,结合内存分配,设计新的进程同步机制,构建综合实验和设计研究性实验方案。
课程目标与所支撑的毕业要求指标点的对应关系如表1所示。
表1课程目标与所支撑的毕业要求内涵观测点的对应关系
适用专业 |
毕业要求内涵观测点 |
课程目标 |
计算机科学与技术 |
GR3.2能够针对复杂工程问题的特定需求完成系统、模块的软件设计和硬件设计。 |
CO1,CO2,CO3 |
软件工程 |
GR3.4能够针对特定软件需求,完成解决方案、系统架构、界面等设计任务,在设计中体现创新意识,特别是互联网应用软件系统架构与智能系统软件解决方案设计。 |
CO1,CO2,CO3 |
物联网工程 |
GR3.4综合利用物联网应用领域的专业知识和新技术,在针对复杂工程问题的系统设计中体现创新意识。 |
CO1,CO2,CO3 |
信息安全 |
GR3.3能根据目标选取恰当的信息安全技术与设计流程 |
CO1,CO2,CO3 |
智能科学与技术 |
GR3.2能够针对人工智能应用系统的功能模块,进行面向应用领域的算法设计,应用软硬件开发技术完成详细设计与实现 |
CO1,CO2,CO3 |
三、实验内容与要求
(一)实验设计(实验类型及内容)
1.验证性 (20%)
Linux基本命令、系统调用添加、内核模块添加与删除等。
2.综合性(40%)
内存管理、驱动程序设计等。
3.设计研究性(40%)
进程通信、进程同步等。
表2实验内容与课程目标对应关系
实验课程目标 |
实验模块(可选) |
对应实验 |
CO1 |
|
实验1 |
CO2 |
|
实验2、实验4、实验5 |
CO3 |
|
实验3 |
(二)实验内容及要求
表3实验内容与要求
编号 |
实验项目 |
学时数 |
实验内容 |
实验类型 |
实验要求 |
1 |
Linux基本操作 |
2 |
熟悉Linux操作系统的进程创建过程,并添加一个简单的内核模块 |
验证性 |
必做 |
2 |
进程间通信 |
4 |
理解、实现基于管道、套接字或共享内存的进程通信 |
设计研究 |
必做 |
3 |
进程同步 |
6 |
理解、实现基于信号量机制的实际问题的同步方案 |
设计研究 |
必做 |
4 |
Linux内存管理 |
6 |
理解、实现计算机的虚拟内存管理方法 |
综合性 |
必做 |
5 |
Linux驱动程序 |
4 |
理解、实现字符或块设备驱动程序 |
综合性 |
必做 |
四、实验设备与环境配置
1.计算机:Intel Core2 Duo E4300 1.8GHZ、内存512MB、硬盘15GB以上。
2.开发环境:Linux、GCC。
五、课程思政、创新创业元素
教学章节 |
知识点 |
思政元素案例 |
培养目标 |
备注 |
实验1 |
Linux内核 |
集中内核与模块机制。 |
集中力量解决关键问题,又根据实际问题的特点,通过“添加”和“删除”,设计符合问题特征的方案,培养严谨、艰苦奋斗、求真务实的科研精神。 |
|
实验2 |
进程间通信 |
合作解决问题 |
正确认识“个人”与“团队”之间的关系,认识到个人力量是有限的,通过团队合作解决大问题,培养学生的团队协作精神。 |
|
实验3 |
进程同步 |
步调一致 |
正确认识“个人”与“集体”之间的关系,个人利益服从集体利益。只有共同捍卫集体利益,才能保障个人的利益。 |
|
实验3 |
进程同步 |
设计同步方案 |
通过对已有同步策略和方法的实现,设计满足增加并发度的同步方案。 |
创新创业案例 |
实验4 |
Linux内存管理 |
Linux的分页机制 |
厉行节约,不浪费资源,根据实际需要获取资源。 |
|
实验5 |
Linux驱动程序 |
字符、块设备管理的实现 |
通过现象,分析问题的本质,抓住问题的主要特证,设计解决方案。 |
|
六、主要参考资料
[1]房胜,李旭建,黄玲,李哲。操作系统实践--基于Linux的应用与内核编程[M]。北京:清华大学出版社。
[2] Abraham Silberschatz & Peter Baer Galvin & Greg Gagne. Operating System Concepts.第七版 影印版.高等教育出版社. 2007.3
[3] Abraham Silberschatz & Peter Baer Galvin & Greg Gagne. Operating System Concepts. ninth edition. Wiley. 2013.01
[4] http://os.sdust.edu.cn.
七、考核方式、方法及实验成绩评定方法
考核成绩可以采用五级制或百分制。课程成绩考核主要由平时成绩组成,可以进行期末考核。平时考核包括出勤、展示、各次实验考核等形式。
(一)评分标准
表4实验评分标准
考核 环节 |
<60 (不及格) |
60-69 (及格) |
70-79 (中等) |
80-89 (良好) |
90-100 (优秀) |
平时 |
态度不端正,未完成指定任务或实验报告不符合要求 |
态度较端正,基本完成任务,无重大错误,实验报告基本符合要求; |
态度端正,完成所有指定任务,实验报告符合要求; |
态度端正,完成所有指定任务,实验报告符合要求,并有进一步完善和丰富; |
积极,认真完成所有指定任务,实验报告完善,条理清晰,并有所创新。 |
期末考核(可选) |
|
|
|
|
|
(二)实验项目(或考核环节)权重
表5实验课程目标与实验项目(或考核环节)对应关系
实验项目(或考核环节) |
目标1 |
目标2 |
目标3 |
实验1 Linux基本操作 |
√ |
|
|
实验2进程间通信 |
|
√ |
|
实验3 进程同步 |
|
|
√ |
实验4 Linux内存管理 |
|
√ |
|
实验5 Linux驱动程序 |
|
√ |
|
撰稿人:张金泉
审核人:房胜
批准人:倪维健