Description
《操作系统原理》是针对计算机科学技术专业三年级本科生开设的一门专业基础课程。本课程着重学生系统观的培养,通过重点讲述操作系统的内部结构、工作原理及典型技术的实现,使学生建立起对操作系统的整体及各个功能模块的认识,从而系统掌握计算机的专业知识,进一步提升学生的软件开发能力乃至系统软件开发能力。
任何计算机都必须在加载相应的操作系统之后,才能构成一个可以运转的、完整的计算机系统。操作系统的功能是否强大,决定了计算机系统的综合能力;操作系统的性能高低,决定了整个计算机系统的性能;操作系统本身的安全可靠程度,决定了整个计算机系统的安全性和可靠性。操作系统是软件技术的核心和基础运行平台。因此,计算机科学技术专业的学生需要学习和掌握操作系统的基本原理和专业知识。
本课程的教学目标是:
1.掌握操作系统的基本概念、功能组成、系统结构及运行环境;
2.熟悉并运用操作系统工作原理、设计方法和实现技术,理解有代表性、典型的操作系统实例(如UNIX、Linux和Windows);
3.了解操作系统的演化过程、发展研究动向、新技术以及新思想,为后续相关课程的学习打下良好基础,为后续职业发展奠定基石。
What you will learn
操作系统概述
主要内容:举例介绍操作系统所做的工作;操作系统的定义与特征;操作系统分类;操作系统发展中的典型技术;典型操作系统的结构。
操作系统运行环境
主要内容:特权指令/非特权指令、CPU状态;中断系统的作用;中断硬件工作原理;中断处理程序流程;中断处理程序举例;中断系统举例;系统调用基本概念;系统调用实现机制;系统调用实现实例。
进程线程模型
主要内容:进程基本概念;进程状态及状态转换;进程控制块的作用和内容;进程控制操作;进程地址空间与进程映像;为什么引入线程?线程的应用场景;Web服务器的实现;线程概念、线程与进程的区别;线程实现的三种方式;Pthreads线程库及应用;几个重要的概念:原语、可再入程序。
处理器调度
主要内容:调度层次与调度类型;调度时机与进程切换;调度算法设计原则;调度算法设计时考虑的各种因素;基本调度算法;多级队列反馈调度算法;调度算法应用;Linux调度算法的演化; Windows调度算法简介。