《计算机四级网络技术知识点.docx》由会员分享,可在线阅读,更多相关《计算机四级网络技术知识点.docx(17页珍藏版)》请在优知文库上搜索。
1、操作系统原理一、操作系统概述1.操作系统(1)概念:是计算机系统的一个系统软件,能有效地组织和管理计算机系统中的硬件和软件资源,合理(公平对待不同用户程序,不发生“死锁和“饥饿)组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使用户能灵活、方便、有效地使用计算机,并使整个计算机系统高效运行;位于硬件之上,支撑软件(软件的编制和维护)之下。A.应用角度看主要作用:提供人机交互接口(提供给用户的接口是命令输入和系统调用);B.软件开发角度看作用:软件开发的基础平台;C.安全保护角度看作用:第一道安全防线;D.系统发展角度看作用:虚拟机和扩展机(2)特性A.并发性:执行期间具有相互制约
2、关系;程序与计算不再一一对应;结果不再现并发过程失去封闭性;B.共享性:CPU、内外存储器、外部设备;C.随机性(异步性):何时退出?假死?中断?关机?重启?(3)功能:A.进程管理:对CPU进行管理。包括进程控制(创建、撤销结束进程以及控制运行时候的各种状态转换)、进程同步(处理进程之间同步或互斥关系)、进程间通信(信息交换)和进程调度(按照一定算法从就绪队列中挑选一个进程让CPU执行它);B.存储管理:管理计算机内存资源。包括回收与分配内存、存储保护(考虑程序可能发生越界的情况)和内存扩充(借助虚拟技术在逻辑上增加进程运行空间);C.文件管理:文件存储空间的管理(管理/创建/删除/命名文件
3、);文件目录管理;文件系统的安全性(读写和存取权限)D.设备管理:除CPU和内存之外的所有输入输入设备,复杂外部设备分配和故障处理。技术包括:中断技术、通道技术、虚拟设备技术和缓冲技术。E.用户接区(作业管理):(4)常见的操作系统:Ubuntu.Windows.Unix、DOS、BSD2 .操作系统分类:按页面使用环境和功能特征(1)批处理系统:分单道批处理系统和多道批处理系统,其中多道批处理效率和吞吐量较高但缺少人机交互性;指令有特权指令和一般指令;(2)分时系统:多用户共同、交互使用系统;独占性(用户感觉);及时性(3)实时系统:多路性,及时性,交互性,可靠性,有过载防护能力按计算机体系
4、结构分类:(1)个人操作系统(2)网络操作系统:主从关系明显;有限制共享资源;(3)分布式操作系统:统一配置,所有主机使用一个操作系统;资源共享;相互通信;(4)嵌入式操作系统:成本低交互式系统是指用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务,并通过交互方式在终端上向用户显示结果。多级反馈、时间片轮转和高优先级适用于交互式操作系统。3 .操作系统结构:(1)整体式结构:功能划分成多模块;(2)层次式结构:单向调用,同层不调用;(3)微内核结构(C/S结构):将大多数的操作系统由用户进程实现;分割成多个部分,每一部分只处理一方面的功能,如文件服务、进程服务与
5、服务器通信;特点:高可靠性、高灵活性、适合分布式处理、可移植性强、融入面向对象技术,但效率低,不适合频繁通信;微内核具备:线程调度、虚拟存储、消息传递、设备驱动、内核原语操作以及中断处理。4 .指令:(1)特权指令:包括输出指令、停机指令等,只有在监控程序才能执行特权指令,只能在内核状态(管态)下运行(屏蔽中断、关闭中断);(2) 一般指令:用户态下运行(关机、读文件、设置时间),管态下也可以执行。如果用户程序在用户态(目态)执行特权指令,则引起访管中断,这也是CPU由用户态向核心态转换的方法。5 .(1)临界资源:(2)可重写入代码:硬盘,内存;(3)不可重用资源:时间片到时、硬件时钟到时6
6、 .三类接口可供用户使用:(1)命令接口:提供一组命令供用户间接/直接操作;(2)程序调用:一组系统调用命令组成,是操作系统提供给编程人员唯一接口,调用命令供用户程序使用;(用户编程需要打印输出,提供指令:write()(3)图像界面接口:图标、菜单、窗口,形成一个直观易懂,使用方便的计算机操作环境,终端窗口采用命令行。7 .设备分配算法中,数据结构主要包含四个表分配顺序是:系统设备表(SDT)、设备控制表(DeT)、控制器控制表(CoCT)、通道控制表(CHCT)。8 .程序状态字(PSW,专门的寄存器指示处理器状态)(1)包含:CPU工作状态码(指明管/目态);条件码(指令结果);终端屏蔽
7、码(是否允许中断);(2)状态标志:CF(有进位)、ZF(为零)、SF(符号)、OF(溢出)、TF(陷阱)、IF(中断屏蔽)、VIF(虚拟中断)、VIP(虚拟自断待决)、IOPL(Io特权级别)二、操作系统运行机制1 .CPU中的存储器(1)用户可见寄存器:主要用于各种算术逻辑指令和访问指令(数据寄存器、地址寄存器、条件码寄存器)(2)控制和状态寄存器:用于控制处理器的操作(程序计数器PC、指令寄存器IR、程序状态寄存器PSW)2 .中断与异常的分类(1)中断:(外部事件引起的)时钟中断;输入输出中断(键盘输入);控制台中断;硬件故障中断;网卡上数据区满(数据传输完成);(堆栈溢出);(被0除
8、)(2)异常:(内部事件引起的)程序性中断(执行指令产生的结果);访管指令中断(被清零);3 .系统调用(1)概念:运行在用户态(CPU在用户程序中执行)被调用程序在系统态(CPU在系统程序中执行);系统调用可嵌套使用,即一个被调用过程执行期间还可以调用另一个,一般可多次调用但不能无限制调用;(2)分类:进程控制类(创建/终止进程)、文件操作(打开)、进程通信类、设备管理类(请求/释放设备)、信息维护类(时间日期);(3)参数传递:由陷入指令自带参数(只能携带几个);通过寄存器传递参数(内存开辟专门的堆栈传递参数);(4)一般调用在,被调用过程执行结束后,会直接返回调用程序;系统调用在结束调用
9、,首先会对所要求的进程进行优先级分析,若调用进程不具备高优先级则会产生重新调度;三、进程线程模型1.多道程序环境特点:独立性;随机性(输入输出都是随机的);资源共享(导致执行速度制约)。2.进程(1)概念:计算机程序(指令、数据组成)关于数据集合上的一次运行活动,是资源分配的基本单位;(2)特点:并行性;独立性(独立资源分配单元);异步性(不可预知速度的向前推行);动态性;交往性。(3)组成:PCB、指令和数据三部分组成;(4)进程控制块(PCB)A.组成:进程名、进程号、存储信息、进程标识符、进程优先级、进程当前状态、资源清单、消息队列指针、进程队列指针、打开当前文件等调度信息和PSW、时钟
10、、界地址寄存器等现场信息;B.组织方式:线性方式、索引方式、链接方式、队列方式(就绪队列、等待队列、运行队列);C.特征:是进程的灵魂:必须常驻内存;PCB的运行状态只可以通过操作系统读取。(5)进程控制:通过原语实现对进程在整个生命周期中各种状态间的转换;用于进程控制的原语一般有创建进程、撤销进程、挂起进程、激活进程、阻塞进程、唤醒进程以及改变进程优先级等。(6)创建进程:A.步骤:申请空白PCB;为新进程分配资源;初始化PCB;将新进程插入就绪队列末尾,B.创建进程的时机:用户登录;系统初始化;用户系统调用;初始化批处理作业。3 .进程状态及转换(1)三状态模型:运行状态、就绪状态、等待状
11、态(阻塞状态其中运行状态转换到就绪状态有3种可能性:时间片用完;进程创建完成;被调度程序强占CPU(对于非强制式是:一个进程运行结束);运行状态转换阻塞状态:请求系统服务、启动某种操作、新数据尚未到达、无新工作可做。(2)五状态模型:运行、就绪、阻塞、创建、结束。1.inUX上进程有五种状态:运行、中断、不可中断、僵尸状态、停止状态。(3)七状态模型;运行、就绪、阻塞、创建、结束、激活(外内)、挂起(内外)。4 .线程(1)概念:进程中的实体,不能独立于进程存在;是CPU调度和分派的基本单位;不同的线程可以执行相同的程序;同一进程中各线程共享内存空间;自己不拥有系统资源,只拥有一点运行中必不可
12、少的资源;每个线程有一个标识符和一张线程描述表,记录了线程执行的寄存器和用户栈等现场;(2)特点:花费开销少、切换花费时间少、内部通信快、能独立工作;(3)线程操作含义:pthreadjoin:等待一个特定的线程退出;pthread_yield:线程让出CPU(主动释放);pthread_creat:创建线程库函数;pthread_exit:结束一个线程的库函数5 .CPU调度分类:高级调度(创建进程)、中级调度(调入内存)、低级调度(分配CPU)。6 .调度(1)功能:记录系统中所有进程执行状态;从就绪队列中选出一个CPU分配给它;选中PCB有关现场信息(PSW、通用寄存器等)送往CPU的寄
13、存器中,让他占用执行。(2)时机:CPU资源让出来不一定调度,CPU资源占用一定不调度;可强占方式(当优先级高的进程运行存在时,立即进行调度,转让CPU资源)与不可强占方式(进程执行完毕才释放CPU)。(3)调度算法:先来先服务FCFS(不可强占):最短时间作业算法SJF;轮转法RR;最高响应比优先算法HRRF(介于FCFS与SJF之间的折中算法,即考虑等待时间又不使长作业等待时间过长);多级反馈队列操作系统不能在运行中动态改变进程调度算法。四、存储管理方案1 .进程互斥的解决办法:竞争各方平等协商;引入进程管理者2 .计算机中资源共享的程序可分为三个层次:(1)互斥;利用硬件解决的互斥方法简
14、单、支持多个临界区、适用范围广;不能实现“让权等待”;(2)死锁:(3)饥饿:3 .临界资源分成四个部分:(1)进入区:(P原语);whileTS(&lock)(2)临界区:访问临界资源的一段代码;n=fetch(balance)(3)退出区:(V原语)Iock=FLASE(4)剩余区:代码其余的部分OUtPUt(IiSt)4 .进程同步机制应遵循的准则:空闲则入、忙则等待、有限等待、让权等待。5 .信号量(L)只能通过初始化和两个标准的原语来访问;(2)初始化可指定一个非负整数值,表示空闲资源总数;若为负值,其绝对值表示当前等待临界区的进程数;P(empty)V(full)(3)同步:信息量
15、empty,初始值K;信号量full,初始值0互斥:信号量mutex,初始值为1.(占用为1空闲为0)(4)系统直接通信时,发送原语:Send(receiver,message)6 .管程(1)定义了一个数据结构和能为并发进程所执行的一组操作。进程可在任何需要的时候调用管程中的过程,但它们不能在管程之外什么的过程中直接访问管程数据结构;管程能保障共享资源互斥执行;是一种同步机制;将共享变量及对共享变量的操作封装在一起(2)任一时刻中,管程中只有一个活跃进程;所有临界区转换成管程,则只许一个进程使用临界区内代码。管程本身无法保证互斥;(3)管程对象:共享的数据结构和一组操作过程。(4)为解决进程同步关系,引入条件变量,在条件变量上实施P、V操作;7 .进程间的通信(1)共享内存:用于多个进程并发执行且相互通信,适合传输大量信息;设置一个公共内存区,一组向其中写,一组从公共内存读;不需要在系统中产生多份相同的拷贝。(2)消息机制:利用内存中若干缓存区组织成队列,依赖进程或基础框架来调用实际执行的代码;缓冲区中包括:消息缓冲区、消息指针、互斥信息量、同步信息量、发送和接收原语。(3)管道通信:通过两个进程,打开一个共享文件,实现进程间的通信;字符流形式联系,不足是通信速度较慢。(4)信箱通信:发送进程