操作系统基础知识

操作系统的分类:

批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、个人计算机操作系统。

批处理操作系统:

优:资源共享,自动调度,提高了资源利用率和系统分吞吐量。

劣:无交互,周转时间较长。

多道批处理程序要处理的问题:同步互斥,内存大小,使用效率,内存保护

分时系统:联机多用户交互式操作系统,中断技术,时间片轮转

优:人机交互性好,共享主机 ,用户独立性

实时操作系统:联机系统,对外部请求能够在规定的时间内完成。

特点:有限等待

有限响应

用户控制

可靠性高

出错处理能力强

考虑因素:实时时钟管理,连续的人机对话,过载,高可靠性和安全性采取冗余措施

通用操作系统

同时兼有多道批处理系统,分时,实时处理功能。

个人计算机操作系统:

联机交互单用户,以windows和linux为主。

网络操作系统:

特征:

互联计算机群体,物理上分散

自治,每台计算机有自己的操作系统,独立工作,在网络协议下协同工作。

系统互联靠通信设施(软硬件)实现

系统通过通信设施进行信息交换,资源共享,互操作和协作处理。

分布式系统:

特征:

功能分布

坚韧性

高可靠性

操作系统功能:

处理器管理,

存储管理(内存分配,内存保护,内存扩充),

设备管理(通道,控制器,输入输出设备分配与管理,设备独立性管理)

信息管理(文件系统管理)

用户接口管理

操作系统用户接口:

命令接口,程序接口,图形接口

通道:

用于控制I/O设备与内存数据的传输,启动后独立于CPU,实现CPU与I/O并行

中断:

CPU在收到外部请求中断信号后停止原来的工作,保存现场,转去处理中断事件,完毕后返回断点继续工作。

中断请求->中断响应->现场保护->中断处理->中断返回

计算机硬件组成

处理器,存储器,I/O设备,外设

几种主要的寄存器:

地址寄存器

数据寄存器

程序计数器

指令计数器

程序状态字PSW

中断现场保护寄存器

过程调用堆栈

访问速度排序:

寄存器 > 高速缓存 > 内存 > 硬盘缓存 > 硬盘 > 光盘,磁盘

操作系统启动顺序:

启动电源->中断信号->系统引导->导入内存执行代码->操作系统加载->初始化硬件

系统调用:

设备管理

文件管理

进程管理

进程通信

存储管理

线程管理

陷进处理机构:在系统中为控制系统调用服务的机构称为陷进处理机构。

陷进指令:把由于系统调用引起处理机中断的指令称为陷进指令。

顺序程序的特点:

顺序性,封闭性,可再现性

执行环境特点:独立性,随机性,资源共享性

并发程序执行:

程序执行时间上重叠

进程:

是程序对数据集的执行过程,是资源分配的基本单位。

进程和程序的区别:

进程是程序的一次执行,有生命周期,动态概念

程序是可以作为软件资料长期保存时静态概念

进程是独立运行的单位,能与其他进程并发活动

进程是竞争计算机资源的基本单位,也是资源调度的基本单位

不同进程可以包含同一程序。

作业和进程的区别:

作业是用户相应计算机提交任务的任务实体

一个作业可以包含多个进程

作业的概念主要用于批处理系统中

进程描述:

1、进程控制块PCB:

(1)PCB描述信息:进程标识,用户标识,家族关系

(2)PCB控制信息:进程当前状态,优先级,程序入口,计时信息,通讯信息

(3)资源管理信息:内存,对换覆盖信息,共享程序段信息,输入输出设备,文件指针等

(4) CPU现场保护区

2、程序段

3、数据结构集

进程状态:

执行 ,就绪,等待(阻塞)

进程状态转换: 
运行到等待   等待某事件的发生如等待I/O完成
等待到就绪      事件已经发生如I/O完成
运行到就绪   时间片到例如两节课时间到下课
新建进程到就绪  新创建的进程进入就绪状态 
就绪到运行   当处理机空闭时由调度分派程序从就绪进程队列中选择一个进程占用CPU。

进程控制:

系统使用一些具有特定功能的程序段来创建、撤销进程以及完成进程各状态的转换从而达到多进程高效率并发执行和协调、实现资源共享的目的。 
原语:

把系统态下执行的某些具有特定功能的程序段称为原语。 
用于进程控制的原语有:

创建原语、撤销原语、阻塞原语、唤醒原语。 
进程创建方式:

由系统程序模块统一创建

由父进程创建。进程创建系统调用

create(name,priority,start-addr)

UNIX系统fork()
进程撤销:

1、该进程已完成所要求的功能而正常终止

2、由于某种错误导致非正常终止

3、祖先进程要求撤销某个子进程。

