计算机操作系统

        本篇内容集合了王道考研,天勤考研与汤小丹版计算机操作系统内容,进行了归纳总结因此很多知识点不会特别细具体还要看书,由于本人能力有限本篇文章仅作为参考,如有错误虚心接受改正,也希望与各位同僚共同进步,本文内标红处为比较重点的地方,本文并不是针对考研进行归纳,仅总结个人认为重要的部分……

目录

第一章  操作系统概述

1.1、操作系统的概念:

1.2、操作系统的特征:

1.3、操作系统的发展与分类:

 1.4、操作系统的运行环境:

第二章  进程管理

2.1、进程与线程

2.2、处理机调度

2.3、进程同步

2.4、死锁

第三章  内容管理

3.1、存储器层次结构

3.2、内存管理概念

3.3、虚拟内存管理

第四章  文件管理

​4.1、文件系统基础

4.2、文件系统实现

4.3、磁盘组织与管理

第五章  I / O管理

5.1、输入/输出(I/O)管理

5.2、I/O核心子系统


第一章  操作系统概述

导图

 图来自于 王道考研

1.1、操作系统的概念:

操作系统(Operating System, OS)是指控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合。操作系统是计算机系统中最基本的系统软件。

1.2、操作系统的特征:

并发:并发是指两个或多个事件在同一时间间隔内发生。应注意同一时间是并发,同一时刻是并行

共享:资源共享即共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。共享可分为以下两种资源共卒方式。即互斥共享方式同时共享方式,其区别在于同一时间内是单进程还是多进程访问

虚拟:虚拟是指把个物理上的实体变为若干逻辑上的对应物。虚拟处理器技术是通过多道程序设计技术,采用让多道程序并发执行的方法,来分时使用一个处理器的。此时,虽然只有一个处理器,但它能同时为多个用户服务,使每个终端用户都感觉有一个中央处理器(CPU)在专门为它服务。利用多道程序设计技术把一个物理上的CPU虚拟为多个逻辑上的CPU,称为虚拟处理器。

异步:多道程序环境允许多个程序并发执行,但由于资源有限,进程的执行并不是一贯到底的,而是走走停停的,它以不可预知的速度向前推进,这就是进程的异步性。

1.3、操作系统的发展与分类:

 手工操作阶段:所有操作需要人工进行干预,缺点为资源利用率低,CPU利用率低。

批处理阶段:

单道批处理系统:为实现对作业的连续处理,需要先把一批作业以脱机的方式输入到磁带上,并在系统中配置上监督程序,在它的控制下,使这批作业能一个接一个地连续处理。在内存中始终只有一道作业,因此成为单道批处理系统。

多道批处理系统:在该系统中,用户所提交的作业先存放在外存上,并排成一个队列,称为“后备队列”。然后由作业调度程序按一定的算法,从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。优点是资源利用率高,系统吞吐量大。缺点是无交互能力,用户很难在运行过程中进行修改和交互。

分时操作阶段:所谓分时技术,是指把处理器的运行时间分成很短的时间片,按时间片轮流把处理器分配给各联机作业使用。若某个作业在分配给它的时间片内不能完成其计算,则该作业暂时停止运行,把处理器让给其他作业使用,等待下轮再继续运行。由于计算机速度很快,作业运行轮转得也很快,因此给每个用户的感觉就像是自己独占一台计算机。

实时操作阶段: 在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并在严格的时限内处理完接收的事件。实时操作系统的主要特点是及时性和可靠性。 

网络操作系统和分布式计算机系统:网络操作系统把计算机网络中的各台计算机有机地结合起来,提供一种统一、经济而有效的使用各台计算机的方法,实现各台计算机之间数据的互相传送。网络操作系统最主要的特点是网络中各种资源的共享及各台计算机之间的通信。

个人计算机操作系统:个人计算机操作系统是目前使用最广泛的操作系统,它广泛应用于文字处理、电子表格、游戏中,常见的有Windows、Linux 和 Macintosh等。操作系统的发展历程

 1.4、操作系统的运行环境:

时钟管理:在计算机的各种部件中,时钟是最关键的设备。时钟的第一功能是计时,操作系统需要通过时钟管理,向用户提供标准的系统时间。

中断和异常:中断也称为外中断,异常称为内中断,顾名思义外中断即是CPU执行指令以外的事件发生,例如 I / O事件等,内中断是CPU执行指令以内的事件,例如地址越界,算数溢出等。

第二章  进程管理

导图

2.1、进程与线程

进程的概念和特征
进程概念:在多道程序环境下,允许多个程序并发执行,此时它们将失去封闭性,并具有间断性及不可再现性的特征。为此引入了进程(Process)的概念,以便更好地描述和控制程序的并发执行,实现作系统的并发性共享性(最基本的两个特性)。

进程是资源分配和调度的基本单位,PCB是进程存在的唯一标志!!!

进程控制块(PCB):系统利用PCB来描述进程的基本情况和运行状态,进而控制和管理进程。相应地,由程序段、相关数据段和PCB三部分构成了进程映像(进程实体)。所谓创建进程,实质上是创建进程映像中的PCB;而撤销进程,实质上是撤销进程的 PCB。值得注意的是,进程映像是静态的,进程则是动态的。

进程的特征: 动态性、并发性、独立性、异步性

进程的状态和转换
进程的状态分为,创建,就绪,运行,阻塞,结束五种,基本状态为就绪,运行,阻塞。后续还会有挂起阻塞等,先理解基础模型再进行拓展。

图片来自于 天勤考研

