ImageVerifierCode 换一换
格式:PPT , 页数:93 ,大小:205KB ,
文档编号:3025552      下载积分:28 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-3025552.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(三亚风情)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(计算机操作系统教程-Read课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

计算机操作系统教程-Read课件.ppt

1、计算机操作系统原理和设计南京大学计算机科学与技术系2001年7月ch1操作系统概论操作系统概论1.1操作系统的定义操作系统的定义1.1.1操作系统的定义和目标操作系统的定义和目标操作系统操作系统(Operating System)是管理硬件资源、控制程序执行,改善人机界面,合理组织计算机工作流程和为用户使用计算机提供良好运行环境的一种系统软件。它可被看作是用户和计算机硬件之间的一种接口,是现代计算机系统不可分割的重要组成部分。用户1用户2用户3用户4用户n财务系统航空订票上网浏览电子商务科学计算(应用程序)编译程序汇编程序编辑程序数据库(系统程序)操作系统计算机硬件图1-1 计算机系统的层次结

2、构硬件层硬件层 操作系统层操作系统层 语言处理层语言处理层 应用层应用层 综上所述,现代计算机的用户通过应用程序与计算机交互来解决他的应用问题。通常,应用程序用程序设计语言来表达,而不是直接用机器语言来开发。应用程序运行时,除依赖于语言处理程序的支持外,更多地依赖于操作系统提供的各种各样的功能和服务。计算机系统中配置操作系统的主要目标可归结为:方便用户使用方便用户使用 O S应该使计算机系统使用起来十分方便。扩大机器功能扩大机器功能 O S应该能改造硬件设施,扩充机器功能。管理系统资源管理系统资源 O S应该管理好系统中的所有硬件软件资源。提高系统效率提高系统效率O S应该使计算机系统的资源得

3、到充分利用,使计算机系统的效率非常高。构筑开放环境构筑开放环境 O S应该构筑出一个开放环境,主要是指:遵循有关国际标准;支持体系结构的可伸缩性和可扩展性;支持应用程序在不同平台上的可移植性和可互操作性。1.1.2操作系统的作用操作系统的作用1.1.2.1OS作为用户与计算机硬件之间的作为用户与计算机硬件之间的接口接口1.1.2.2OS作为计算机系统的资源管理者作为计算机系统的资源管理者1.1.2.3OS作为虚拟计算机作为虚拟计算机1.1.3操作系统的主要特性操作系统的主要特性1.1.3.1第一个特性第一个特性-并发性并发性并发性(并发性(Concurrence)是指两个或两)是指两个或两个以

4、上的活动在同一时间间隔内发生个以上的活动在同一时间间隔内发生发挥并发性能够消除计算机系统中部件发挥并发性能够消除计算机系统中部件和部件之间的相互等待,有效地改善了和部件之间的相互等待,有效地改善了系统资源的利用率,改进了系统的吞吐系统资源的利用率,改进了系统的吞吐率,提高了系统效率率,提高了系统效率多个I/O设备同时在I/O;设备I/O和CPU计算同时进行;内存中同时有多个作业被启动交替、穿插地执行,这些都是并发性活动的例子。发挥并发性能够消除计算机系统中部件和部件之间的相互等待,有效地改善了系统资源的利用率,改进了系统的吞吐率,提高了系统效率。例如,一个程序等待I/O完成时,就出让CPU,而

5、调度另一个程序运行,在程序等待I/O时,CPU便不会空闲,这就是采用了并发技术。 但由此引发了一系列的问题,使系统变得复但由此引发了一系列的问题,使系统变得复杂化杂化如何从一个活动切换到另一个活动?怎样将各个活动隔离开来,使之互不干扰,免遭对方破坏?怎样让多个活动协作完成任务?怎样协调多个活动对资源的竞争?如何保证每个活动的资源不被其它进程侵犯?多个活动共享文件数据时,如何保证数据的一致性? 为了更好的解决上述问题,操作系统中很早就引入了一个重要的概念-进程,由于进程能清淅刻划操作系统中的并发性,实现并发活动的执行,因而它已成为现代操作系统的一个重要基础。 采用并发技术的系统又称为多任务系统(

6、Multitasking),计算机系统中,并发的实质是一个物理CPU(也可以多个物理CPU) 在若干道程序之间多路复用,这样就可以实现程序之间的并发,以及CPU与I/O设备、I/O设备与I/O设备之间的并行,并发性是对有限物理资源强制行使多用户共享以提高效率。结论:实现并发技术的关键之一是如何对系统内的多个活动(进程)进行切换的技术。1.1.3.2第二个特性第二个特性-共享性共享性共享指操作系统中的资源包括硬件资源和信息资源,可被多个并发执行的进程所使用 可以分成两种资源共享方式:互斥共享: 系统中的某些资源如打印机、磁带机、卡片机,虽然它们可提供给多个进程使用,但在同一时间内却只允许一个进程

7、访问这些资源。当一个进程还在使用该资源时,其它欲访问该资源的进程必须等待,仅当该进程访问完毕并释放资源后,才允许另一进程对该资源访问。这种同一时间内只允许一个进程访问的资源称临界资源,许多物理设备,以及某些数据和表格都是临界资源,它们只能互斥地被共享。同时访问 : 系统中的还有许多资源,允许同一时间内多个进程对它进行访问,这里“同时”是宏观上的说法。典型的可供多进程同时访问的资源是磁盘,可重入程序也可被同时共享。与共享性有关的问题是资源分配、信息保护、存取控制等,必须要妥善解决好这些问题。1.1.3.3第三个特性第三个特性-异步性异步性(Asynchronism)操作系统中的异步异步(随机)性

8、处处可见 例如,一个进程在CPU上运行一段时间后,由于等待资源满足或事件发生,它被暂停执行,CPU转让给另一个进程执行。系统中的进程何时执行?何时暂停?以什么样的速度向前推进?进程总共要多少时间执行才能完成?这些都是不可予知的,或者说该进程是以异步方式运行的,异步性给系统带来了潜在的危险,有可能导致与时间有关的错误,但只要运行环境相同,操作系统必须保证多次运行作业,都会获得完全相同的结果。操作系统中的随机性处处可见,例如,作业到达系统的类型和时间是随机的;操作员发出命令或按按钮的时刻是随机的;程序运行发生错误或异常的时刻是随机的;各种各样硬件和软件中断事件发生的时刻是随机的等等, 异步性给系统

9、带来了潜在的危险,有可能导致与时间有关的错误 操作系统的一个重要任务是必须确保捕捉任何一种随机事件,正确处理可能发生的随机事件,正确处理任何一种产生的事件序列,否则将会导致严重后果1.1.4操作系统需要解决的主操作系统需要解决的主要问题要问题1.1.4.1提供解决资源冲突的策略和技术提供解决资源冲突的策略和技术1.1.4.2协调并发活动的关系协调并发活动的关系1.1.4.3保证系统的安全性保证系统的安全性1.2操作系统的发展和形成操作系统的发展和形成1.2.1人工操作阶段人工操作阶段1.2.2管理程序阶段管理程序阶段1.2.3多道程序设计与操作系统的形成多道程序设计与操作系统的形成1.2.4操

10、作系统发展的主要动操作系统发展的主要动力和进一步发展力和进一步发展1.2.4.1操作系统发展的主要动力操作系统发展的主要动力 1.器件快速更新换代。 2.计算体系结构不断发展。 3.提高计算机系统资源利用率的需要。 4.让用户使用计算机越来越方便的需要。 5.满足用户新要求,提供给用户新服务。 1.2.4.2操作系统的进一步发展操作系统的进一步发展大型机1950196019701990编译没有软件分时丫1980Multicss批处理分布系统多处理机驻留监督容错小型机196019701990Unix没有软件编译分时丫多处理机容错驻留监督微型机19701980Unix1990没有软件编译多处理机多

11、用户驻留监督多用户网络计算机1990没有软件编译多用户 操作系统的发展操作系统的发展1.微机操作系统的发展微机操作系统的发展 2.并行操作系统的发展并行操作系统的发展 3.3.分布式操作系统的发展分布式操作系统的发展 4.4.并行分布式操作系统的发展并行分布式操作系统的发展 1.3操作系统的分类操作系统的分类1.3.1批处理操作系统批处理操作系统批处理系统的主要特征是:批处理系统的主要特征是:用户脱机工作用户脱机工作成批处理作业成批处理作业多道程序运行多道程序运行作业周转时间长作业周转时间长 批处理操作系统用户把要计算的应用问题编成程序,连同数据和作业说明书一起交给操作员,操作员集中一批作业,

12、并输入到计算机中。然后,由操作系统来调度和控制用户作业的执行。通常,采用这种批量化处理作业方式的操作系统称为批处理操作系统(Batch Operating System)。1.3.2分时操作系统分时操作系统允许多个联机用户同时使用一台计算机系统进行计算的操作系统称分时操作系统 分时操作系统具有以下特性: 同时性 独立性 及时性 交互性 分时操作系统和批处理操作系统存在下列不同点:目标不同 适应作业的性质不同 资源使用率不同 作业控制方式不同 1.3.3实时操作系统实时操作系统 有三种典型的实时系统:过程控制系统、信息查询系统、事务处理系统。 何谓实时操作系统?实时操作系统(Real Time

13、Operating System)是指当外界事件或数据产生时,能够接收并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制监控的生产过程或对处理系统作出快速响应,并控制所有实行任务协调一致运行的操作系统。 实时操作系统通常由四部分组成:l 数据采集:它用来收集、接收和录入系统工作必须的信息或进行信号检测。l 加工处理:它对进入系统的信息进行加工处理,获得控制系统工作必须的参数或作出决定,然后,进行输出,记录或显示。l 操作控制:它根据加工处理的结果采取适当措施或动作,达到控制或适应环境的目的。l 反馈处理:它监督执行机构的执行结果,并将该结果馈送至信号检测或数据按收部件,以便系统根

14、据反馈信息采取进一步措施,达到控制的予期目的。1.3.4网络操作系统网络操作系统为了使网络中的计算机能方便地传送信息和共享网络资源而加到网络中的计算机上的操作系统称网络操作系统(Network Operating System)。网络操作系统应该具有的功能: .网络通信 . 资源管理 . 网络管理 . 网络服务 下一代网络操作系统应能提供以下功能支撑:l 位置透明性 支持客户机、服务器和系统资源不停地在网络中装入卸出,且不固定确切位置的工作方式。l 名空间透明性 网络中的任何实体都必须从属于同一个名空间。l 管理维护透明性 如果一个目录在多台机器上有映象,应负责对其同步维护;应能将用户和网络故

15、障相隔离;同步多台地域上分散的机器的时钟。l 安全权限透明性 用户仅需使用一个注册名及口令,就可在任何地点对任何服务器的资源进行存取,请求的合法性由操作系统验证,数据的安全性由操作系统保证。l通信透明性 提供对多种也1.3.5分布式操作系统分布式操作系统分布式计算机系统是指由多台分散的计算机,经互连网络连接而成的系统,它满足以下条件:l 系统中任意两台计算机可以通过系统的安全通信机制来交换信息。l 系统中的资源为所有用户共享,用户只要考虑系统中是否有所需资源,而无需考虑资源在哪台计算机上。l 系统中的若干台机器可以互相协作来完成同一个任务,换句话说,一个程度可以分布于几台计算机上并行运行,一般

16、的网络是不满足这个条件的,所以,分布式系统是一种特殊的计算机网络。l 系统中的一个结点出错不影响其它结点运行、即具有较好的容错性和健壮性。分布式操作系统(Distributed Operating System)具备四项基本功能:l 进程通信:提供有力的通信手段,让运行在不同计算机上的进程可通过通信来交换数据;l 资源共享:提供访问它机资源的功能,使得用户可以访问或使用位于它机上的资源,例如A结点上的一个进程使用B结点上的一台打印机,而B结点上的一个进程却在存取A结点上的一个文件。l并行运算:提供某种程度设计语言,使用户可编写分布式程序,该程序可在系统中多个节点上并行运行;l网络管理:高效地控

17、制和管理网络资源,对用户具有透明性、即使用分布式系统与传统单机相似。 分布式操作系统(Distrabuted Operatying System)与单机集中式操作系统的主要区别在于: .资源管理, .进程通信, .系统结构 三个方面。 分布式操作系统举例:分布式操作系统Plan9由AT&T公司BELL实验室于由 Ken Thompson (Unix设计者之一) 参与开发的分布式操作系统 分布式操作系统Amoeba由荷兰自由大学和数学信息科学中心联合研制 分布式系统研究和开发的主要方向:l 分布式系统结构:研究非共享通路结构和共享通路结构。l 分布式操作系统:研究资源管理方法、同步控制机制、死锁

18、的检测和解除和进程通信模型及手段等。l 分布式程序设计:扩充顺序程序设计语言使其具有分布程序设计能力;开发新的分布式程序设计语言。l 分布式数据库:设计开发新的分布式数据库。l 分布式应用 :研究各种分布分式并行算法,研究在办公自动化、自动控制、管理信息系统等各个领域的应用。1.3.6嵌入式操作系统嵌入式操作系统 什么是嵌入式软件? 嵌入式软件具有以下特点:(1)微型化 (2)专业化 (3)实时性1.4操作系统的功能操作系统的功能1.4.1处理机管理处理机管理1.4.2存储管理存储管理1.4.3设备管理设备管理1.4.4文件管理文件管理1.4.5网络与通信管理网络与通信管理1.4.6用户接口用

19、户接口1.5操作系统提供的服务和用户接口操作系统提供的服务和用户接口1.5.1操作系统提供的基本服务操作系统提供的基本服务 . .创建程序创建程序 . .执行程序执行程序 . .数据数据I/O I/O . .信息存取信息存取 . .通信服务通信服务 . .错误检测和处理错误检测和处理 此外此外, ,还具有另外一些功能还具有另外一些功能: :资源分配资源分配, , 统计统计, ,保护。保护。1.5.2操作系统提供的用户接口操作系统提供的用户接口从系统的角度来说,操作系统的服务和功能可以不同方式提供给用户,最基本的有两种:l 系统调用(System Call) 是由操作系统实现完成某种功能的过程。

20、它是程序与操作系统的接口,又称程序接口或编程级接口,在编写的程序中使用“系统调用” 就可以获得操作系统的底层服务,访问系统的各种软硬件资源。l系统程序(System Program) 可以看作是操作系统提供给用户的功能级接口。它是操作系统为用户提供的解决使用计算机和计算的共性问题所有服务的集合。这可以当作操作系统高层提供的服务(虽然它们不能算作操作系统的一部分),用户常常通过操作命令来调用系统程序。1.5.2.1系统调用系统调用1.系统调用的分类系统调用的分类 .进程和作业管理 .文件操作 .设备操作 .信息维护 .通信2.系统调用的实现要点系统调用的实现要点 一.是编写系统调用处理程序; 二

21、.是设计一张系统调用入口地址表,每 个入口地址都指向一个系统调用的处理程序,有的系统还包含系统调用自带参数的个数; 三.是陷入处理机制需开辟现场保护区,以保存发生系统调用时的处理器现场。 图1-7是系统调用的处理过程。 System Call用户程序A0SUB0SUB1SUBiSUBnA1AiAn系统调用处理子程序取系统功能号找入口地址表相应入口地址结束处理心潮难现场入口地址表A0A1AiAn保护CPU现场系统调用陷入机构陷入指令图1-7 陷入机构和系统调用处理过程 系统调用的参数传递一是由访管指令或陷入指令自带参数,可以规定指令之后的若干单元存放的是参数,这叫直接参数;或者在指令之后紧靠的单

22、元中存放参数的地址,这叫间接参数。二是通过CPU的通用寄存器传递参数,这种方法不宜传递大量参数。改进的方法是:在内存的一个块或表中存放参数,其首地址送入寄存器,实现参数传递,图1-8是这种方式参数传递的示意。三是在内存中开辟专用堆栈区域传递参数。图1-8 传递参数的一种方法操作系统X: 参数LOAD AddR XSystem Call 8X图1-8 传递参数的一种方法从表X取参数系统调用8的处理子程序寄存器图1-9 Unix系统调用处理过程源程序函数替换目标程序nw=write(fd,buf,count)Load r0,fdTrap 04Bufcount xxxxx8904(H) * $Tra

23、p中断处理程序C编译装配系统调用入口表Write地址查表Write调用处理程序处理程序中断带参数返回图1-9 Unix系统调用处理过程 Linux系统调用 Linux有170个系统调用,应用程序和Shell通过系统调用机制访问Linux内核(功能)。每个系统调用由两部分组成:l 核心函数 运行在核心态,是实现系统调用功能的(内核)代码,作为操作系统的核心驻留在内存中,是一种共享代码,用C语言书写。它运行在核心态,数据也存放在内核空间,通常它不能使用系统调用,也不能使用应用程序可用的库函数。l 接口函数 是提供给应用程序的API,以库函数形式存在Linux的lib.a中,该库中存放了所有系统调用

24、的接口函数的目标代码,用汇编语言书写。其主要功能是把:系统调用号、入口参数地址传送给相应的核心函数,并使用户态下运行的应用程序陷入核心态。Linux系统调用入口程序entry.s,是用汇编写的,它包含了系统调用入口地址表,给出了所有系统调用核心函数的名字: ENTRY(sys-call-table) .long SYMBOL-NAME(sys-ni-syscall) 0 .long SYMBOL-NAME (sys-exit) 1 .long SYMBOL-NAME (sys-fork) 2 .long SYMBOL-NAME (sys-read) 3 .long SYMBOL-NAME (s

25、ys-write) 4 .long SYMBOL-NAME (sys-open) 5 .long SYMBOL-NAME(sys-close) 6 .long SYMBOL-NAME (sys-vfork ) 190Linux的系统调用号就是系统调用入口表中位置的序号,所有系统调用通过接口函数将系统调用号传给内核,内核转入系统调用控制程序再通过调用号位置来定位核心函数,Linux内核的陷入由0 x80(int80h)中断实现。系统调用控制程序的主要功能为:取系统调用号;根据系统调用号定位核心函数地址;根据通用寄存器内容,从用户栈中取入口参数;核心函数执行,把结果返回应用程序。3.系统调用与过程

26、系统调用与过程(函数函数)调用的区别调用的区别l 一是调用形式一是调用形式 过程(函数) 使用一般调用指令,其转向地址是固定不变的,包含在跳转语句中;但系统调用中不包含处理程序入口,而仅仅提供功能号,按功能号调用。l 二是被调用代码的位置二是被调用代码的位置 过程(函数) 调用是一种静态调用,程序和被调代码在同一程序内,经过连接编辑后作为目标代码的一部份。当过程(函数) 升级或修改时,必须重新编译连结。而系统调用是一种动态调用,系统调用的处理代码在调用程序之外(在操作系统中) ,这样一来,系统调用处理代码升级或修改时,与调用程序无关。而且,调用程序的长度也大大缩短,减少占用的存储空间。l 三是

27、提供方式三是提供方式 过程(函数) 往往由高级语言或汇编语言的编译系统提供,不同编译系统提供的过程(函数) 可以不同;系统调用由操作系统提供,一旦操作系统设计好,系统调用的功能、种类与数量便固定不变了。l四是调用的实现四是调用的实现 程序使用一般机器指令转子指令来调用过程(函数) ,是在用户态运行的;程序执行系统调用,是通过中断机构来实现,需要从用户态转变到核心态,在管理状态下运行,因此,安全性好。1.5.2.2系统程序系统程序1.系统程序的分类系统程序的分类文件管理文件管理 状态信息状态信息 程序设计语言支持程序设计语言支持 程序的装入和执行支持程序的装入和执行支持 通信通信 其它软件工具其

28、它软件工具 2.命令解释程序命令解释程序命令解释程序的主要功能是接受和执行下一条用户从键盘输入的命令。当一个新的批作业被启动,或新的交互型用户登录进系统时,系统就自动地执行命令解释程序,它负责读入控制卡或命令行,并作出相应解释和执行。命令解释程序实现的两种方式 一种是它自身包含了命令的执行代码。 另一种是由专门的“系统程序” 实现,它自身不含命令处理代码,也不进行处理,而仅仅把这条命令对应的命令文件装入内存执行。 命令解释程序的处理过程 操作系统做完准备工作后便启动命令解释程序,它输出命令提示符,等待键盘中断到来。每当用户打入一条命令(暂存在命令缓冲区)并按回车换行时,申请键盘中断。CPU响应

29、后,将控制权交给命令解释程序,接着读入命令缓冲区内容,分析命令、接受参数。若为简单命令立即转向命令处理代码执行。否则查找命令处理文件,装入主存,传递参数,将控制权交给其执行。命令处理结束后,再次输出命令提示符,等待下一条命令。用户如何来向操作系统提交作业和说明运行意图呢? 操作系统一般都提供了联机作联机作业控制业控制方式和脱机作业控制脱机作业控制方式两个作业级的接口,这两个接口使用的手段为:操作命令(语言)和作业控制语言。(1)联机用户接口操作命令 命令行方式 批命令方式 图形化方式(2) 脱机用户接口作业控制语言 批处理用户接口由作业控制语言( Job Control Language)(一

30、组作业控制语句或作业控制操作命令)组成。由于批处理作业的用户不能直接与他们作业交互,只能委托操作系统来对作业进行控制和干予,作业控制语言便是提供给用户,为实现所需作业控制功能委托系统代为控制的一种语言。用户使用JCL的语句,把他的运行意图、即需要对作业进行的控制和干予,事先写在作业说明书上,然后,将作业连同作业说明书一起提交给系统。当调度到该批处理作业运行时,系统调用JCL语句处理程序或命令解释程序,对作业说明书上的语句或命令,逐条地解释执行。如果作业在执行过程中出现异常情况,系统会根据用户在作业说明书上的指示进行干予。这样,作业一直在作业说明书的控制下运行,直到作业运行结束。 IBM JCL

31、的一个例子 有一个需要编译、连结编辑的作业,它的源程序和数据穿在卡片上,编译、连结编辑的结果均需在行式打印机上输出,编译结果要存盘,连结编辑结果还要从穿孔机输出,此作业用JCL语句组织如下:/ HAROLD JOB,WILSON,MSGLEVEL=(2,0),PRTY=6,CLASS=b/ COMP EXEC PGM=IEYFORT/ SYSPRINT DD SYSOUT=A/ SYSLIN DD DSNAME=SYSL,DISP=OLD/ SYSIN DD* . . /*/ GO EXEC PGM=FORTLINK/ SYSPRINT DD SYSOUT=A/ FTOTF001 DD UNI

32、T=SYSCP/ GO SYSIN DD* . ./*/1.5.2.3Unix的系统调用、库的系统调用、库函数和系统程序函数和系统程序 操作系统 系统调用:进程管理、存储管理、文件管理、设备管理 标准库函数 标准函数:打开、关闭、读、写、创建、撤销 标准系统程序(实用程序)系统程序:汇编、编译、编辑、Shell 用户图1-11系统程序、库函数、系统调用的分层关系 用户接口库函数接口系统调用接口POSIX标准 标准 内容 1003.0 概述与指南 1003.1 库函数(系统调用) 1003.2 Shell和实用程序 1003.3 测试方法和一致性 1003.4 实时扩展 1003.5 Ada语言

33、 1003.6 安全性扩展 1003.7 系统管理 1003.8 透明文件访问 1003.9 Fortran77联编 1003.10 超级计算 Unix系统调用系统调用符合可移植操作系统POSIX1003.1标准,每个兼容的Unix都必须支持它,用户可以使用系统调用直接调用Unix底层功能,其实现方法是通过把变量参数放入寄存器或堆栈中并发出陷阱指令,程序执行系统调用由用户模式转到核心模式,从而运行Unix。Unix的标准系统调用分进程管理、文件管理、设备管理、及状态控制等五十余条,系统调用是软件开发者进入Unix内核的入口,内核常驻内存,对所有用户进程的工作、文件系统的访问进行监视和控制。 U

34、nix标准函数Unix还提供标准函数(又叫标准例行程序),可移植操作系统POSIX1003.1标准实际上定义了一个库过程的集合,它们组成了标准函数库,其中较重要的是I/O库函数。库函数用汇编语言编写,但却可以在C语言中调用,例如C程序可以通过执行一个Read库过程来实现Read系统调用。有些功能系统调用不能实现,而函数却能做到,如格式变换、自动缓冲等。一般来说标准函数库建立在系统调用的上层,因此它提供的功能较系统调用强,使用也较方便。但是,库函数的实现最终要用到系统调用,标准 Unix系统程序Unix的内核之外包含有非常丰富的系统程序,包括语言处理程序、文件编辑程序和种种软件开发及维护工具。根

35、据可移植操作系统POSIX1003.2标准,描述了近百个系统程序的语义,其中大部分集中在文件管理、目录管理、过滤器、编译和程序开发工具方面。现有的各种Unix版本均实现了一部分最常用的系统程序约五十多条。据AT&T公司称,Unix下运行的微机软件包己有1000多个,正是这些应用程序大大加强了Unix的功能。通常,在高级语言中没有系统调用的概念,它通过标准函数或语句来间接地调用操作系统的功能。不论高级语言还是汇编语言,最终实际执行的不是源程序,而是经过编译或汇编产生的目标代码。需要调用操作系统功能的语句或标准函数,经编译及连接装配成目标程序段,其中包含了一系列对应的系统调用。1.6流行操作系统简

36、介流行操作系统简介1.6.1DOS操作系统操作系统 DOS的发展历史 DOS的主要功能 DOS的主要特点 DOS的主要缺点 1.6.2Wiindows操作系统操作系统1Wiindows操作系统概操作系统概况况2 Wiindows2 Wiindows的主要特点的主要特点3 3 Wiindows95/984WiindowsNT5Wiindows20001.6.3OS/2操作系统操作系统O S/2的主要特点有:l 采用图形化用户接口,操作直观方便。l 可以在16位和32位两种CPU上工作。l 使用虚存可扩充到4GB。l 引入会话、进程、线程概念,实现多任务控制。l 提供高性能文件系统,采用长文件名和

37、扩展文件属性。l 提供应用程序设计接口(API),可以支持多任务、多线程和动态连接。l 具有和MS-DOS的向上兼容性,MS-DOS的文件可在OS/2下读写。1.6.4Netware操作系统操作系统Netware是Novell公司开发的网络操作系统(Networking Operating System,NOS)。Netware具有高性能文件系统、支持DOS、OS/2、MAC、及Unix文件格式;具有三级容错,可靠性高;安全保密性好;具有开放性,提供开放的开发环境。Netware有多种版本,Netware lite是廉价点对点NOS,支持25个用户,每个结点可作为对等机。Netware2.2是

38、为小单位和工作组开发的NOS,满足工作组用户的各种需要。Netware3.1x是一个32位的NOS,更能发挥高档PC的计算能力,支持用户可达256个,能支持DOS,Windows、Macintosh、OS/2和Unix工作站访问Netware服务器。Netware4.xx是其NOS新版,增强了网络目录服务,支持用户数可达1000个。Netware3.11是最为成功的NOS,已占有很大市场份额,Novell对其进行了改进于1993年8月推出替代产品Netware3.12,其中,主要加进了以下功能:电子邮件、支持Windows用户的工具、支持CD-ROM、加强了工作站Shell功能。1.6.5Un

39、ix操作系统操作系统美国电报电话公司的贝尔实验室于1969年在DEC公司的小型系列机PDP-7上开发成功1973年开发出C语言并改写Unix(Unix第5版),从而使得Unix具有高度易读性、可移植性,为迅速推广和普及走出了决定性的一步1974年7月,”Unix分时系统”一文在美国权威杂志CACM上发表,这是第一次正式公布于众,引起了广泛注意最早可获得的Unix是1975年的Unix第6版1978年的Unix第7版,可以看作当今Unix的祖先,该版为Unix走进商界奠定了基础。1981年,AT&T公司发表了Unix System ,从此开始,Unix不再按Version改为按System号排列

40、。1983年,AT&T公司公布了Unix System,至今它还是最新版本。由大学开发的非AT&T系统的Unix是美国加利福尼州立大学Berkeley分校运行在VAX-11机上的 Unix BSD ( Berkelry Software Distribution),其中,最著名的是4.1BSD、4.2BSD、4.3BSD和4.4BSD,这些版本中加入了页式虚存、长文件名、加 进 网 络 协议TCP/IP等,在Unix 的发展中起了重要 作用,该校的版本已成为教学、科研、商用的主流系统。Unix取得成功的最重要原因是系统的开放性,公开源代码,用户 可以 方便地向Unix系统中逐步添加新功能和工具

41、,这样可使UINX越来越完善,能提供更多服务,成为有效的程序开发支撑平台。它是目前唯一可以安装和运行在从微型机、工作站直到大型机和巨型机上的操作系统 。Unix的主要特点:l Unix的结构分核心部分和应用子系统,便于做成开放系统。l 具有分层可装卸卷的文件系统,提供文件保护功能。l 提供I/O缓冲技术,系统效率高。l 剥夺式动态优先的CPU调度,有力地支持分时操作。l 命令语言丰富齐全。l 具有强大的网络与通信功能。l 支持多用户、多任务l 请求分页式虚拟存储管理 Unix已成为一个操作系统标准实际上Unix已不是指一个具体操作系统。许多公司和大学都推出了自己的Unix系统,如IBM公司的A

42、IX操作系统,SUN公司的Solaris操作系统,柏克利大学的Unix BSD 操作系统,DEC公司的ULTRIX操作系统,CMU的Mach操作系统,SW公司的Unix SCO以及AT&T公司自己的Unix SystemV等。上述版本互不兼容,非常混乱。为了使同一个程序能在所有不同Unix版本上运行,IEEE拟定了一个Unix标准,称作POSIX。它定义了相互兼容的Unix系统必须支持的最少系统调用接口。该标准已被多数Unix支持,冈时,其他一些操作系统也在支持POSIX标准。1.6.6Solaris操作系统操作系统SUN Microsystem公司开发的Solaris是具有完全对称多处理和多

43、线程支持的32位分布式计算环境的Unix操作系统变种。 Solaris2.x基于SPARC和Intel平台,是一个可移植操作系统,可移植到任何新的主流平台上。1998年10月,SUN公司隆重推出64位操作系统Solaris7.0,这是基于2.6版的最新版本,在网络特性、可靠性、兼容性、互操作性、易于配置和管理方面均有很好改进。SUN NFS(Network File System)是1984年推出的一个网络文件系统产品, NFS提供了在异种机、异种操作系统的网络环境下共享文件的简单有效的方法。NFS基于C/S模式,使用UDP/FP协议和RPC(Remote Procedure Call)机制,

44、主要特点有:提供透明的文件访问和文件传送,用户使用本地或远程的文件没有区别,真正实现了分布式数据处理;易于扩充,扩充新的资源或软件,不需改变现有工作环境;性能高、可靠性好、具有可伸缩性。1.6.7Macintosh操作系统操作系统1986年,美国Apple公司推出Macintosh机操作系统。MAC是全图形化界面和操作方式的鼻祖。由于它拥有全新的窗口系统、强有力的多媒体开发工具和操作简便的网络结构而风光一时。Apple公司也就成为当时唯一能与IBM公司抗衡的PC机生产公司。 MAC操作系统的主要特点有1)采用面向对象技术;2)全图形化界面;3)虚拟存储管理技术;4)应用程序间的相互通信;5)强