在一般操作系统中进程撤消的系统调用是kill  UNIX系统中是exit()
 如果撤销进程有自己的子进程,则撤销原语先撤销其子进程的PCB结构并释放子进程所释放的资源后,再撤销当前进程的PCB结构和释放其资源。

进程互斥:

产生原因:资源共享,进程协同

临界资源:一次只允许一个进程使用资源

临界区:进程访问临界资源的程序段

间接制约:协同进程不能同时访问临界资源

直接制约:互斥进程不能同时访问临界资源

进程同步 :
异步环境下的一组并发进程因直接制约而互相发送消息而进行互相合作、互相等待,使得各进程按一定的速度执行的过程称为进程间的同步。

进程通讯方式:

#管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。
# 有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。
信号量( semophore ) : 信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。
消息队列( message queue ) : 消息队列是由消息的链表,存放在内核中并由消息队列标识符标识。消息队列克服了信号传递信息少、管道只能承载无格式字节流以及缓冲区大小受限等缺点。
# 信号 ( sinal ) : 信号是一种比较复杂的通信方式,用于通知接收进程某个事件已经发生。
共享内存( shared memory ) :共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。共享内存是最快的 IPC 方式,它是针对其他进程间通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号两,配合使用,来实现进程间的同步和通信。
套接字( socket ) : 套解口也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同及其间的进程通信。

死锁:

指个并发进程彼此互相等待对方所拥有的资源,且这些并发进程在得到对方的资源之前不会释放自己所拥有的资源。从而造成大家都想得到资源而又得不到资源,个并发进程不能继续向前推进的状态。

死锁产生的四个必要条件:

互斥,不可剥夺条件,请求与保持,环路等待

解除死锁:

剥夺资源

杀死进程

处理器调度机制:

作业调度:高级调度或宏观调度

交换调度:中级调度

进程调度:低级调度

线程调度:

周转时间:作业从提交时刻到完成的时间

包括等待时间和完成时间

进程调度的功能: 
①用PCB块记录系统中所有进程的执行情况 
②按照一定的调度算法,选择一个处于就绪状态的进程,给它分配处理机(这是最重要的功能) 
③实施进行进程上下文的切换 
引起进程调度的原因: 
1、 正在执行的进程执行完毕。这时如果不选择新的就绪进程执行将浪费处理机资源。 
2、 执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。 
3、 执行中进程调用了P原语操作从而因资源不足而被阻塞或调用了V原语激活了等待资源的进程队列。 
4、 执行中进程提出了I/O请求后被阻塞。 
5、 在分时系统中时间片已经用完。 
6、 在执行完系统调用在系统程序返回用户进程可认为系统进程执行完毕从而可调度选择一新的用户程序执行。 
以上都是CPU执行不可剥夺方式下做引起的进程调度的原因,在CPU执行方式是可剥夺时,还有
7、 就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将发生进程调度。 
可剥夺方式,即就绪队列中一旦有优先级高于当前进程优先级的进程存在时,便立即发生进程调度,转让处理机。 
非剥夺方式,不可剥夺方式,即使在就绪队列存在有优先级高于当前执行进程时,当前进程仍将继续占有处理机,直到该进程因自己调度调用原语操作或、等待I/O进入阻塞状态或时间片用完时才重新发生调度让出处理机。

进程调度性能评价:

1、进程调度性能是衡量操作系统性能的重要指标

2、可采用测试或模拟系统相应时间的方式评价调度性能

调度算法:

1、FCFS 先来先服务

2、RR 时间片轮转法

3、多级反馈轮转法

4、优先级法

5、最短作业优先法

6、最高响应比优先法:响应比R=(等待时间W+执行时间T)/执行时间T

存储器分类:

内存,外存

虚拟存储器

为用户提供一种不受物理存储器结构和容量限制的存储器的技术称为虚拟存储器或称虚拟存储技术。虚拟存储器需要大容量的外存储器的支持或称物资基础。

程序地址:

用户编程序时所用的地址或称逻辑地址 、虚地址基本单位可与内存的基本单位相同也可以不相同。

程序地址空间:

逻辑地址空间、虚地址空间:用户的程序地址的集合称为逻辑地址空间它的编址总是从0开始的可以是一维线性空间也可以是多维空间。

物理地址:

把内存分成若干个大小相等的存储单元,每个单元给一个编号,这个编号称为内存地址,物理地址、绝对地址、实地址存
储单元占8位,称作字节byte。

物理地址空间:

物理地址的集合称为物理地址空间,主存地址空间,它是一个一维的线性空间。

地址映射的三种方式:

1、编程或编译时确定地址映射关系

2、静态地址映射

3、动态地址映射

内存管理策略:

1、分配结构

2、放置策略

3、交换策略

4、调入策略

5、回收策略

存储保护策略:

(1)上下界保护

(2)保护键

(3)界限寄存器与CPU用户态或核心态工作方式结合

分区存储管理:

1、固定分区

2、动态分区

动态分区策略:

首次适应法

最佳适应发

最坏适应法

分区存储管理的优缺点
优点: 
1、 实现了多个作业或进程对内存的共享,有助于多道程序设计,从而提高了系统的资源利用率 
2、 该方法要求的硬件支持少,管理算法简单,因而容易实现 缺点
1、 内存利用率仍然不高 
2、 作业或进程的大小受分区大小控制,除非配合采用覆盖技术和交换技术 
3、 无法实现各分区之间的信息共享

覆盖技术:

要求程序员提供一个清楚地覆盖结构。即程序员必须完成把一个程序划分成不同的程序段,并规定好它们的执行和覆盖顺序的工作。操作系统根据程序员提供的覆盖结构来完成程序段之间的覆盖。

交换技术:

是指先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中来,并让其执行的一种内存扩充技术。

交换技术不要求程序员给出程序段之间的覆盖结构,交换主要是在进程或作业之间进行,覆盖则主要是在同一个作业或进程内执行覆盖只能覆盖那些与覆盖程序段无关的程序段。 
交换进程由换入和换出两个过程组成。

记录空闲存储区的方法:

位图法和链表法

动态页式管理分为:

请求页式管理和预调入页式管理。

抖动现象:

置换算法选择不当,有可能产生刚被调出内存的页又马上被调回内存,调回内存不久又马上被调出内存,如此反复的局面。这使得整个系统的页面调度非常频繁,以致大部分时间花费在主存和辅存之间的来回调入调出上的现象。

常用的页面置换算法:将页面从外存置换到内存,提升访问速度

随机淘汰法

轮转法

先进先出

最近最久未使用

最近最少使用淘汰算法

Belady现象:

对于一个作业或进程,如果给他的页面数越接近于它要求的页面数,则刚发生缺页次数会越小,但是,使用FIFO算法是,就会出现分配页越多,缺页越多的奇怪现象。

页面管理可以为内存提供两种方式的保护:

1、地址越界保护

2、通过页表控制对内存信息存取操作方式提供保护。

页式管理的优缺点 

优点 :
1、由于它不要求作业或进程的程序段和数据在内存中连续存放,从而有效地解决了碎片问题 
2、动态页式管理提供了内存和外存统一管理的虚存实现方式,使用户可以利用的存储空间大大增加。这既提高了主存的利用率,又有利于组织多道程序执行。 
缺点 :
1、要求有相应的硬件支持。例如地址变换机构,缺页中断的产生和选择淘汰页面等都要求有相应的硬件支持。这增加了机器成本。 
2、增加了系统开销,例如缺页中断处理。 
3、请求调页的算法如选择不当,有可能产生抖动现象。 
4、虽然消除了碎片,但每个作业和进程的最后一页总有一部分空间得不到利用失仍然较大。

段式与页式的比较:

段的保护:

1、地址越界保护法

2、存取方式控制保护法

段式管理的优缺点 
优点 
提供了内外存统一管理的虚存实现。 
段长可根据需要动态增长。 
便于对具有完整逻辑功能的信息段进行共享。 
便于实现动态链接。 
缺点 
需要更多的硬件支持。 
处理碎片比较麻烦。 
给系统管理带来一定的难度和开销。 
每个段的长度受内存可用区大小的限制。 
选择不恰当的淘汰算法,可能会产生抖动现象。

综合段式和页式的段页式内存管理兼具段和页管理的优点。

 

时间: 2024-10-01 10:51:05

操作系统基础知识的相关文章

《嵌入式操作系统内核调度》笔记:1 操作系统基础知识

很偶然地搜到这本书,最近买了纸版书,作者有个新浪博客和淘宝配套的开发板,可以自己搜下. 笔记主要记录下看书时画下的,因为是说明性的文字,所以没有经过编码,自己理解也是很模糊的. 写下来发到博客上,感觉能提高学习动力,可能是有潜在的交流作用吧. ? ? 为什么要有操作系统? 最初的时候其实是没有的,CPU的功能不就是执行指令吗,最初人们就写个程序让计算机去跑嘛,那时是没有操作系统观念的.后来,跑了一个程序,自然就会想跑两个程序,一山不容二虎,两个程序麻烦就来了,但还不是太大,能跑两个了,人们自然想

操作系统基础知识总结(重要)

1. 操作系统的四个特性 并发:同一段时间内多个程序执行(注意区别并行和并发,前者是同一时刻的多个事件,后者是同一时间段内的多个事件) 共享:系统中的资源可以被内存中多个并发执行的进线程共同使用 虚拟:通过时分复用(如分时系统)以及空分复用(如虚拟内存)技术实现把一个物理实体虚拟为多个 异步:系统中的进程是以走走停停的方式执行的,且以一种不可预知的速度推进 2,进程与线程 2.1 多进程的组织形式包括下面3个关键部分: 1)PCB(Process Control Block):用来记录进程信息的