此模型内,最最终的是当进程调度时是 就绪态 - > 运行态, 当时间片用完或高优先级进程抢占CPU 则运行态还会回到 就绪态。 进程在执行的过程中是会发生阻塞的,因此 运行态 ->  阻塞态也是合理的。阻塞结束也就是事件出现进程会由 阻塞态 -> 就绪态

 当引入挂起状态后,模型又改变为如图状态,阻塞状态可以与阻塞挂起进行双向变化,同理就绪与就绪挂起也是这样。执行状态,创建状态都,挂起阻塞,可以直接转化为挂起就绪。

进程的创建过程: ① 申请空白PCB ② 为新进程分配资源 ③ 初始化进程控制块 ④ 将新进程插入就绪队列 

进程控制概念:进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。
原语概念:原语的特点是执行期间不允许中断,它是一个不可分割的基本单位。可以使用“开中断”和“关中断”两个特权指令指令来实现原子性。
进程创建

创建者为父进程,被创建者为子进程。
创建态 -> 就绪态
引起进程创建的事件(用户登录,作业调度,提供服务,应用请求)

进程终止

引起进程终止的事件 (正常结束进程自己请求终止,异常请求,外界干预)

进程阻塞和唤醒

阻塞原语(运行态 -> 阻塞态)   唤醒原语( 阻塞态->就绪态 )

进程的组织和通信
进程通信是指进程之间的信息交换。PV操作是低级通信方式,高级通信方式是指以较高的效率传输大量数据的通信方式。高级通信方法主要有以下三类。
共享存储:在通信的进程之间存在一块可直接访问的共享空间,通过对这片共享空间进行写/读操作实现进程之间的信息交换。
消息传递:在消息传递系统中,进程间的数据交换是以格式化的消息(Message)为单位的。若通信的进程之间不存在可直接访问的共享空间,则必须利用操作系统提供的消息传递方法实现进程通信。进程通过系统提供的发送消息和接收消息两个原语进行数据交换。
管道通信:管道通信是消息传递的一种特殊方式=。所谓“管道”,是指用于连接一个读进程和一个写进程以实现它们之间的通信的-一个共享文件,又名pipe文件。

线程概念和多线程模型

线程:轻量级进程,是一个基本的CPU执行单元,也是程序执行流的最小单元。是进程中的一个实体是被系统独立调度分派的基本单位。由线程ID,程序计数器,寄存器集合和堆栈组成。
线程可并发执行,共享进程资源,共享所在进程的地址空间和所属以打开的文件等。

进程与线程的比较:

① 调度。在传统的操作系统中,拥有资源和独立调度的基本单位都是进程。在引入线程的操作系统中,线程是独立调度的基本单位,进程是拥有资源的基本单位。在同一进程中,线程的切换不会引起进程切换。在不同进程中进行线程切换,如从一个进程内的线程切换到另一个进程中的线程时,会引起进程切换。

② 拥有资源。不论是传统操作系统还是设有线程的操作系统,进程都是拥有资源的基本单
位,而线程不拥有系统资源(也有-一点儿必不可少的资源),但线程可以访问其隶属进程的系统资源。要知道,若线程也是拥有资源的单位,则切换线程就需要较大的时空开销,线程这个概念的提出就没有意义。
③ 并发性。在引入线程的操作系统中,不仅进程之间可以并发执行,而且多个线程之间也.可以并发执行,从而使操作系统具有更好的并发性,提高了系统的吞吐f。
④ 系统开销。由于创建或撤销进程时,系统都要为之分配或回收资源,如内存空间、I/O设备等,因此操作系统所付出的开销远大于创建或撤销线程时的开销。类似地,在进行进程切换时,涉及当前执行进程CPU环境的保存及新调度到进程CPU环境的设置,而线程切换时只需保存和设置少盘寄存器内容,开销很小。此外,由于同一进程内的多个线程共享进程的地址空间,因此这些线程之间的同步与通信非常容易实现,甚至无须操作系统的干预。
⑤ 地址空间和其他资源(如打开的文件)。进程的地址空间之间互相独立,同一进程的各线
程间共享进程的资源,某进程内的线程对于其他进程不可见。
⑥ 通信方面。进程间通信(IPC)需要进程同步和互斥手段的辅助,以保证数据的一致性,
而线程间可以直接读/写进程数据段(如全局变量)来进行通信。

线程的实现方式:

多线程模型:
① 多对一模型。将多个用户级线程映射到一个内核级线程,线程管理在用户空间完成。此
模式中,用户级线程对操作系统不可见(即透明)。
优点:线程管理是在用户空间进行的,因而效率比较高。
缺点:一个线程在使用内核服务时被阻塞,整个进程都会被阻塞;多个线程不能并行地运行在多处理机上。
② 一对一模型。将每个用户级线程映射到 1 个内核级线程。
优点:当一个线程被阻塞后,允许另一个线程继续执行,所以并发能力较强。
缺点:每创建-一个用户级线程都需要创建一个内核级线程与其对应,这样创建线程的开销比较大,会影响到应用程序的性能。
③ 多对多模型。将n个用户级线程映射到m个内核级线程上,要求m<n
特点:多对多模型是多对一模型和一对一模型的折中,既克服了多对一模型并发度不高的缺点,又克服了一对一模型的一个用户进程占用太多内核级线程而开销太大的缺点。此外,还拥有多对一-模型和一对一模型各自的优点,可谓集两者之所长。

2.2、处理机调度

调度:在多道程序系统中,进程的数量往往多于处理机的个数,因此进程争用处理机的情况在所难免。处理机调度是对处理机进行分配,即从就绪队列中按照一定的算法(公平、高效〉选择一个进程并将处理机分配给它运行,以实现进程并发地执行。

调度的层次:
① 作业调度。
又称高级调度,其主要任务是按一定的原则从外存上处于后备状态的作业中挑选一个(或多个)作业,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序lee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值