45、有力的多媒体功能;6)简便的分布式网络支持;7)丰富的应用软件。1.6.8MINIX操作系统操作系统荷兰Vrije大学计算机系教授Andrew S. Tanenbavm开发了一个与Unix兼容,然而内核全新的操作系统Minix。Minix没有借用AT & T一行代码,所以不受其许可证的限制,学生可以通过它来剖析一个操作系统,研究其内部如何运作,其名称源于小Unix,因为它非常简洁,短小,故称Minix。Minix用C语言编写,着眼于可读性好,代码中加入了数千行注释。可运行在IBM PC,Macintosh,Sparc,Amiga,Atari等许多平台上。Minix一直恪守“Small is B

46、eautiful”的原则,早期Minix甚至没有硬盘就能运行。目前最常用的是Minix2.0,它具有多任务处理能力,可支持三个用户同时工作,支持TCP/IP,支持4GB内存。提供5个编辑器、200个实用程序。Tanenbavm 主页地址:http: /www.cs.vu.nl/ast/ Minix的版权为Prentice Hall所有,可免费下载用于教学。1.6.9自由软件和自由软件和Linux操作系统操作系统自由软件(Free Software or Freeware)是指遵循通用公共许可证GPL(General public License)规则,保证您有使用上的自由、获得源程序的自由,可

