《操作系统概念.ppt》由会员分享,可在线阅读,更多相关《操作系统概念.ppt(91页珍藏版)》请在优知文库上搜索。
1、操作系统概念操作系统概念第一章 导 论2023-3-27 Recommended ReadingnOperating System Concepts(6th), Abraham Silberschatz etc., WileynOperating System Concepts(7th), Abraham Silberschatz etc., WileynApplied Operating System ConceptsnModern Operating Systems(2nd) Andrew S. Tanenbaum, Prentice HallnOperating Systems:Inte
2、rnals and Design Principles(5th) William Stallings n计算机操作系统(第3版),汤子瀛 etc.,西安电子科技大学出版社n计算机操作系统教程 张尧学 史美林 清华大学出版社n计算机操作系统教程 周长林 左万历 高等教育出版社2023-3-27授课学时&内容n授课:68学时n章节:1-4部分及第6部分 part1: 1 - 3章 Part2:4 - 8章 Part3:9 -12章 Part4:13-14章 Part6:18-19章2023-3-27课程形式n授课,作业,习题课n考试方式:笔试(期末考试)n成绩评定:期末考试(80%)+平时成绩(2
3、0%)2023-3-27学习操作系统目的n加深对操作系统的理解(加深对操作系统的理解(eg.Windowseg.Windows、LinuxLinux、Solaris etcSolaris etc)n熟悉操作系统的基本概念、基本结构及运行环熟悉操作系统的基本概念、基本结构及运行环境等知识境等知识n深入操作系统内部,理解并掌握操作系统的基深入操作系统内部,理解并掌握操作系统的基本原理、设计方法和相关的实现技术本原理、设计方法和相关的实现技术2023-3-27学习操作系统作用n设计操作系统设计操作系统 或者或者 修改现有的系统修改现有的系统 软件硬件漏洞软件硬件漏洞 存在人们意识不到的大量存在人们意
4、识不到的大量“操作系统操作系统” eg.eg.嵌入式操作系统嵌入式操作系统(Embedded OS(Embedded OS)n通过对使用的通过对使用的OSOS的理解,有助于编写高效、可靠的软的理解,有助于编写高效、可靠的软件,以及对程序执行流程的理解;件,以及对程序执行流程的理解; 如:线程之间的同步,防止死锁等;如:线程之间的同步,防止死锁等;n编程时借鉴操作系统的设计思想和算法编程时借鉴操作系统的设计思想和算法 操作系统中所用的许多概念和技巧可以推广应用到其操作系统中所用的许多概念和技巧可以推广应用到其他领域他领域n选择购买操作系统选择购买操作系统 2023-3-27Java Synchr
5、onizationnSynchronized, wait(), notify() statementsnMultiple Notifications (notifyall() )nBlock Synchronization2023-3-27public synchronized void enter(Object item) while (count = BUFFER_SIZE) ;+count;bufferin = item;in = (in + 1) % BUFFER_SIZE;2023-3-27Fork()1n#include nint fdrd,fdwt;nchar c;nmain()
6、nn if (fdrd=open(“source”,O_RDONLY)= = -1) exit(1);n if (fdwt=creat(“dest”,0666)= = -1) exit(1);n fork();n rdwrt();n exit(0);nnrdwrt()n n for (;) n if (read(fdrd,&c,1) !=1) return;n write(fdwt,&c,1); n 2023-3-27Fork()2n#include nint fdrd,fdwt;nchar c;nmain()n n fork();n if (fdrd=open(“source”,O_RDON
7、LY)= = -1) exit(1);n if (fdwt=creat(“dest”,0666)= = -1) exit(1);n/ 两个进程执行同样的代码n rdwrt();n exit(0);nnrdwrt()n n for (;) n if (read(fdrd,&c,1) !=1) return;n write(fdwt,&c,1); n 2023-3-27课程特点n基础核心课n概念多,原理性强,比较抽象n学习难点:概念、原理、算法,数据结构 其中,第七章 进程同步是操作系统最难的一部分内容;2023-3-27涉及领域n计算机体系结构/硬件n软件设计n程序设计语言n数据结构n算法n网络
8、2023-3-27操作系统复杂性 性能 与 方便使用 性能 与 简单性 硬件 与 软件 (trade off) 多任务,内存管理&保护,网络,文件存取,设备控制,用户界面错误检测及恢复系统,硬件控制,安全操作系统是目前最复杂的软件2023-3-27本章主要内容n操作系统的概念n大型机系统n桌面系统n多处理器系统n分布式系统n集群系统n实时系统n手持系统n功能迁移n计算环境2023-3-27计算机系统组成部分nHardware provides basic computing resources (CPU, memory, I/O devices)nOperating System contro
9、ls and coordinates the use of the hardware among the various application programs for the various usersnApplication programs define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, video games, business programs)nUsers (people
10、, machines, other computers)2023-3-27计算机系统组成部分的逻辑图2023-3-271.1 操作系统的概念n操作系统的名称操作系统的名称n监控(督)程序(系统)(Monitor)n执行系统(程序)(Executive System(program)n控制系统(程序)(Control System program)n管理程序(Supervisor, Supervisory System)n核心程序(Kernel)n操作系统(Operating System)操作系统做什么?2023-3-27n #include n int main(int argc, char
11、 *argv) n n puts(hello world); n return 0; n 用户告诉操作系统执行hello程序操作系统找到该程序,检查其类型检查程序首部,找出正文和数据的地址 文件系统找到第一个磁盘块父进程需要创建一个新的子进程,执行hello程序操作系统需要将执行文件映射到进程结构操作系统设置CPU上下文环境,并跳到程序开始处程序的第一条指令执行,失败,缺页中断发生 操作系统分配一页内存,并将代码从磁盘读入,继续执行更多的缺页中断,读入更多的页面程序执行系统调用,在文件描述符中写一字符串n 操作系统检查字符串的位置是否正确n 操作系统找到字符串被送往的设备n 设备是一个伪终端,
12、由一个进程控制n 操作系统将字符串送给该进程n 该进程告诉窗口系统它要显示字符串n 窗口系统确定这是一个合法的操作,然后将字符串转换成像素n 窗口系统将像素写入存储映像区n 视频硬件将像素表示转换成一组模拟信号控制显示器(重画屏幕)n 显示器发射电子束n 你在屏幕上看到hello world2023-3-271.1 操作系统的概念n操作系统是管理计算机硬件和软件的程序,它还为应用程序提供基础,并且充当计算机硬件和计算机用户的中介。n操作系统的两大目标:n为用户提供一个方便使用的接口,以更便捷的方式在计算机硬件环境中执行用户程序;n公平有效的分配程序所需要的资源,提高资源的利用率;2023-3-
13、27研究OS的角度n用户的角度 用户接口:使用方便、资源利用率n系统的角度 计算机资源管理者管理与分配资源2023-3-27操作系统定义n资源分配器资源分配器管理与分配资源n控制程序控制程序控制用户程序的执行和输入输出设备的操作n内核内核一直运行在计算机上的程序(其他程序则为应用程序)n操作系统操作系统是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度,以及方便用户的程序集合。OS的发展过程无操作系统的计算机系统无操作系统的计算机系统n 人工操作方式人工操作方式n 脱机输入输出方式脱机输入输出方式批处理系统批处理系统n单道批处理系统单道批处理系统n多道批处理系统多道批处理系统分时系
14、统分时系统实时系统实时系统微机操作系统微机操作系统多处理机操作系统多处理机操作系统网络操作系统网络操作系统分布式操作系统分布式操作系统嵌入式操作系统嵌入式操作系统智能卡操作系统智能卡操作系统2023-3-27OS的发展过程 随着计算机技术和应用的日益发展而逐渐发展和完善,功能也有弱到强,成为计算机系统中的核心n推动操作系统发展的主要动力推动操作系统发展的主要动力q 不断提高计算机资源利用率的需要不断提高计算机资源利用率的需要q 方便用户方便用户q 器件的不断更新换代器件的不断更新换代q 计算机体系结构的不断发展计算机体系结构的不断发展2023-3-27OS的发展过程-人工操作方式人工操作方式n
15、手工时期 采取预约方式,用户独占资源硬件昂贵人工操作方式人工操作方式n工作流程:(1)由程序员事先穿孔(对应程序和数据)(2)将穿孔的纸带(卡片)装入纸带(卡片)输入机(3)再启动输入机将程序和数据输入计算机,(4)然后启动计算机运行。(5)运行完毕取走计算机结果。(6)下一位用户人工操作方式带来的矛盾及解决方法人工操作方式带来的矛盾及解决方法n缺点:(1)用户独占全机(资源浪费) (2)CPU等待人工操作:装入时、取走时CPU及内存等资源是空闲。CPU即负责计算,又要负责传输。(即属于单控制方式)n矛盾n人机矛盾即人工操作方式与机器利用率的矛盾nCPU与I/O设备之间速度不匹配的矛盾n解决方
16、法n通道技术、缓冲技术n脱机输入输出方式n返返回回 脱机输入脱机输入/ /输出方式输出方式(off-Line I/O(off-Line I/O)n工作流程:(示意图)n优点:(1)减少了CPU的空闲时间。 (2)提高了I/O速度(与高速的磁盘打交道)n输入设备n外围机n外存n输出设备n主机n外存n外存n外存n外围机nOS-Introductionn高速n高速n返返回回2023-3-27OS的发展过程批处理系统批处理系统n批处理系统批处理系统 工作方式: 用户将作业交给系统操作员,系统操作员将许多用户的作业组成一批作业(job)之后输入到计算机中,在系统中形成一个自动转接的连续的作业流,系统自动、依次执行每个作业。最后由操作员将作业结果交给用户 操作系统:自动将控制从一个任务转到下一个任务2023-3-27OS的发展过程批处理系统批处理系统卡片卡片早期批处理系统早期批处理系统IBM1401IBM7094IBM1401输入磁带输入磁带磁带机磁带机卡片阅读机卡片阅读机输出磁带输出磁带打印机打印机$END$RUNData for program$LOADFortran program$FORT