软件教研室•计划学时40+10•周学时4•考试课•操作系统课程设计考查课操作系统(OperatingSystem)软件教研室第一章操作系统概述•操作系统的概念•操作系统的历史•操纵系统的特性•操作系统的类型•操作系统的运行环境•操作系统的界面形式•操作系统的运行机理软件教研室1.1操作系统概念•操作系统地位•操作系统作用•操作系统定义软件教研室1.1.1操作系统地位•硬件抽象层(HAL)之上•所有其它软件层之下HALOS其它系统软件层应用软件层软件教研室1.1.2操作系统的作用•管理系统中软件硬件资源–CPU–内存–设备–文件•为用户(应用程序)提供良好的服务(界面)–API–GUI软件教研室1.1.3操作系统定义•操作系统是位于硬件层(HAL)之上,所有其它软件层之下的一个系统软件,是管理系统中各种软硬件资源,方便用户使用计算机系统的程序集合。软件教研室1.2操作系统的历史•操作系统的产生–手工操作阶段–成批处理阶段–执行系统阶段•操作系统的完善–多道批处理系统–分时系统–实时处理系统–通用操作系统•操作系统的发展–网络操作系统–分布式操作系统–多处理机操作系统–单用户操作系统–面向对象操作系统–嵌入式操作系统–智能卡操作系统软件教研室1.3操作系统特性•程序并发性–多个程序在宏观上同时向前推进–并发(concurrent)并行(parallel)•资源共享性–多个程序共用系统中的各种软硬件资源–在操作系统的控制下软件教研室1.4操作系统类型•多道批处理操作系统(batchprocessingsystem)•分时操作系统(time-sharingsystem)•实时操作系统(realtimesystem)•通用操作系统(multi-purposesystem)•单用户操作系统(singleusersystem)•网络操作系统(networkoperatingsystem)•分布式操作系统(distributedoperatingsystem)•多处理机操作系统(multi-processorsystem)•嵌入式操作系统(embeddedoperatingsystem)•智能卡操作系统(smart-cardoperatingsystem)软件教研室作业(Job):程序+数据+说明书(JCL编写)结果:程序运行结果+记帐信息主机输入井输出井输出机输入机作业结果SPOOLing输入作业调度(1)作业调度(2)SPOOLing输出1.4.1多道批处理系统(off-line)软件教研室1.4.1多道批处理系统(cont.)•输入井作用–缓冲(速度匹配作用)–实现作业调度(jobscheduling)•输出井作用–缓冲(速度匹配作用)软件教研室1.4.1多道批处理系统(Cont.)•主机中作业合理搭配–目标1:提高资源利用率(eg.计算型+IO型)–目标2:提高吞吐量(throughput)•特点–多道:系统中同时容纳多个作业–成批:作业分批进入系统软件教研室界面1:交互式命令语言(eg.shell,command)界面2:GUI1.4.2分时操作系统(On-line)TimeSharingOSHAL终端终端终端…...软件教研室1.4.2分时操作系统(Cont.)•特点:–多路性:一个主机与多个终端相连;–交互性:以对话的方式为用户服务;–独占性:每个终端用户仿佛拥有一台虚拟机。•典型系统:–Multics(MIT)–UNIX软件教研室1.4.3实时操作系统•实时控制–工业控制,军事控制,医疗控制,…….•实时信息处理–航班定票,联机情报检索,…….软件教研室实时控制HALRealTimeOS被控对象A/DD/At1t2t2-t1:responsetime软件教研室实时信息处理HALRealTimeOS….终端终端终端通常为远程终端特点:(1)响应及时(promptresponse)(2)可靠性高(highreliability)软件教研室1.4.4通用操作系统(multi-purposeOS)•同时具有:分时、实时、批处理功能。•目标:–提高处理能力;–扩展应用领域。•常见模式:–分时(前台)+批处理(后台)(eg.GCOS-8)–实时(前台)+批处理(后台)软件教研室1.4.5单用户操作系统•同一时刻仅有一个用户使用的系统•应用领域:–台式机,笔记本,…….•特点:–单用户,多进程,多线程软件教研室1.4.6网络操作系统建立在宿主操作系统之上,提供网络通讯、网络资源共享、网络服务的软件包。NOS3host3NOS2host2PrinterNOS1host1软件教研室网络操作系统的目标•相互通讯•资源共享(信息,设备)•提供网络服务–databaseserver–ftpserver–e-mailserver–etc.软件教研室1.4.7分布式操作系统•紧耦合:(tightlycoupled)–由多机系统发展而来(多CPU)–有公共内存–多处理机操作系统CPU内存CPUCPU…软件教研室1.4.7分布式操作系统•松散耦合:(looselycoupled)–由计算机网络发展而来(多Host)–无公共内存,无公共时钟DOShost3DOShost2DOShost1软件教研室1.4.7分布式操作系统(Cont.)•目标:进一步共享资源,使负载均衡,计算加速。–CPU–内存•途径:迁移(migration)–作业迁移–进程迁移(线程一般随同进程迁移)软件教研室1.4.8多处理机操作系统•多处理机系统–具有公共内存的多CPU系统•对称多处理机系统(SMP)–没有主从关系的多处理机系统•多处理机操作系统–有效管理和使用多个CPU的操作系统–复杂性:多个主动体(CPUs)软件教研室1.4.9嵌入式操作系统•嵌入在掌上电脑、通讯设备、车载系统、信息家电等非计算机类设施上的操作系统。•特点:微内核结构(Micro-kernel),许多操作系统功能以应用程序模式运行。软件教研室1.4.10智能卡操作系统•智能卡–CPU芯片–ROM•面向Java的智能卡–JVM解释程序–下载Javaapplet并执行软件教研室1.5操作系统运行环境•定时装置•系统栈•特权指令与非特权指令•处理机状态及状态转换•地址映射机构•存储保护设施•中断装置软件教研室1.5.1定时装置•绝对时钟:记载实际时间,不发中断。•间隔时钟:定时发生中断,一般间隔单位为“毫秒”。–间隔时钟是实现多道程序的基础—保证操作系统获得控制权。–其它中断也进入操作系统,但是否发生,何时发生没有保障。软件教研室1.5.2系统栈(systemstack)•作用–保存中断现场–保存子程序转移返回点、参数、局部变量、返回值•位置–操作系统区域软件教研室1.5.3特权指令与非特权指令•特权指令(privilegedinstruction)–只有在管态才能执行的指令(影响系统状态)•关中断,置程序状态字,停机,IO,…….•非特权指令(non-privilegedinstruction)所有程序可用(不影响系统状态)•取数,四则运算,……软件教研室1.5.4处理机状态及状态转换•处理机状态–系统态(systemmode)(管态,核态)–用户态(usermode)(目态,常态)•状态转换–管态目态(置程序状态字)–目态管态(中断,trap)软件教研室1.5.5地址映射机构•逻辑地址物理地址–逻辑地址(虚地址):程序中产生的地址–物理地址(实地址):存储器地址软件教研室1.5.6存储保护设施•防止应用程序–侵犯操作系统空间;–侵犯其它用戶空间.•地址检查–越界检查;–越权检查(对共享区域).软件教研室1.5.7中断装置•发现并响应中断的硬件机构–当前(PSW,PC)系统栈–中断向量(PSW,PC)寄存器软件教研室1.6操作系统界面形式•交互终端命令(CommandLanguage)•图形界面(GUI)•作业控制语言(JobControlLanguage)–作业标识语句–作业步语句(编译、连接装配、执行)–资源描述语句–Goto语句(正向转移)软件教研室1.6操作系统界面形式(Cont.)•系统调用命令(OSAPI)–高级语言形式•fd=open(file_name,mode)–汇编语言形式•准备参数•trapn•取返回值软件教研室1.7操作系统的运行机理•Interruptdriven:硬件程序1程序2中断处理…程序切换中断置pswOS