您的位置:首页 > 其它

操作系统(二)

2020-04-05 07:26 253 查看

什么是操作系统

操作系统是管理电脑硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统是控制其他程
序运行,管理系统资源并为用户提供操作界面的系统软件的集合。操作系统身负诸如管理与配置内存、决
定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统的型 态非常多样,不同机器安装的 OS 可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。 目前微机上常见的操作系统有 DOS、OS/2、UNIX、XENIX、LINUX、Windows、Netware 等。

进程的特征:由程序段、相关数据段和(PCB)进程控制块构成进程实体

进程的定义:

1.进程是程序的一次执行
2.进程是一个程序及其数据在处理机上顺序执行时所发生的活动
3.进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位

三个状态:

就绪状态 执行状态 阻塞状态

进程控制块

进程控制块是进程实体的一部分,记录了操作系统所需的用于描述进程当前运行状况以及控制进程运行的全部信息,通常包括如下信息:
1.进程标识符 2.处理机状态 3.进程调度信息 4.进程控制信息

同步机制应遵循的规则

  1. 空闲让进:无进程处于临界区时,允许一个进程进入临界区
  2. 忙则等待:临界资源被访问,其他进程必须等待
  3. 有限等待:要求访问临界资源的进程,保证有限时间内能进入临界区
  4. 让权等待:当进程不能进入自己临界区时,立即释放处理机

操作系统中的信号量

信号量是一个确定的二元组(s,q),其中s是一个具有非负初值的整型变量,q是一个初始状态为空的队 列。整型变量 s 表示系统中某类资源的数目,当其值大于 0 时,表示系统中当前可用资源的数目;当其值 小于0时,其绝对值表示系统中因请求该类资源而被阻塞的进程数目。 信号量分类: ① 整型信号量:所谓整型信号量就是一个用于表示资源个数整型量 ② 记录型信号量(资源信号量):就是用一个结构体实现,里面包含了表示资源个数的整型量和一个等待 队列。 信号量的应用: ① 实现进程同步 ② 实现进程互斥

PV操作

信号量的值除了初值外,仅能由这PV原语加以改变。P、V 操作以原语形式实现,保证了对信号量进行操 作过程中不会被打断或阻塞。P 操作相当于申请资源V 操作相当于释放资源。P操作和V操作必定成对 出现,但未必在同一个进程中。

什么是 DMA ,什么是中断。DMA和中断有什么区别?

DMA :Direct MemoryAccess 直接内存访问,为了实现外设<->CPU<->存储器之间的不足,从而实现<-> 存储器。CPU 释放总线,由 DMA 控制器管理。
中断:是指在 CPU 正常运行程序时,由于内部/外部事件引起 CPU 暂时停止正在运行的程序,转而去执行 请求 CPU 服务的内部事件或外部事件的服务子程序,待该服务子程序处理完毕后又返回到被中止的程序继 续运行,这一过程叫做中断。
区别:首先概念功能就不一样,另外在 DMA 的过程中需要用到中断系统

硬中断和软中断是什么,区别是什么?

软中断: 1、编程异常通常叫做软中断 2、软中断是通讯进程之间用来模拟硬中断的 一种信号通讯方式。 3、中断源发中断请求或软中断信号后,CPU 或接收进程在适当的时机自动进行中断处理或完成软中断信号 对应的功能 4、软中断是软件实现的中断,也就是程序运行时其他程序对它的中断;而硬中断是硬件实现的中断,是程序运 行时设备对它的中断。
硬中断: 1、硬中断是由外部事件引起的因此具有随机性和突发性;软中断是执行中断指令产生的,无外部施加中断 请求信号,因此中断的发生不是随机的而是由程序安排好的。 2、硬中断的中断响应周期,CPU 需要发中断回合信号(NMI 不需要),软中断的中断响应周期,CPU 不 需发中断回合信号。 3、硬中断的中断号是由中断控制器提供的(NMI 硬中断中断号系统指定为 02H);软中断的中断号由指 令直接给出,无需使用中断控制器。 4、硬中断是可屏蔽的(NMI 硬中断不可屏蔽),软中断不可屏蔽。
区别: 1、软中断发生的时间是由程序控制的,而硬中断发生的时间是随机的 2、软中断是由程序调用发生的,而硬中断是由外设引发的 3、硬件中断处理程序要确保它能快速地完成它的任务,这样程序执行时才不会等待较长时间

