计算机操作系统 操作系统补充 上

第一章 ​​操作系统的概念-CSDN博客

第二章上、进程-CSDN博客

第二章下、调度算法-CSDN博客

第三章、内存-CSDN博客

第三章下:分页、分段存储,虚拟内存-CSDN博客

第四章、文件管理软件实现-CSDN博客

第五章、文件管理硬件实现-CSDN博客

第六章、IO管理-CSDN博客

操作系统补充 上-CSDN博客

操作系统补充 下-CSDN博客


ch0

单道系统特点:自动性、顺序性、单道性

多道:多道性、无序性、调度性、复杂性

分时系统:多路性、独立性、及时性、交互性

实时系统:分时+可靠性

从磁盘读文件并执行的过程:

      用户给出文件名,提出访问执行请求

      文件系统通过按名访问,获取文件逻辑地址

      磁盘驱动程序将逻辑地址转为物理地址

      操作系统分给内存空间,将文件装入内存

      CPU创建执行环境,CPU设置上下文环境,并跳转到程序的第一条指令

      第一条指令执行,执行指令对应的库函数

ch1

什么是操作系统:

操作系统是用户与计算机硬件之间的接口(---命令行接口、图形用户接口、系统调用)

    屏蔽控制硬件的细节,使应用开发更加简单高效

操作系统是计算机资源的管理者

操作系统设计的目标:方便用户,提高系统性能(时间性能,空间性能,资源利用率)

操作系统四大特征:

并发:多个事件在同一时间段内发生

共享:同时共享,互斥共享

虚拟

异步:进程的具体顺序、进度不可预知

并发性和共享性:失去并发性,共享性无意义;失去共享性,并发性无法实现

操作系统的功能:进程管理,文件管理,内存管理,设备管理,用户接口

ch2

进程的特征:

并发性:进程并发执行时的特点:间断性,失去封闭性,不可再现性

动态性:进程是进程实体的执行过程,是不断变化的

独立性:进程是运行和资源调度的基本单位

异步性

进程控制块PCB:

进程控制块是进程实体的一部分,是操作系统中最重要的记录型数据结构,PCB中记录了操作系统所需要的,用于描述进程情况及控制进程运行所需的全部信息。

进程的三种基本状态

 就绪状态:进程一但获得CPU就可以投入运行的状态。

 执行状态:进程获得CPU正在运行的状态。

 阻塞状态:进程由于等待资源或某个事件的发生而暂停执行的状态。

进程的组织

当系统中有很多进程时,可以用队列把进程控制块组织起来,形成进程队列。把具有相同状态的进程放在同一个队列中,具有不同状态的进程就可形成不同的进程队列。处于就绪状态的进程构成的进程队列称为就绪队列,处于阻塞状态的进程构成的进程队列称为阻塞队列。

操作系统的内核:与硬件关系密切,使用频率高,常驻内存的功能

功能:

      支撑功能:中断处理,时钟管理,原子操作

      资源管理功能:进程管理,存储器管理,设备管理

中断:中断是改变CPU执行指令顺序的一种事件

引入中断机制后,CPU可以与其它设备并行工作,能提高CPU利用率,改善系统性能

中断类型:

      内部中断:出错,调试

      外部中断:IO引起中断,硬件故障中断

引起中断原因:程序错误,人为设置,IO设备,硬件故障。 (和上面的类型对应)

响应外部中断的条件:开中断

响应外部中断的时机:CPU每执行完一条指令

时钟

OS硬件时钟,时钟中断信号产生机制

中断处理程序/时钟驱动程序 功能:

系统调用:

系统调用是一组预先定义好的模块,它提供一条管道让应用程序或一般用户能由此得到核心程序的服务。系统调用是用户程序(用户态)与核心程序(核心态)之间的接口。

系统调用机制优点:屏蔽底层硬件细节,简易编程;提高系统安全性

ch3

为什么需要进程同步机制?

因为现代操作系统既要支持多进程(多线程)的并发执行,又要保证并发执行的程序结果是可再现的

进程同步保证各进程以互斥的方式访问临界资源---必须互斥访问的共享资源

同步机制应遵循的准则:空闲让进,忙则等待,有限等待,让权等待

标记

ch4

作业调度(高级调度):从后备作业队列的多个作业中选择一个作业进入内存的算法

进程调度(低级调度):从多个就绪进程中选择进程并为其分配CPU的算法

调度算法:

先来先服务FCFS

平均周转时间的计算:

也可以画折线图辅助

短作业优先

优先权调度算法:静态优先权,动态优先权

抢占式调度/非抢占式调度  

时间片轮转调度算法:

时间片大小的确定:

如果时间片很大,进程的响应时间无法保证;如果时间片很小,则进程需要经过多次上下文切换和进程调度,增加了CPU的开销,影响系统的吞吐量和CPU利用率。

多级队列调度算法:

      将就绪队列分成多个独立队列,根据进程的某些属性(如进程优先权),进程会被永久地分配到一个队列。每个队列都有自己的调度算法。不同的队列优先权不同,调度算法也可能不同。

多级反馈队列调度算法:

设多个优先权不同的就绪队列,允许进程在多个不同的就绪队列间移动

实时系统中的调度:

实现实时调度的前提条件:

      提供必要的调度信息,系统处理能力强,抢占式调度,尽可能短的系统延迟

实时调度算法:

最早截止时间优先,最低松弛度优先

松弛度:如果一个任务的完成截止时间为T,当前时刻为Tc ,处理完该任务还需要的时间为Ts ,则松弛度计算式表示为:L= T- Tc - Ts

ch5

产生死锁的原因:进程竞争共享资源、进程推进顺序不当

产生死锁的必要条件

互斥条件,请求和保持条件,不剥夺条件,环路条件

预防死锁:  破除互斥条件外的任何一个条件

1摒弃请求和保持条件

进程一次性申请整个运行过程中的全部资源,得到全部资源,方可投入运行,运行期间不再提出资源要求。  缺点:资源严重浪费,进程延迟运行。

2摒弃不剥夺条件

一个已保持了某些资源的进程,当它再提出新的资源要求而不能立即得到满足时,必须释放它已经保持的所有资源。  缺点:实现复杂而且代价高 。

3摒弃环路等待

规定进程必须按一定顺序申请资源。    缺点:限制了新设备的增加,可能造成资源浪费,用户编程困难

避免死锁

安全状态:存在一个执行序列,使进程一定不会死锁

银行家算法:一个进程提出请求后先试分配,然后检测本次的分配是否使系统处于安全状态,安全则按试分配方案分配资源,否则不分配。

实例:   

allocation:已分配资源   max:所需最大资源   need:还需要多少资源   available:当前可分配资源

缺点:银行家算法缺乏实用价值,因为很少有进程能够在运行之前就知道其所需资源的最大值,而且进程数不是固定的,往往在不断变化

记住银行家算法答题格式

  • 18
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值