47、以自己修改的自由,可以复制和推广的自由,也可以有收费的自由的一种软件。自由软件出现的意义 。 1.6.9自由软件与 Richard stallmanGNU的含义是GNU is not Unix的意思,由自由软件的倡导者Richard stallman先生指导并启动的一个组织。七十年代后期起很多软件不再提供源码,使用户无法修改软件中的错误,使用尤为不便。为此,在1984年,Stallman先生启动了GNU计划,并成立了自由软件基金会 (Free Software Foundation , FSF)。Stallman先生通过GNU写出一套和Unix兼容,但同时又是自由软件的Unix系统,GNU 完

48、成了大部分外围工作,包括外国命令gcc/ gcc+, shell等,最终Linux内核为GNU工程划上了一个完美句号,现在所有工作继续在向前发展。目前人们熟悉的一些软件如C+编译器、Objective C、FORTRAN77、C 库、BSD email、BIND、Perl、Apache、TCP/IP、IP accounting、HTTPserver、Lynx Web都是自由软件的经典之作。 Linux的诞生Linux是由芬兰藉科学家Linus Torvalds于1991年编写完成的一个操作系统内核,当时他还是芬兰首都赫尔辛基大学计算机系的学生,在学习操作系统课程中,自己动手编写了一个操作系统原

49、型,从此,一个新的操作系统诞生了。Linus把这个系统放在Internet上,允许自由下载,许多人对这个系统进行改进、扩充、完善,许多 人做出 了关 键 性 贡 献。Linux由最初一个人写的原型变化成在Internet上由无数志同道合的程序高手们参与的一场运动。 Linux技术特点:(1) 继承了Unix的优点,又有了许多更好的改进,是集体智慧的结晶,能紧跟技术发展潮流,具有极强的生命力;(2) 通用的操作系统,可作为Internet上的服务器;可用做网关路由器;可用做文件和打印服务器;也可供个人使用;(3) 内置通信联网功能,可让异种机联网;(4) 开放的源代码,有利于发展各种特色的操作系

50、统;(5) 符合POSIX标准,各种Unix应用可方便地移植到Linux下;(6) 提供庞大的管理功能和远程管理功能;(7) 支持大量外部设备;(8) 支持32种文件系统,如Ext2、Ext、Xiafs、Isofs、Hpfs、MSDOS、UMSDOS、Proc、NFS、SYSV、Minix、SMB、Ufs、Ncp、VFAT、AFFS等;(9) 提供GUI,有图形接口X-Windows,有多种窗口管理器;(10) 支持并行处理和实时处理,能充分发挥硬件性能;(11) 可自由获得源代码,在Linux平台上开发软件成本低。1.6.10IBM系列操作系统系列操作系统IBM(Internetional

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|