内存与外存:

1、内存就是通常说的“内存”,速度比CPU内的Cache慢,比外存快容量比Cache大,比外存小。计算机中所有程序的运行 都是在内存中进行的,因此内存的性能对计算机的影响非常大。 内存(Memory)也被称为内 存储器,其作用是用于暂时存放 CPU 中的运算数据,以及与硬盘等外部存储器交换的数据。 只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU 再将结果传送出来,内存的运行也决定了计算机的稳定运行。 内存是由内存芯片、电路板、 金手指等部分组成的。

2、外储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据。常见的外存储器有硬盘、软盘、光盘、U盘等

管程定义

管程相当于一堵围墙(秘书),把共享变量和对它的操作过程围了起来,所有进程访问临界资源必须先经过管程,管程对临界资源进行管理。

进程通信的类型

  1. 共享存储器系统:相互通信的进程共享某些数据结构或共享存储区,进程之间能够通过这些空间通信
  2. 消息传递系统:传递信息以格式化的消息为单位,能实现大量数据传递,隐藏了通信的实现细节,使通信对用户来说是透明的,大大简化了通讯程序的复杂性
  3. 管道通信:“管道”是指用于连接一个读进程和一个写进程以实现他们之间通信的一个共享文件

调度

1 高级调度:调度的对象是作业
2. 低级调度:调度的对象是进程
3.中级调度(中程调度):为了提高系统利用率和吞吐量,应使那些暂时不能运行的进程不在占用宝贵的内存资源,而将他们调至外存等待。

调度算法

1 先来先服务调度算法(FCFS):每次选择一个或多个最先进入该队列的作业,将他们调入内存,为他们分配资源、创建进程,然后进入就绪队列。FCFS适用于长作业。
2. 短作业优先调度算法(SJF):对短作业短进程优先调度算法,从后备作业中选择一个或多个运行时间最短的作业。该算法对长作业不利;该算法为考虑作业的紧迫程度;作业是由用户提供估计执行时间而定的。
3. 高优先权优先调度算法

优先权类型

(1)静态优先权:优先权在进程创建时确定,进程整个运行期间保持不变
(2)动态优先权:创建进程时所赋予的优先权,是可以随进程的推进或随其等待时间增加

基于时间片的轮转调度算法

1.时间片轮转法
系统将所有的就绪进程按先来先服务的原则排成一个队列,每次调度时,把CPU分配给队首队列,当执行时间片用完,由一个计时器发出时钟中断请求,调度程序便据此信号停止该进程,并将它送往就绪队列队尾。
2. 多级反馈队列调度算法
设置多个就绪队列,各个队列赋予不同的优先级,各个队列执行时间片的大小也不同,优先级越高的队列,时间片就越小,当一个进程就绪后,首先放在第一队列的末尾按FCFS得原则调度如能在时间片内完成则撤离系统,否则放在第二队列,若未完成,再放到第三队列,如此下去到最后一个队列,在最后一个队列采取时间片轮转方式。仅第一个队列空闲时才调度第二队列。
实时调度算法
1.最早截止时间优先EDF:截止时间越早,优先级越高
2.最低松弛度优先LLF:根据任务的紧急情况,来确定优先级

  • 点赞
  • 收藏
  • 分享
  • 文章举报
一只很菜但是好学的猪 发布了38 篇原创文章 · 获赞 1 · 访问量 1568 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: