Windows操作系统核心技术参考教材尤晋元等,Windows操作系统原理,机械工业出版社,2001DavidA.Solomon,WindowsNT技术内幕,清华大学出版社,1999年7月本课程内容含盖操作系统原理课程的全部理论内容以及Windows2000/XP操作系统构成的各个方面10讲的内容依次是:第1讲操作系统概述第2讲Windows2000/XP的体系结构第3讲进程管理第4讲存储管理第5讲文件系统第6讲I/O系统第7讲网络第8讲windows安全第9讲应用程序设计第10讲驱动程序设计操作系统概述发展与分类计算机系统结构与特点定义按人的要求接收、存储信息,自动进行数据处理和计算,并输出结果的机器系统。特点计算、判断、存储、精确、快速、通用、易用、联网组成硬件、软件计算机系统概观计算机系统(层次结构)软件硬件及固件(裸机)应用软件系统软件编辑软件,编译软件操作系统计算机组织指运算器、存储器、控制器、I/O部件间的相互连接作为计算机系统结构的逻辑和物理实现,任务是提高性价比,实现计算机在指令级的功能和特性;计算机系统结构从程序设计人员角度看到的计算机属性,处于机器语言级;存储程序原理是了解计算机组织的关键基于此构造的计算机称为存储程序计算机(冯.诺伊曼机)基本点:指令驱动,即程序由指令组成,并和数据一起存放在计算机存储器中地位:紧贴硬件之上,其它软件之下,是其他软件的共同环境定义:系统软件,程序模块的集合,资源管理和用户接口功能应用用户应用开发人员操作系统开发人员计算机硬件操作系统系统工具用户应用操作系统概念操作系统特征并发性多程序同时推进单CPU环境用户程序之间、用户程序与操作系统之间多CPU环境宏观、微观并发分布式环境多计算机并存共享性系统的各种资源共享随机性运行状态不确定要求操作系统设计与实现要充分考虑各种可能操作系统作用OS是计算机硬件、软件资源的管理者管理对象包括:CPU、存储器、外部设备、信息(数据和软件);管理的内容:资源的当前状态(数量和使用情况)、资源的分配、回收和访问操作,相应管理策略(包括用户权限)。OS是用户使用系统硬件、软件的接口系统命令(命令行、菜单式、命令脚本式、图形用户接口GUI);系统调用(形式上类似于过程调用,在应用编程中使用)。OS是扩展机(extendedmachine)/虚拟机(virtualmachine)。在裸机上添加:设备管理、文件管理、存储管理(针对内存和外存)、处理机管理(针对CPU);合理组织工作流程:作业管理、进程管理。几项重要功能进程管理主要是对处理器进行管理解决处理器实施分配调度策略;协调多道程序间的关系存储管理管理内存资源内外存结合实现虚拟存储器,解决内存不够问题文件管理信息资源以文件方式存放在外存方便、安全的访问作业管理为用户提供使用机器的手段设备管理管理所有I/O设备及其支持设备引入操作系统的目标有效性(系统管理人员的观点)管理和分配硬件、软件资源,合理地组织计算机的工作流程方便性(用户的观点)提供良好的、一致的用户接口,弥补硬件系统的类型和数量差别可扩充性(开放的观点)硬件的类型和规模、操作系统本身的功能和管理策略、多个系统之间的资源共享和互操作操作系统历史主要讨论操作系统的外部特征发展动力提高资源的利用率和系统性能:计算机发展的初期,计算机系统昂贵,用作集中计算方便用户:用户上机、调试程序,分散计算时的事务处理和非专业用户(商业和办公、家庭)器件的发展:CPU的位宽度(指令和数据)、快速外存手工操作集中计算(计算中心),计算机资源昂贵;用户既是程序员,又是操作员;用户是计算机专业人员;编程语言:为机器语言;输入输出:纸带或卡片;工作特点用户独占全机:不出现资源被其他用户占用,资源利用率低;CPU等待用户:计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片;CPU利用率低;提高效率的途径专门的操作员,批处理批处理系统利用磁带把若干个作业分类编成作业执行序列,每个批作业由一个专门的监督程序(Monitor)自动依次处理。可使用汇编语言开发。批处理中的作业的组成:用户程序、数据、作业说明书(作业控制语言)监督程序发展为执行系统(executivesystem),常驻内存主要问题CPU和I/O设备使用忙闲不均(取决于当前作业的特性)。对计算为主的作业,外设空闲;对I/O为主的作业,CPU空闲;多道批处理系统利用多道批处理提高资源的利用率。多道批处理的运行特征多道:内存中同时存放几个作业;宏观上并行运行:都处于运行状态,但都未运行完;微观上串行运行:各作业交替使用CPU;优点:资源利用率高:CPU和内存利用率较高;作业吞吐量大:单位时间内完成的工作总量大;缺点:用户交互性差:整个作业完成后或中间出错时,才与用户交互,不利于调试和修改;作业平均周转时间长:短作业的周转时间显著增长;分时系统“分时”的含义分时是指多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源。多个用户分时:单个用户使用计算机的效率低,因而允许多个应用程序同时在内存中,分别服务于不同的用户。有用户输入时由CPU执行,处理完一次用户输入后程序暂停,等待下一次用户输入--时走时停前台和后台程序分时:后台程序不占用终端输入输出,不与用户交互--现在的图形用户界面(GUI),除当前交互的程序(输入焦点)之外,其他程序均作为后台通常按时间片(timeslice)分配:各个程序在CPU上执行的轮换时间。批处理:交互性差--提高对CPU利用率;分时处理:用户与应用程序随时交互,控制程序运行,适于商业和办公事务处理--缩短响应时间用高级语言书写OSUnix特色不兼容,一直困难。可移植OS标准出现:POSIX、SVID、XPG通用OS面向个人应用WINDOWS,LINUX两大发展方向:宏观、微观宏观:大规模,分布式微观:嵌入式操作系统分类批处理(BatchProcessingOperationSystem)分时(TimeSharingOperatingSystem)实时(RealTimeOperatingSystem)多处理(Multi-processorOperatingSystem)嵌入式(EmbeddedOS)个人计算机OS(PersonalOS)NOS(NetworkOperatingSystem)分布式OS(DistributedOS)用户作业录入提交收容完成运行就绪等待作业调度执行作业调度批处理系统中作业处理及状态单道(uniprogramming)和多道批处理的比较单道多道内存使用每次一个作业每次多个作业(充分利用内存)作业次序顺序,先进先出无确定次序多道程序系统和多处理系统(multiprocessingsystem)的区别:前者指多个程序同时在内存中交替运行,后者指多个处理器。分时系统的特征多路性:多个用户同时工作。共享系统资源,提高了资源利用率。节省维护开支,可靠性高:笨终端--至今仍在使用。促进了计算机的普遍应用,提高资源利用率:远地用户通过终端(较便宜)联机使用。独立性:各用户独立操作,互不干扰。交互性:系统能及时对用户的操作进行响应,显著提高调试和修改程序的效率:缩短了周转时间。分时系统的主要问题及时接受输入:多个I/O端口,设立多路缓冲区及时响应:提高对换速度(快速外存)、限制用户数目、缩短时间片(可能引起对换次数增多,开销增大,程序总运行时间增大)减少对换信息量:可重入代码(re-entrantcode);请求页式存储管理:只对换部分程序实时系统的特征实时时钟管理:提供系统日期和时间、定时和延时等时钟管理功能;过载保护:缓冲区排队,丢弃某些任务,动态调整任务周期;过载是指进入系统的任务数目超出系统的处理能力。高度可靠性和安全性:容错能力(如故障自动复位)和冗余备份(双机,关键部件);实时操作系统主要用于过程控制、事务处理等有实时要求的领域,其主要特征是实时性和可靠性。实时操作系统实时系统与批处理系统和分时系统的区别专用系统:许多实时系统是专用系统,而批处理与分时系统通常是通用系统。实时控制:实时系统用于控制实时过程,要求对外部事件的迅速响应,具有较强的中断处理机构。高可靠性:实时系统用于控制重要过程,要求高度可靠,具有较高冗余。如双机系统。事件驱动和队列驱动:实时系统的工作方式:接受外部消息,分析消息,调用相应处理程序进行处理。可与通用系统结合成通用实时系统:实时处理前台作业,批处理为后台作业。多处理操作系统非对称式多处理(AsymmetricMultiprocessing,ASMP):又称主从模式(Master-slavemode)。主处理器:只有一个,运行OS。管理整个系统的资源,为从处理器分配任务;从处理器:可有多个,执行应用程序或I/O处理。特点:不同性质任务的负载不均,可靠性不够高,不易移植(通常要求硬件也是非对称)。对称式多处理(SymmetricMultiprocessing,SMP)OS交替在各个处理器上执行。任务负载较为平均,性能调节容易--傻瓜式对称多处理机与非对称多处理机的比较网络操作系统在通用操作系统功能的基础上提供网络通信和网络服务功能的操作系统网络操作系统为网上计算机进行方便而有效的网络资源共享,提供网络用户所需各种服务的软件和相关规程的集合网络功能与操作系统的结合程度是网络操作系统的重要性能指标早期作法是通用操作系统附加网络软件,过渡到网络功能成为操作系统的有机组成部分区别:网络功能的强弱、使用是否方便例MSOS:MSDOS,MSWindows3.x,Windows95,WindowsNT,Windows2000UNIX:BSD,SCOUNIX,AIX,Solaris,LinuxNOS:NovellNetwareRTOS:VxWorks,pSoS,Nucleus研究操作系统的几种观点软件观点外在特性:命令集、界面内在特性:具有一般软件不具备的特殊结构资源管理观点分配、回收、竞争、保护进程观点将操作系统当作若干个可同时独立运行的程序-〉进程虚拟机屏蔽硬件,多个层次服务提供者用户角度Windows操作系统历程开发过程版本及其特点Win3xWin9xWin2000Winxp…(1985年11月)已有多窗口输出、多任务处理功能、初步具有图形界面;Windows2.X(1987年11月)具有图形界面,而且已具有Windows3.1的系统原型。如应用程序的添加、支持磁盘扩充、支持多种外设接口等,开始受到外界的重视与关注;Windows/286V2.1及Windows/386V2.1(1988,1989年)因当时Windows的速度过慢而仍未普及,故推出此版本,修正核心程序(如:I/O、内存、CPU等的控制)并以结构化语言改写使得速度大幅提升;Windows3.0英文版(1990年5月)除了改正Windows2.X版的错误外,使得图形用户界面正式进入个人PC的领域;拥有真正GUI的操作系统;除此之外,还提供一个非常完善的用户环境。增强了多任务处理、GUI、存储管理等能力;Windows3.0中文版(1991年7月31日),中文化的操作界面,主要添加了中文输入法及汉字库的支持;Windows95英文版(1992年4月)Windows95中文版(1993年8月)除英文版功能外,还新增如多显卡支持、打印机驱动、兼容性与稳定性等。Windows95中文版新特性(1995年8月)真正32位的操作系统全新的工作桌面支持长文件名支持硬件的即插即用32位可抢先(Preemptive)多任务系统全新的多媒体享受强大的网络支持更友好的安装、操作界面Windows1.01Windows1.02Windows1.03Windows2.xx安全子系统登录进程Win32客户OS/2客户POSIX客户OS/2子系统Win32子系统POSIX子系统硬件抽象层系统服务核心态用户态内核NT执行体对象管理器安全引用监视器虚拟内存管理器进程和线程管理器本地过程调用