一、操作系统绪论_第1页
一、操作系统绪论_第2页
一、操作系统绪论_第3页
一、操作系统绪论_第4页
一、操作系统绪论_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、绪论1.操作系统的目标和作用1.1操作系统(OS)的定义(1)有哪些OSWindows、Linux、Mac、Android。(2)OS能做什么各种命令:dir(相当于linux下的ls)、copy、del(删除文件)、format(格式化磁盘或分区)。启动、结束用户程序。系统调用:例如INT指令。UNIX等提供多任务、多用户环境。(3)OS不能做什么不做文档编辑、不做房屋设计、不是编译程序、...。(4)OS是什么OS是直接控制和管理计算机硬件、软件资源,合理地对各类作业进行调度,方便用户使用的程序集合。1.2OS在计算机中的地位1.3OS的目标目前存在着多种类型OS,不同类型OS其目标各有所侧重。通常计算机硬件上配置OS的目标有以下几点:(1)方便性:方便用户操纵计算机。(2)有效性:第一层含义是提高系统资源利用率;第二层含义是提高系统吞吐量。(3)可扩充性:随着硬件的发展,OS具有可扩充性。例如出现了网卡,OS功能有了进一步发展。(4)开放性(兼容性):兼容不同厂商生产的设备。1.4OS的作用(1)作为用户和计算机硬件间的接口OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。(2)作为计算机系统资源的管理者处理机管理、存储器管理、设备管理、文件管理。(3)实现了对计算机资源的抽象。1.5推动OS发展的主要动力(1)不断提高计算机资源的利用率(2)方便用户(3)元器件的不断更新换代(例如内存地址位数的扩展,操作系统也需要更新换代)(4)计算机体系结构的不断发展(多CPU的出现)2.操作系统的发展过程2.1无OS2.1.1人工操作方式1946-50年代中:电子管时代,计算机速度慢;计算资源昂贵,集中计算,无操作系统。工作方式:用户:既是程序员又是操作员;用户是专业人员。输入输出:纸带或卡片。缺点:用户独占全机,CPU等待人工操作。2.1.2脱机I/O方式优点:(1)减少了CPU的空闲时间(2)提高了I/O速度2.2有OS2.2.1批处理系统用户使用系统提供的作业控制语言(JCL)描述自己对作业运行的控制意图,并将这些控制信息连同作业一起提交给计算机。由OS去控制、调度各作业的运行并输出结果。由于作业进入系统后用户不再干预,从而提高了效率。控制指对单个作业的管理和指挥;调度指在多个作业之间分配和管理计算资源的过程。设计目标:提高系统资源的使用效率。提高作业吞吐量。(1)单道批处理系统为实现对作业的连续处理,需要先把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序(Monitor),在它的控制下,使这批作业能一个接一个地连续处理。单道批处理系统的特征:自动性、顺序性、单道性。单道批处理系统的缺点:系统中的资源得不到充分的利用。这是因为在内存中仅有一道程序,每逢该程序在运行中发出I/O请求后,CPU便处于等待状态,必须在其I/O完成后才继续运行。又因I/O设备的低速性,更使CPU的利用率显著降低。如下图所示为单道程序的运行情况,在t2~t3、t6~t7时间间隔内CPU空闲。(2)多道批处理系统在多道批处理系统中,用户提交的作业都先存放在外存上并排成一个队列,称为"后备队列";然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和软硬系统中的各种资源。后备队列按照某种规则存放,如先来先到,或优先级别。硬件系统的资源:CPU、内存、输入/输出设备(如硬盘、打印机和网络接口等)、其他硬件资源(如系统总线)。软件系统的资源:操作系统服务、共享库和程序、数据资源。所以为了进一步提高资源利用率和系统吞吐量,在20世纪60年代中期引入了多道程序设计技术,将多道程序设计技术应用于批处理系统由此形成多道批处理系统。多道程序设计技术是一种软件技术。多道批处理系统的特征:多道性、无序性、调度性。多道程序运行,系统性能明显改善。优点:资源利用率高、系统吞吐量大。缺点:周转时间变长(周转时间是指从程序发出I/O请求到I/O完成的时间,可能存在多个程序竞争同一个资源,从而导致周转时间变长)、无交互能力(无法中断执行程序)。多道批处理系统是一种十分有效但又非常复杂的系统,为使系统多道程序间能协调地运行,系统必须解决下述一系列问题:(1)处理机争用问题。既要满足各道程序运行需要,又要提高处理机利用率。(2)内存分配和保护问题。系统应为每道程序分配必要的内存空间,使它们"各得其所";且不会因某道程序出现异常情况而破坏其它程序。(3)I/O设备分配问题。系统应采取适当策略分配系统中的I/O设备,以达到既能方便用户对设备的使用,又能提高设备利用率的目的。(4)文件的组织和管理问题。系统应能有效组织存放在永久性存储介质中的大量程序和数据,使它们既便于用户使用,又能保证数据的安全性。(5)作业管理问题。系统中存在着各种作业(应用程序),系统应能对所有作业进行合理组织,以满足这些作业用户的不同要求。(6)用户与系统的接口问题。为使用户能方便的使用操作系统,OS还应提供用户与OS之间的接口。程序是静态代码的集合,操作系统通过变成进程来执行程序。作业是完成特定任务的一个或一组程序,由操作系统管理和调度。2.2.2分时系统(Time-SharingSystem)(1)一台计算机连接多个终端,用户通过各自的终端把作业送入计算机;计算机又通过终端向各个用户报告其作业的运行情况。(2)计算机能分时轮流地为各终端用户服务,并能及时地对用户服务请求予以响应。目标:对用户的请求及时响应;尽量提高系统资源的利用率。分时系统基本特征:(1)多路性(含有多个终端)(2)独立性(各个终端的执行互不影响)(3)及时性(在某个时间内响应)(4)交互性(在某个时间点一定会结束)2.2.3实时系统(Real-TimeSystem)提高系统的响应时间,对外部发生事件在规定时间内对其进行处理。(1)实时控制系统要求计算机能尽快处理测量系统测得的数据,以尽快实施响应控制。如:工业控制、导弹发射、飞机飞行。(2)实时信息系统要求计算机能对终端设备发来的服务请求及时予以正确回答。如:订票系统、股票交易系统。实时任务按任务执行时是否呈现周期性划分:周期性实时任务。非周期性实时任务。都必须联系着一个截止时间(Deadline)。开始截止时间——任务在某时间以前必须开始执行;完成截止时间——任务在某时间以前必须完成。根据对截止时间的要求来划分:硬实时任务(hardreal-timetask)。系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。软实时任务(Softreal-timetask)。它也联系着一个截止时间,但并不严格,若偶尔错过了任务的截止时间,对系统产生的影响也不会太大。实时系统基本特征:快速的响应时间。有限的交互能力(交互能力位于批处理与分时任务之间)。高可靠性。2.2.4三种基本操作系统的比较3.操作系统的基本特性(1)并发(Concurrence)并发:指在一段时间内宏观上有两个或两个以上事件同时运行,但在单处理机系统中,每一时刻仅能有一道程序执行,故微观上这些程序只能是分时交替执行。并行:指两个或多个事件在同一时刻发生(宏观上同时,微观上同时)。(2)共享(Sharing)系统中资源供内存中多道程序共同使用。(3)虚拟(Virtual)技术通过某种技术把一个物理实体变成若干个逻辑上对应物。时分复用技术(将CPU时间分为多个时间片,轮流为多个程序提供服务),分时系统将一机虚拟为多机。虚拟处理机技术:例,计算机将CPU时间分成小片段,每个用户轮流获得一小段时间来运行其任务。系统通过这种快速切换,使得每个用户都感觉到他们仿佛拥有存储、输入输出设备等资源,系统通过调度算法高效管理这些资源。空分复用技术(将整个磁盘分为逻辑上的C盘、D盘、E盘、F盘)。(4)异步性(Asynchronism)由于资源共享,系统中并发执行的多道进程"走走停停",以不可预知速度向前推进。异步性特征是并发和共享带来的结果。4.操作系统的主要功能4.1处理机管理功能4.1.1进程控制在传统多道程序环境下,进程控制是操作系统管理计算资源的关键部分。多道程序:操作系统可以同时加载多个程序到内存中,并在它们之间进行切换以实现并发执行。(1)创建进程:当一个作业(job)需要运行时,操作系统首先为它创建一个或多个进程。(2)分配资源:创建进程后,操作系统会为其分配必要资源,这可能包括内存空间、输入输出设备、文件句柄等。资源的分配使得进程能够执行其任务。(3)进程状态转换:在进程生命周期中,它会经历几种状态,如新建(new)、就绪(ready)、运行(running)、等待/阻塞(waiting/blocked)和结束(terminated)。操作系统负责管理这些状态转换,以确保系统资源的有效使用和进程之间的协调。(4)撤消进程:当进程完成其任务或因其他原因需要结束时,操作系统会撤消该进程,更改其状态为终止状态,并在进程控制块(PCB)中记录相关信息。(5)资源回收:进程撤消后,操作系统会回收它所占用的资源,如内存、设备、文件句柄等,使其可供其他进程使用。4.1.2进程同步为确保多个进程能够有条不紊地运行,操作系统引入了同步机制。同步机制是为了解决进程间冲突和协调问题,特别是在涉及共享资源和执行顺序。有两种协调方式:(1)进程互斥(MutualExclusion)目的:进程互斥的目的是防止多个进程同时访问同一个临界资源(如共享数据、设备等)。实现方式:常用的实现方法包括锁(如互斥锁、信号量)、监视器等。这些方法能够确保在任何时刻,只有一个进程可以访问临界资源。应用场景:例如,当两个进程都需要写入同一个文件数据时,互斥机制可以防止数据冲突或损坏。(2)进程同步(Synchronization)目的:进程同步的目的是协调合作进程间的执行顺序,以确保按照特定顺序完成任务。实现方式:可以通过条件变量、信号量、屏障(barriers)等来实现。这些机制可以使一个进程在特定条件得到满足之前等待,或者在继续执行前等待其他进程达到某个状态。应用场景:例如,在一个由多阶段组成的流水线处理任务中,一个阶段的输出可能是下一个阶段的输入,进程同步确保了数据在各阶段之间正确地传递。综合来说,进程互斥和进程同步是操作系统用以管理和协调多个并发进程的基本机制。它们确保了系统资源的有效利用,避免了数据冲突,并协调了进程间的工作流程。4.1.3进程通信在多道程序环境下,为了加速应用程序的运行,应在系统中建立多个进程,并且再为一个进程建立若干个线程,由这些进程(线程)相互合作去完成一个共同的任务。而在这些进程(线程)之间,又往往需要交换信息。例如,有三个相互合作的进程,它们是输入进程、计算进程和打印进程。输入进程负责将所输入的数据传送给计算进程;计算进程利用输入数据进行计算,并把计算结果传送给打印进程;最后,由打印进程把计算结果打印出来。进程通信的任务是实现相互合作进程之间的信息交换。4.1.4调度在后备队列上等待的每个作业,通常都要经过调度才能执行。在传统操作系统中,包括作业调度和进程调度两步。作业调度的基本任务,是从后备队列中按照一定算法,选择出若干作业,为它们分配其必需的资源(首先是分配内存,分配的资源不包括CPU)。在将它们调入内存后,便分别为它们建立进程,使它们都成为处理机的就绪进程,并按照一定的算法将它们插入就绪队列。而进程调度的任务,则是从进程就绪队列中选出一新进程,把处理机分配给它,并为它设置运行现场,使进程投入执行。4.2存储器管理功能4.2.1内存分配OS实现内存分配有静态和动态两种方式。在静态分配方式中,每个作业的内存空间是在作业装入时确定;在作业装入后的整个运行期间,不允许该作业再申请新的内存空间,也不允许作业在内存中"移动"。在动态分配方式中,每个作业所要求的基本内存空间是在装入时确定,但允许作业在运行过程中,继续申请新的附加内存空间,以适应数据的动态增涨,也允许作业在内存中"移动"。为了实现内存分配,在内存分配机制中应具有这样的结构和功能:内存分配数据结构,该结构用于记录内存空间的使用情况,作为内存分配的依据;内存分配功能,系统按照一定的内存分配算法,为用户程序分配内存空间;内存回收功能,系统对于用户不再需要的内存,通过用户的释放请求,去完成内存回收功能。4.2.2内存保护内存保护的主要任务,是确保每道用户程序都只在自己的内存空间内运行,彼此互不干扰。为确保每道程序都只在自己的内存区中运行,必须设置内存保护机制。一种比较简单的内存保护机制,是设置两个界限寄存器,分别用于存放正在执行程序的上界和下界。系统须对每条指令所要访问的地址进行检查,如果发生越界,便发出越界中断请求,以停止该程序的执行。4.2.3地址映射一个应用程序(源程序)经编译后,通常会形成若干个目标程序;这些目标程序再经过链接形成一个可装入程序。这些程序的地址都是从"0"开始,程序中其它地址都是相对于起始地址计算。所形成的地址范围称为"地址空间",其中的地址称为"逻辑地址"或"相对地址"。此外,由内存中一系列单元所限定的地址范围称为"内存空间",其中的地址称为"物理地址"。在多道程序环境下,每道程序不可能都从"0"地址开始装入(内存),这就致使地址空间内的逻辑地址和内存空间中的物理地址不一致。为使程序能正确运行,存储器管理必须提供地址映射功能,以将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址。该功能应在硬件支持下完成。4.2.4内存扩充存储器管理中的内存扩充任务,并非是去扩大物理内存容量,而是借助于虚拟存储技术,从逻辑上去扩充内存容量,让更多用户程序能并发运行,使用户感觉到的内存容量比实际内存容量大得多。这样,既满足了用户改善系统性能的需要,又基本上不增加硬件投资。为了能在逻辑上扩充内存,系统必须具有下述功能实现内存扩充机制:(1)请求调入功能。(2)置换功能。4.3设备管理功能设备管理用于管理计算机系统中的所有外围设备,设备管理的主要任务是:(1)处理用户进程提出的I/O请求。通常涉及到从用户空间接收I/O命令,转换为设备可理解的形式,并确保数据正确地传输到或从设备传输回来。(2)为用户进程分配其所需I/O设备。通常涉及到处理设备的共享和竞争,确保多个进程可以有效使用设备资源。(3)提高CPU和I/O设备利用率。通过有效的设备管理和调度,操作系统可以最大限度地提高CPU和I/O设备的利用率。(4)通过各种技术提高I/O操作的速度。如缓冲机制。(5)方便用户使用I/O设备。设备管理器为用户提供了一个简单、抽象的接口与复杂的硬件设备交互,使用户不必关心设备的具体细节。为实现上述任务,设备管理应具有缓冲管理、设备分配、设备处理以及虚拟设备等功能。4.3.1缓冲管理CPU运行的高速性和I/O的低速性间矛盾自计算机诞生时便已存在。随着CPU速度迅速大幅度提高,此矛盾更为突出,严重降低了CPU的利用率。如果在I/O设备和CPU之间引入缓冲,则可有效缓和CPU和I/O设备速度不匹配的矛盾,提高CPU的利用率,进而提高系统吞吐量。因此,在现代计算机系统中,都毫无例外地在内存中设置了缓冲区。最常见的缓冲区机制有单缓冲机制、能实现双向同时传送数据的双缓冲机制,以及能供多个设备同时使用的公用缓冲池机制。4.3.2设备分配设备分配的基本任务是根据用户进程的I/O请求、系统的现有资源情况以及按照某种设备分配策略,为其分配所需设备。如果在I/O设备和CPU之间存在设备控制器和I/O通道时,还须为分配出去的设备分配相应的控制器和通道。为实现设备分配,系统中应设置设备控制表、控制器控制表等数据结构,用于记录设备及控制器的标识符和状态。据这些表格可以了解指定设备当前是否可用、是否忙碌,以供进行设备分配时参考。在进行设备分配时,应针对不同的设备类型而采用不同的设备分配方式。对于独占设备(临界资源)的分配,还应考虑到该设备被分配出去后,系统是否安全。设备使用完后,还应立即由系统回收。4.3.3设备处理设备处理程序又称为设备驱动程序,其基本任务是用于实现CPU和设备控制器之间的通信,即由CPU向设备控制器发出I/O命令,要求它完成指定的I/O操作;反之由CPU接收从控制器发来的中断请求,并给予迅速的响应和相应的处理。处理过程是:设备处理程序首先检查I/O请求的合法性,了解设备状态是否是空闲的,了解有关的传递参数及设置设备的工作方式。然后,便向设备控制器发出I/O命令,启动I/O设备去完成指定的I/O操作。设备驱动程序还应能及时响应由控制器发来的中断请求,并根据该中断请求的类型,调用相应的中断处理程序进行处理。对于设置了通道的计算机系统,设备处理程序还应能根据用户的I/O请求,自动地构成通道程序。4.4文件管理功能(程序和数据)4.4.1文件存储空间的管理由文件系统对诸多文件及文件的存储空间实施统一管理,其主要任务是为每个文件分配必要的外存空间,提高外存的利用率,并能有助于提高文件系统的运行速度。为此,系统应设置相应的数据结构,用于记录文件存储空间的使用情况,以供分配存储空间时参考;系统还应具有对存储空间进行分配和回收的功能。为了提高存储空间的利用率,对存储空间的分配,通常是采用离散分配方式,以减少外存零头,并以盘块为基本分配单位。盘块的大小通常为512B~8KB。4.4.2目录管理为了使用户能方便地在外存上找到自己所需文件,通常由系统为每个文件建立一个目录项。目录项包括文件名、文件属性、文件在磁盘上的物理位置等。由若干个目录项又可构成一个目录文件。目录管理的主要任务,是为每个文件建立其目录项,并对众多的目录项加以有效的组织,以实现方便的按名存取。即用户只须提供文件名,即可对该文件进行存取。其次,目录管理还应能实现文件共享,这样,只须在外存上保留一份该共享文件的副本。此外,还应能提供快速的目录查询手段,以提高对文件的检索速度。4.4.3文件的读/写管理和保护(1)文件的读/写管理。该功能是根据用户的请求,从外存中读取数据;或将数据写入外存。在进行文件读(写)时,系统先根据用户给出的文件名,去检索文件目录,获得文件在外存中的位置。然后,利用文件读(写)指针,对文件进行读(写)。一旦读(写)完成,便修改读(写)指针,为下一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论