计算机数据库(经济会计类)四讲计算机操作系统随堂讲义

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

大学计算机基础—操作系统(OperatingSystem)硬件到底是怎么动起来的?预引导引导加载内核初始化内核登录计算机硬件是如何动起来的?第四章计算机操作系统为了使计算机系统所有的资源(包括中央处理器、存储器、各种外部设备和各种软件)协调一致地工作,就必须有一个软件来进行统一管理和统一调度,这种软件称为操作系统。计算机发展到今天,从微机到小型、中型、大型机仍至巨型机,无一例外地都配置了一种或多种操作系统,操作系统已成为现代计算机系统不可分割的重要组成部分。本章主要讲述操作系统概念及构成;重点讲述操作系统中的几个基本功能及相关概念。4.1操作系统概念及构成4.1.1操作系统的概念操作系统:是管理计算机软硬件资源的程序,同时它又是用户与计算机硬件的接口。系统程序和应用程序操作系统硬件层用户没有操作系统,应用软件如同空中楼阁,无法运行。4.1.2操作系统的构成4.1操作系统概念及构成操作系统①进程管理②内存管理③文件管理④输入/输出系统管理⑤二级存储管理用户接口⑥联网、保护系统和命令解释程序系统就是对CPU的管理。就是如何合理分配和使用内存。就是对文件及文件夹进行管理。就是对外部各种输入输出设备进行管理。主要是指对硬盘进行管理。就是提供对网络管理、对进程工作过程的保护及提供用户与操作系统的接口程序。动画4.2.1操作系统的类别4.2操作系统类别与计算环境批处理系统1多道程序系统2分时系统3实时系统4桌面系统5多处理机系统6网络系统7分布式系统8嵌入式系统9经过多年的发展,先后出现了各种类型的操作系统。从早期的批处理操作系统、多道程序发展到分时操作系统;另外,还有为满足计算机处理实时事件的需要研发的实时操作系统;为适应个人计算机系统的需要出现的桌面操作系统;为适应并行系统的需要开发多处理机操作系统;为满足网络和分布计算的需要,就有了网络操作系统和分布式操作系统;此外,还有为支持嵌入式计算机的嵌入式操作系统。动画4.2.2计算环境操作系统总是在某种计算环境中设置和使用,就目前来看计算环境可分为以下几类:4.2操作系统类别与计算环境1.传统计算环境指普通意义下的独立或联网工作下所形成的计算环境。2.基于Web的计算环境互联网的普及使得计算被延伸到Web环境。3.嵌入式计算环境嵌入式计算机就是安装在某些设备上的计算部件,其计算相对比较简单。4.3.1进程的概念4.3进程管理什么是进程?它与程序有什么区别?程序:用户为完成某一个特定问题而编写的操作步骤。进程:可简单地看作是正在执行的程序。但是进程需要一定的资源来完成它的任务(例如CPU时间、内存、文件和I/O设备)。4.3进程管理在计算机中,由于多个程序共享系统资源,就必然引发对CPU的争夺。如何有效地利用CPU资源,如何在多个请求CPU的进程中选择取舍,这就是进程管理要解决的问题。动画进程与程序的区别在于进程是动态的、有生命力的,而程序是静态的。一个程序加载到内存,系统就创建一个进程,程序执行结束后,该进程也就消亡了。4.3.2进程的状态转移新的就绪运行终止等待允许中断退出允许进程状态及转换图4.3进程管理如CPU时间片被用完,迫使进程让出CPU进程等待分配CPU进程已分配到CPU,正在被执行。进程正在被创建进程已完成进程等待一些事件的出现如进程可能要使用某个I/O设备而进入等待状态,等待使用相应的设备,当I/O完成后进程进入就绪队列。4.3.3进程控制块PCB(略)4.3进程管理为了控制进程,操作系统就必须知道进程存储在哪里,以及进程的一些属性。进程控制块是进程实体的一部分,是操作系统中记录进程的专用数据结构。一个新的进程创建时,操作系统就会为该进程建立一个进程控制块。操作系统根据进程控制块对并发进程进行控制。4.3.4进程调度及队列图4.3进程管理在某一时刻,计算机的CPU(单核)只能运行一个进程,如果存在多个进程,其它进程就需要等CPU空闲时才能被调度执行。当一个进程处于等待或CPU时间片用完时,操作系统就会从该进程中拿走CPU控制权,然后再交给其它进程使用,这就是进程的调度。进程B进程A进程CCPU时间进程C进程B进程A4.3.5CPU调度及其准则4.3进程管理在设计CPU调度程序时主要应该考虑的准则包括:(1)CPU使用率。让CPU尽可能地忙。(2)吞吐量。让CPU在一定时间内完成的进程数尽可能多。(3)周转时间。让进程从提交到运行完成的时间尽可能短。(4)等待时间。让进程在就绪队列中等待所花时间之和尽可能短。(5)响应时间。让进程从提交请求到产生第一响应之间的时间尽可能短。4.3.7进程的同步与互斥4.3进程管理进程的同步就是指相互协作的进程不断调整它们之间的相对速度,以实现共同有序地推进。换句话说,在操作系统中,允许多个进程并发运行。然而,有些进程之间本身存在某种联系,它们在系统中需要一种协作,以保证进程能正确有序地执行并维护数据的一致性。动画4.3进程管理把数据从键盘送入缓冲区给B发信号(缓冲区已满)等待B发回信号(再送数据到缓冲区)A进程B进程等待A信号(等待取数据并计算)取缓冲区中的数据进行计算给A发信号(缓冲区数据已取走)例:A、B两进程同步工作如下图(A进程负责从键盘读数据到缓冲区,B进程从缓冲区取数据并计算。动画4.3进程管理在操作系统中,可能存在着多个进程。而系统中一些资源一次只允许一个进程使用,这类资源被称为临界资源。在进程中访问临界资源的那段程序称为临界区。当一个进程进入临界区执行时,其它进程就不允许进入临界区执行,否则就会导致错误结果。例如:多个进程在竞争使用打印机时表现为互斥。一个文件可供多个进程共享,其中有一个进程在写操作时,其它进程则不允许同时写或读,表现为互斥。由此得出:多个进程并发执行时,只允许一个进程进入临界区运行,这就是进程的互斥。动画在多道程序设计中,多个进程可能竞争一定数量的资源。一个进程在申请资源时,如果所申请资源不足,该进程就必须处于等待状态。如果所申请的资源被其它进程占有,那么进程的等待状态就可能无法改变,从而形成进程之间相互一直等待的局面,这就是死锁。4.3.8进程的死锁及处理方法4.3进程管理竞争资源引起死锁死锁举例:四方街区的车辆阻塞。每个方向都希望其它方让出通道,但谁也不能够让出。引起死锁的四个必要条件:(1)互斥:某一资源任一时刻只能有一个进程独占,若另一进程申请该资源则需延迟到该资源释放为止。(2)占有并等待:即该进程占有部分资源后还在等待其它资源,而该资源被其它进程占有。(3)非抢占:某进程已占用资源且不主动放弃它所占有的资源时,其它进程不能强占该资源,只有等其完成任务并释放资源。(4)循环等待:在出现死锁的系统中,一定存在这样一个进程链,其中每个进程至少占有其它进程所必需的资源,从而形成一个等待链。4.3进程管理4.3进程管理进程A进程B打印机CD-ROM死锁举例:–进程A:获得CD-ROM使用权,申请打印机–进程B:获得打印机使用权,申请CD-ROM–死锁:此时进程A、B均被阻塞,无法运行动画处理死锁问题的三种方式:(1)使用协议预防和避免死锁,确保系统从不进入死锁状态。(2)允许系统进入死锁状态,然后检测出死锁,并加以恢复。(3)可忽略进程死锁问题,并假装系统中死锁从来不会发生。即没有必要把精力花在小概率事件上。4.3进程管理处理死锁优先考虑的顺序:先预防和避免再检测和恢复4.4内存管理内存是现代操作系统的核心,是可被CPU和I/O设备所共同访问的数据仓库。计算机的所有程序运行时都要调入内存。内存管理的主要工作是:为每个用户进程合理地分配内存,以保证各个进程之间在存储区不发生冲突;当内存不足时,如何把内存和外存结合起来,给用户提供一个比实际内存大得多的虚拟内存,使得程序能顺利执行。4.4.1用户程序执行与地址映射(了解)4.4内存管理用户编写程序在执行前,需要多个处理步骤,然后在内存中等待执行。当然有时并非每个步骤都是必需的。源程序编译器或汇编器目标模块链接编辑器加载模块加载器内存中二进制内存映像其它目标模块动态装入的系统库系统库动态链接编译阶段加载阶段执行阶段图4.4用户程序多步骤处理说明:编译器和汇编器用于将高级语言源程序翻译成二进制代码的机器语言程序。链接器将编译后不同的程序、函数库文件等连接生成EXE文件。当运行EXE文件时,操作系统的加载器读取EXE文件并将它们加载到内存中。预先编译好的在调入内存前加载的库文件就是静态链接库文件。运行时动态装入的库文件叫动态链接库文件。OBJ文件EXE文件4.4内存管理1.编译阶段:如果在编译时就知道进程将在内存中的什么位置驻留,那么编译器就可以直接以生成绝对地址代码。2.加载阶段:不知道进程将驻留在什么位置,那么编译器就必须生成程序的逻辑地址,在加载阶段再转变成内存的绝对地址。3.执行阶段:如果进程在执行时可以从一个内存段移动到另一个内存段,那么进程的绝对地址映射工作只能延迟到执行时进行。通常,将指令和数据的地址映射成内存地址可以发生在以下三个执行阶段。(了解)4.4.2物理地址空间与逻辑地址空间4.4内存管理几个相关概念物理地址:是计算机内存单元的真实地址。物理地址空间:由物理地址所构成的地址范围。逻辑地址:经编译后的用户程序地址,从0开始编址。逻辑地址空间:由逻辑地址所构成的地址范围。地址映射:用户程序在运行时要装入内存,这就需要将逻辑地址变换成物理地址,该过程称为地址映射,也称重定位。用户编写的源程序是不考虑地址的,源程序经编译后产生逻辑地址。将逻辑地址转换为内存中的物理地址是由计算机中被称为内存管理单元的硬件设备来实现的,将逻辑地址与内存管理单元中存放的内存基址相加就得到物理地址。物理地址Base+X逻辑地址XCPU重定位寄存器Base+内存内存管理单元4.4内存管理LOAD1,50012345LOAD1,500123450100500700程序A的逻辑地址空间程序A的物理在址空间..................5000510055005700动画4.4.3进程使用内存的交换技术为更加有效地使用内存,进程在不运行时,可以暂时从内存移至外存,需要再运行时再重新调回到内存中。也就是说内存管理程序可将刚刚运行过的进程从内存中换出以释放占用的内存空间,然后将另一个要运行的进程占据前者释放的内存空间。4.4内存管理进程A操作系统未用内存区进程A操作系统未用内存区进程B进程A操作系统未用内存区进程B进程C未用内存区操作系统未用内存区进程B进程C未用内存区操作系统未用内存区进程B进程C进程D注:这种交换技术多用于分时系统4.4.4内存分配方案-连续4.4内存管理进程A操作系统未用内存区进程C未用内存区在内存分配中,常常把内存中还没有被分配的可用空间称为孔(hole)。开始时所有内存是一个大的孔,随着内存分配的进行就会形成许多不连续的大小不同的孔。在连续内存分配方案中,当新进程需要内存时,就为其寻找合适的孔,实现内存分配。该方案需要为每个进程分配连续的内存物理空间。4.4.5内存分配方案-分页式4.4内存管理分页管理基本思想:内存物理地址空间划分为若干个大小相等的块(页框)进程的逻辑地址空间也划分为同样大小的块(页面)内存分配时每个页面对应地分配一个页框,而一个进程所分得页框在位置上不必是连续的。页表:操作系统为每个用户程序建立一张页表,该表记录用户程序的每个逻辑页面存放在哪一个内存物理页框。7页6页5页4页3页2页1页0页用户程序1191076425块号76543210页号页表……11109876543210内存页面页框pdfCPUpdfdff0000…0000f1111…1111逻辑地址物理地址页表物理内存分页式内存管理从逻辑地址到物理地址的映射:(了解)页号p页内地址d(偏移量)注:逻辑地址的表示:4.4内存管理4.5.1基本思想4.5虚拟内存方案虚拟内存是一个容量很大的存储器的逻辑模型,它不是任何实际的物理存储器。虚拟内存包括物理内存和一部分外存(这里所指的外存一般是指硬盘)。4.5虚拟内存方案虚拟内存:对于一个进程来讲,如果仅将当前要运行的

1 / 69
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功