Linux操作系统基础知识

继续补充一点vim指令的一些知识点,当需要同时操作多个文件时,使用vim指令可同时打开几个文件加载至内存中.命令格式为vim file1 file2 file3,其中不同文件用空白字符隔开,默认操作第一个文件,当需要操作其他文件时,在末行模式下输入:next/:prev/:first/:last分别对应为下一个.前一个.第一个.最后一个文档的内容.当需要同时查看不同文件内容时,使用选项-o/O为竖屏/横屏分屏显示文件内容.在分屏情况下切换当前操作文件使用ctrl+w+左右键,ctrl前可加数字以

操作系统基础知识2

一.进程管理 1.进程与线程有什么区别 进程是程序关于某个数据集合上的一次运行活动,它是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU 调度和分配的基本单位,线程基本上不拥有系统资源. 区别如下: a.一个线程必定属于也只能属于一个进程:而一个进程可以拥有多个线程并且至少拥有一个线程. b.属于一个进程的所有线程共享该线程的所有资源,包括打开的文件.创建的Socket 等.不同的进程互相独立. c.线程又称为轻量级进程. d.进程是程序的一次执行,线程可以理解为程序中一段

操作系统基础知识总结(一)

1. 进程和线程的区别 进程 进程,即正在运行的程序,程序从硬盘载入到内存就变成进程.进程是资源的拥有者,每个进程都拥有着自己的内存空间与多个线程. 线程 线程是指令的执行者,是计算机执行指令的基本单元,一个进程可以拥有多个线程.线程的引入主要有如下原因: 响应:与进程相比,创建线程不涉及或较少涉及资源分配,因此速度较快 资源共享:线程间可以共享资源,同一个进程内两个线程通信快 经济:创建线程不涉及或较少涉及资源分配 适合计算机的多处理器架构 线程既有共享的资源,也有自己私有的资源,JVM中线程

Linux操作系统基础知识vi/vim命令

之前介绍了nano编辑器,vi/vim在功能上更加强大,所以一般都使用vi/vim编辑器编写脚本.vim在vi基础上添加了更加友好的编辑界面,也更容易发现错误. 也可以称为模式化编辑器:编辑模式(命令模式).末行模式.插入模式(输入模式).替换模式.可视化模式,通过良好的结合各种模式进行脚本编辑. 一.vi/vim的打开方式: vi/vim:打开vi/vim的界面: vim file:file存在,则打开并将光标默认放置在第一行第一个字符: file不存在,则以新文件的方式打开,若保存,则文件被

操作系统基础知识(一)操作系统五大管理功能以及各自的作用

1.进程与处理器管理:负责对CPU时间的管理,将其合理地分配给每个进程. 2.存储管理:为各个程序及其使用的数据分配存储空间,并保证它们互不干扰. 3.文件管理:负责文件的存储.检索.共享和保护,为用户提供文件操作的方便. 4.设备管理:根据用户提出使用设备的请求进行设备的分配,同时还能随时接受设备的请求. 5.作业管理:为用户提供一个使用计算机的界面,使其方便地运行自己的作业,并对所有进行系统的进行调度和控制,尽可能高效地利用整个系统的资源.(完成某个独立任务的程序及其所需的数据组成一个作业)

【linux_笔记】-操作系统基础知识

常见的CPU系列(硬件架构): 1.ARM(移动硬件平台):只生产知识产权不生产设备,只负责设计芯片,真正生产的都是由三星       高通这些生产的.手持智能设备在硬件架构上都属于ARM.    2.x86:指的是intel或者AMD的x86系列,32位的平台    --32位和64位操作系统指的是CPU一次处理数据的能力是32位还是64位    --也就是大马路并行32条车道与并行64条车道的区别,因此,64位的可以实现的流量要比32位来              的大得多.    3.x6

计算机操作系统基础知识-2

Shell Shell是操作系统与用户交互的界面.表现为通过控制台执行用户命令.本身不执行命令,仅仅是组织和管理命令. 脚本:类似程序的方式执行一系列的逻辑顺序的命令序列完成复杂的功能和人机交互.保存在文件中,是shell命令的集合. 系统调用 定义:操作系统内核为应用程序提供的服务/函数 特点: 一般涉及核心操作和硬件资源 运行于核态 函数具有唯一ID 产生中断,且为自愿中断 进程管理 定义:是程序在某个数据集合上的一次运行活动.程序的一次运行即为一个进程. 特性: 动态性 并发性 异步性 独