北京交通大学XXXX-XXXX操作系统2729.pptx
《北京交通大学XXXX-XXXX操作系统2729.pptx》由会员分享,可在线阅读,更多相关《北京交通大学XXXX-XXXX操作系统2729.pptx(141页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、主讲教师:翟高寿翟高寿(副教授)联系电话:010-51683610(办)电子邮件:制作人:翟高寿翟高寿制作单位:北京交通大学计算机学院北京交通大学计算机学院操作系统操作系统3/9/20231北京交通大学计算机学院翟高寿教学目标教学目标全面、系统地介绍计算机操作全面、系统地介绍计算机操作系统的体系结构、实现机理及系统的体系结构、实现机理及相关方法和技术,培养广大学相关方法和技术,培养广大学生在系统软件开发方面的理论生在系统软件开发方面的理论基础及技术素养。基础及技术素养。3/9/20232北京交通大学计算机学院翟高寿主要相关课程主要相关课程先修课程:数据结构数据结构 接口技术、计算机组成原理接口
2、技术、计算机组成原理 汇编语言程序设计汇编语言程序设计 C C语言程序设计语言程序设计并行/后续课程:计算机体系结构、操作系统实践计算机体系结构、操作系统实践3/9/20233北京交通大学计算机学院翟高寿&教材计算机操作系统 汤子瀛 哲凤屏 汤小丹 西安电子科技大学出版社&参考教材计算机操作系统教程 张尧学 史美林 清华大学出版社操作系统教程 陈向群 杨芙清 北京大学出版社Windows操作系统原理 尤晋元 史美林 陈向群 机械工业出版社操作系统基础 屠立德 屠祁 清华大学出版社操作系统教程 孙仲秀 高等教育出版社操作系统教程-原理和实例分析 孟静 高等教育出版社Applied Operati
3、ng System Concept Abrahan Silberschatz 高等教育出版社The Design of The Unix Operating System Manrice J.Bach 人民邮电出版社现代操作系统 陈向群等译 机械工业出版社3/9/20234北京交通大学计算机学院翟高寿教材内容删减说明教材内容删减说明q第三章第三章 处理机调度与死锁处理机调度与死锁3.3 实时调度实时调度3.4 多处理机系统中的调度多处理机系统中的调度q第五章第五章 设备管理设备管理5.6 磁盘存储器管理磁盘存储器管理q第八章第八章 网络操作系统网络操作系统q第九章第九章 系统安全性系统安全性3
4、/9/20235北京交通大学计算机学院翟高寿课程主要内容及教学安排课程主要内容及教学安排q操作系统引论(10学时)q处理机管理(18学时)q存储管理(12学时)q设备管理(8学时)q文件系统(8学时)q操作系统设计实例(8学时)3/9/20236北京交通大学计算机学院翟高寿第一章第一章 操作系统引论操作系统引论1.1 什么是操作系统1.2 计算机体系结构及操作系统硬件基础1.3 操作系统用户接口及系统调用实现1.4 操作系统启动模块及自装入机制 1.5 操作系统的发展1.6 操作系统的功能与特征1.7 操作系统的结构设计3/9/20237北京交通大学计算机学院翟高寿1.1 什么是操作系统1.1
5、.1 操作系统的地位和目标1.1.2 操作系统的作用1.1.3 操作系统的组成及层次模型1.1.4 操作系统的定义1.1.5 操作系统举例3/9/20238北京交通大学计算机学院翟高寿计算机系统的组成计算机系统(层次结构)软件硬件及固件(裸机)应用软件系统软件编辑程序/汇编程序/编译程序/数据库管理系统操作系统3/9/20239北京交通大学计算机学院翟高寿操作系统在计算机系统中的地位3/9/202310北京交通大学计算机学院翟高寿操作系统的设计目标q方便性提供用户接口,使计算机系统更方便使用q有效性通过有效管理和分配软、硬件资源及合理组织计算机工作流程来改善资源利用率、提高系统吞吐量q可扩充性
6、计算机硬件和体系结构的迅猛发展及其所对应的更高的功能和性能要求q开放性不同厂家与不同类型的计算机及其设备的网络化集成和协同工作,实现应用程序可移植性和互操作性3/9/202311北京交通大学计算机学院翟高寿1.1 什么是操作系统1.1.1 操作系统的地位和目标1.1.2 操作系统的作用1.1.3 操作系统的组成及层次模型1.1.4 操作系统的定义1.1.5 操作系统举例3/9/202312北京交通大学计算机学院翟高寿操作系统的作用(1)用户与计算机硬件系统之间的接口q命令方式(操作系统外壳)面向一般用户命令行/菜单式/命令脚本式/图形用户接口q系统调用方式(操作系统内核)面向程序开发人员形式上
7、类似于过程调用,编制程序中使用3/9/202313北京交通大学计算机学院翟高寿操作系统的作用(2)计算机系统资源的管理者q管理对象处理器、存储器、外围设备以及信息(数据和软件)q管理内容资源的分配、回收和访问操作记录资源的当前状态(数量和使用情况)、相应管理策略(共享、保护及用户权限)3/9/202314北京交通大学计算机学院翟高寿操作系统的作用(3)用作扩充机器(或虚拟机)q在裸机上添加处理机管理、存储管理、设备管理、文件管理、作业管理、图形化用户接口等功能,使计算机系统功能显著增强、使用更为方便3/9/202315北京交通大学计算机学院翟高寿1.1 什么是操作系统1.1.1 操作系统的地位
8、和目标1.1.2 操作系统的作用1.1.3 操作系统的组成及层次模型1.1.4 操作系统的定义1.1.5 操作系统举例3/9/202316北京交通大学计算机学院翟高寿操作系统的组成及层次模型用户接口用户接口(命令接口、程序接口、图形用户接口)对对象进行操纵和管理的软件集合对对象进行操纵和管理的软件集合(处理机/存储器/设备/文件/作业管理软件)操作系统对象操作系统对象(处理机、存储器、设备、文件和作业)3/9/202317北京交通大学计算机学院翟高寿操作系统层次模型细化操作系统层次模型细化3/9/202318北京交通大学计算机学院翟高寿1.1 什么是操作系统1.1.1 操作系统的地位和目标1.
9、1.2 操作系统的作用1.1.3 操作系统的组成及层次模型1.1.4 操作系统的定义1.1.5 操作系统举例3/9/202319北京交通大学计算机学院翟高寿操作系统的定义q操作系统是最基本的系统软件,是一组有效管理和控制计算机硬件和软件资源、合理地对各类作业进行调度以组织和控制系统工作流程,并方便用户使用计算机的程序的集合。3/9/202320北京交通大学计算机学院翟高寿1.1 什么是操作系统1.1.1 操作系统的地位和目标1.1.2 操作系统的作用1.1.3 操作系统的组成及层次模型1.1.4 操作系统的定义1.1.5 操作系统举例3/9/202321北京交通大学计算机学院翟高寿操作系统举例
10、qMS DOSqWindows(NT、9X、200X、Vista)qUNIX(Solaris)qLinux(RedHat、RedFlag)qNovell Netware3/9/202322北京交通大学计算机学院翟高寿1.1 什么是操作系统1.1.1 操作系统的地位和目标1.1.2 操作系统的作用1.1.3 操作系统的组成及层次模型1.1.4 操作系统的定义1.1.5 操作系统举例3/9/202323北京交通大学计算机学院翟高寿作业题作业题q1.1 什么是操作系统?用自己的话谈谈你对操作系统概念的认识与理解。3/9/202324北京交通大学计算机学院翟高寿第一章第一章 操作系统引论操作系统引论1
11、.1 什么是操作系统1.2 计算机体系结构及操作系统硬件基础1.3 操作系统用户接口及系统调用实现1.4 操作系统启动模块及自装入机制 1.5 操作系统的发展1.6 操作系统的功能与特征1.7 操作系统的结构设计3/9/202325北京交通大学计算机学院翟高寿计算机系统体系结构3/9/202326北京交通大学计算机学院翟高寿计算机系统硬件组成3/9/202327北京交通大学计算机学院翟高寿内存系统Memory Systemsq主存Main MemoryRAM&ROM实际地址空间实际地址空间real address spaceA.或称作物理地址空间,按字节编址BytesB.RAMROMC.保留用
12、于设备或以后它用q高速缓冲Cache Memories因内存寻址访问效率和局部性原理局部性原理而引入由硬件管理,对软件不可见?3/9/202328北京交通大学计算机学院翟高寿高速缓存Cache Memoriesq关联存储器及置换(淘汰)算法3/9/202329北京交通大学计算机学院翟高寿输入输出系统组织方式3/9/202330北京交通大学计算机学院翟高寿用户指令集体系结构User ISAq寄存器架构通用寄存器、特定类型寄存器(如浮点数)专用寄存器(PC、链接/栈指针/条件码/循环计数寄存器)q内存架构逻辑逻辑/虚拟地址空间虚拟地址空间A.线性编址 eg.0 x0000 0000 0 x8000
13、 0000 0 xFFFF FFFF B.分段编址 eg.0#15#分段基址 段寄存器值q用户指令 运算型内存存取指令、分支跳转指令整数算术、逻辑及移位指令浮点指令分段256MB虚存252B3/9/202331北京交通大学计算机学院翟高寿应用程序(用户级)3#级用户模式特权级别与环结构q用户模式、特权/超级/系统模式系统模式(a)扩展级2#级(b)系统服务1#级内核0#级3/9/202332北京交通大学计算机学院翟高寿系统指令集体系结构System ISAq系统寄存器架构系统时钟寄存器、陷入与中断寄存器陷入与中断屏蔽寄存器、页/段表指针寄存器q处理器资源管理支持系统调用/返回指令、中断定时器及
14、设置机制q内存资源管理支持虚拟地址空间到物理地址空间的映射(页表&TLB)qI/O资源管理支持I/O设备寻址与I/O指令q陷入与中断陷入与中断3/9/202333北京交通大学计算机学院翟高寿陷入与中断q陷入指令执行时因异常情况(如运算溢出、缺页、违规内存访问、非法操作码等)产生的控制迁移副效应 陷入流程(异常异常异常异常设置陷入寄存器设置陷入寄存器设置陷入寄存器设置陷入寄存器查看陷入屏蔽查看陷入屏蔽查看陷入屏蔽查看陷入屏蔽寄存器裁决寄存器裁决寄存器裁决寄存器裁决终止终止终止终止“陷入陷入陷入陷入”指令并置处理器准确状指令并置处理器准确状指令并置处理器准确状指令并置处理器准确状态态态态保存程序计
15、数及各寄存器值保存程序计数及各寄存器值保存程序计数及各寄存器值保存程序计数及各寄存器值处理器置特权模处理器置特权模处理器置特权模处理器置特权模式并交操作系统控制权式并交操作系统控制权式并交操作系统控制权式并交操作系统控制权操作系统保存未被硬件保存的“陷入”进程的关键状态信息,经分析转特定异常陷入处理例程,待完成返回后恢复现场和转原“陷入”进程“异常”指令处继续执行)另“系统调用”式陷入(访管指令int 21H/int 0 x80)q中断由相对于当前执行进程的外部事件(如I/O操作、定时)引起,与特定指令执行无关流程?3/9/202334北京交通大学计算机学院翟高寿IA-32体系结构举例说明q系
16、统寄存器架构标志寄存器EFLAGS(通用标志、系统标志)内存管理寄存器GDTR、IDTR、LDTR、TR控制寄存器CR0、CR1、CR2、CR3q保护模式内存管理内存寻址(分段寻址技术;逻辑地址14+32)地址变换(分段段选择符段描述符+分页)内存保护(全局/局部描述符表、特权级)q中断和异常处理中断向量与中断描述符表、中断源与异常源q任务管理(任务状态段)任务切换与过程调用不同!3/9/202335北京交通大学计算机学院翟高寿操作系统其它硬件基础举例说明q内存地址空间布局、基本输入输出系统BIOSqCMOS存储器与实时时钟RTqI/O端口寻址和访问控制方式主要使用独立编址方式,部分使用统一编
17、址方式q中断控制器Intel 8259A、定时计数器Intel 8254qDMA控制器Intel 8237A、键盘控制器Intel 8042q串行控制卡RS-232标准q显示卡MDA/CGA/EGA/VGAq软盘控制器和硬盘控制器3/9/202336北京交通大学计算机学院翟高寿作业题作业题q1.2 设想由你自己负责组织一个项目团队来构建操作系统,你应当要求项目成员事先学习和掌握哪些硬件基础知识?并给出你对相关知识的理解与总结。3/9/202337北京交通大学计算机学院翟高寿第一章第一章 操作系统引论操作系统引论1.1 什么是操作系统1.2 计算机体系结构及操作系统硬件基础1.3 操作系统用户接
18、口及系统调用实现1.4 操作系统启动模块及自装入机制 1.5 操作系统的发展1.6 操作系统的功能与特征1.7 操作系统的结构设计3/9/202338北京交通大学计算机学院翟高寿1.3 操作系统用户接口及系统调用实现1.3.1 操作系统接口分类1.3.2 联机命令接口1.3.3 图形用户接口1.3.4 系统调用3/9/202339北京交通大学计算机学院翟高寿操作系统接口分类q基于接口表现形式划分用户接口A.命令接口(具体可分为联/脱机命令接口)B.图形用户接口(图形化操作界面)程序接口(方便用户程序访问系统资源,由一组系统调用组成)q基于接口使用者类型划分本地用户接口网络用户接口3/9/202
19、340北京交通大学计算机学院翟高寿1.3 操作系统用户接口及系统调用实现1.3.1 操作系统接口分类1.3.2 联机命令接口1.3.3 图形用户接口1.3.4 系统调用3/9/202341北京交通大学计算机学院翟高寿联机命令接口构成q一组联机命令q键盘终端处理程序q命令解释程序3/9/202342北京交通大学计算机学院翟高寿联机命令及分类q联机命令格式 q联机命令类型系统访问类磁盘操作类、文件操作类、目录操作类通信类输入输出重定向、管道连接、过滤命令批处理命令Linux常用操作命令?3/9/202343北京交通大学计算机学院翟高寿键盘终端处理程序q基本功能I.接收用户从终端输入的字符面向字符/
20、行方式II.管理字符缓冲,以暂存所接收的字符专用缓冲区、公用缓冲池方式III.将用户键入字符回送屏幕显示硬件/软件实现方式IV.提供屏幕编辑(编辑键)V.特殊字符处理(中断/停止或恢复上卷)3/9/202344北京交通大学计算机学院翟高寿命令解释程序工作流程命令解释程序工作流程 系统启动显示命令提示符命令合法否?接收命令行输入内部命令?执行执行exec系统调用装入命系统调用装入命令处理程序并予以执行令处理程序并予以执行是系统初始化是基于命令识别特定方法转向执行对应命令处理程序外部命令?是否否否3/9/202345北京交通大学计算机学院翟高寿1.3 操作系统用户接口及系统调用实现1.3.1 操作
21、系统接口分类1.3.2 联机命令接口1.3.3 图形用户接口1.3.4 系统调用3/9/202346北京交通大学计算机学院翟高寿图形用户接口元素及操作q桌面、图标、鼠标指针q窗口、标题栏、菜单栏、工具栏q菜单菜单条弹出式菜单下拉式菜单q对话框3/9/202347北京交通大学计算机学院翟高寿图形用户接口特点q基于图形元素来表示功能,方便用户操纵和触发对应功能q同屏多窗口与并发进程相对应q支持即时交互,鼠标点击和键盘输入并举q操作直观,不必死记命令行参数,传递信息量大3/9/202348北京交通大学计算机学院翟高寿图形用户接口实现及运行机制q面向对象程序设计方法q消息产生、传递及处理消息作为窗口的
22、输入,如用户操作、其它窗口或系统发出的请求或通知消息由各窗口自己的窗口过程进行处理q事件驱动模式3/9/202349北京交通大学计算机学院翟高寿1.3 操作系统用户接口及系统调用实现1.3.1 操作系统接口分类1.3.2 联机命令接口1.3.3 图形用户接口1.3.4 系统调用3/9/202350北京交通大学计算机学院翟高寿系统调用的基本概念q定义v系统过程系统服务系统调用命令q与普通过程调用的区别运行在不同的系统状态软中断进入机制返回及重新调度问题嵌套调用嵌套调用3/9/202351北京交通大学计算机学院翟高寿系统调用举例说明q简单用户程序例子v从一个文件读取数据,再将它们拷贝到另一文件中q
23、系统调用分析源数据文件打开目标数据文件创建文件数据读入到缓冲缓冲数据写出到文件程序正常结束3/9/202352北京交通大学计算机学院翟高寿系统调用举例说明#include void main(int argc,char*argv)int fdOld,fdNew;int count;char buffer2048;fdOld=open(argv1,O_RDONLY);fdNew=creat(argv2,0666);while(count=read(fdOld,buffer,sizeof(buffer)write(fdNew,buffer,count);exit(0);3/9/202353北京交通
24、大学计算机学院翟高寿直接进行系统调用的前提准备#define _LIBRARY_#include _syscall3(long,open,const char*,filename,int,flags,int mode);_syscall3(long,creat,const char*,filename,int,flags,int mode);_syscall3(ssize_t,read,unsigned,fd,char*,buf,size_t,count);_syscall3(ssize_t,write,unsigned,fd,char*,buf,size_t,count);_syscall1
25、(int,exit,long,flag);注意:1、系统调用号_NR_zgs的分配在include/asm-i386/unistd.h2、系统调用号与系统调用之间的联系建立在系统调用表中,即arch/i386/kernel/entry.S中描述的sys_call_table3/9/202354北京交通大学计算机学院翟高寿系统调用的类型q进程控制进程的创建、结束、等待子进程结束进程属性设置与获取执行一个文件(进程映像替换)q文件操纵文件的创建、打开、关闭、读/写q进程通信连接打开与关闭、消息发送与接收q系统信息维护时间设置与获取、文件访问/修改时间设置3/9/202355北京交通大学计算机学院翟
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北京 交通大学 XXXX 操作系统 2729
限制150内