1、第二部分 软件环境基础知识操作系统现代计算机系统是一个极其复杂的系统操作系统高效管理计算机资源的系统软件操作系统的目标高效管理计算机资源,为用户提供方便、易用的操作环境操作系统的作用1.操作系统是加到计算机硬件上的第一层软件,是其他软件运行的基础2.操作系统隔离硬件的变化3.操作系统是用户使用计算机的接口最终用户程序员操作系统设计人员计算机硬件操作系统各种工具软件应用软件图 8.1 计 算机系统层次图接口普通用户接口程序员级接口命令行接口图形用户界面学习目的加深对计算机系统的理解学习程序设计方法和技巧加深程序设计知识计算机是如何高效完成工作的?处理器周期10纳秒(100M主频)1秒高速缓存访问
2、30纳秒3秒项目时间减速一亿倍存储器访问200纳秒20秒上下文切换100 000纳秒(100微秒)166分钟磁盘访问10 000 000纳秒(10毫秒)11天时间片100 000 000纳秒(100毫秒)116天n进程和线程 进程:一个可并发执行的程序在其数据集上的一次运行,是操作系统进行资源分配的单位和运行单位 线程:进程内的一个可调度的实体,是一个执行单元,是轻量级的进程。(注意没有说是资源分配的单位,包括内存在内的资源) 线程的切换快于进程间的切换 线程同步需求的复杂性高于进程Unix以进程为最小调度单位,Windows以线程为最小调度进程8.2 操作系统的特性n操作系统具有区别于其他软
3、件的几个最基本的特征:程序的并发执行、资源的共享、虚拟性1. 程序的并发执行n“并发”是指两个或两个以上事件在同一时间间隔中发生2. 资源的共享n指计算机系统中的硬、软件资源不仅为某一程序或者某一用户所独享,多个拥有授权的程序或用户都可以使用n资源的共享方式有两种:互斥访问、同时访问3. 虚拟(Vitual)“虚拟”,就是把物理实体映射为一个或者多个逻辑实体8.3 操作系统的功能操作系统的主要功能有:n处理机(CPU)管理:对处理机的分配、调度实施最有效的管理,以最大限度地提高处理机的处理能力n存储器管理:为每个进程分配内存,当进程被撤消时回收分配出去的内存是内存管理的主要内容n设备管理:除了
4、对设备进行分配、调度以提高整个计算机系统的运行效率之外,还必须屏蔽各种设备的物理特性,向用户提供一个方便、易用、高效的操作界面n文件管理:数据存储空间的分配、回收;文件的读写和查找机制和安全机制,还应当屏蔽掉各种存储设备的物理特性,向用户提供一套简单、方便、易用的服务接口n作业管理:作业就是用户的计算任务,它包括用户应用程序所需要的数据以及控制应用程序执行的指令之部分,作业管理应当具有作业调度功能8.4 操作系统的种类1批处理操作系统:n首先出现的是“单道批处理系统”, 用户一次可以提交多个作业,但系统一次只处理一个作业,处理完一个作业后,再调入下一个作业进行处理。n“多道批处理系统”把内存分
5、为若干部分,属于同一批次的若干个作业调入内存,存放在内存的不同部分。一个作业由于等待输入输出操作而让处理机出现空闲时,系统自动进行切换,处理另一个作业2分时操作系统n分时系统是在多道程序的变种n与批处理系统的区别在于:在批处理系统中,一个作业可以长时间地占用CPU直至该作业执行完成;而在分时系统中,情况却恰恰相反。一个作业只能在一个时间片(Time Slice,就是一小段时间,一般取100毫秒)的时间内使用CPU,时间一到,系统将剥夺作业的CPU使用权,把CPU分配给其他的作业使用分时系统具有多路性、独占性、及时性及交互性等特点:3实时操作系统n对于特定的输入,系统能够在极短的时间内作出响应并
6、完成对该输入请求的处理n实时系统采用了时间片分时技术,也具有及时性,多路性,独占性和交互性等四个特征。不过,实时操作系统与分时系统之间还是有很大的区别的。实时系统一般是专用的,其交互能力比较差,它只允许用户访问数量有限的专用程序4 网络操作系统,具有以下基本功能:(1)网络通信功能(2)网络资源的管理和使用8.5 操作系统的结构常见的操作系统结构有:整体式,层次式和客户/服务器式 应用程序应用程序系统调用计算机硬件用户态 核心态应用程序应用程序系统调用文件系统内存管理和I / O 管理进程调度计算机硬件用户态 核心态用户应用进程进程服务器内存服务器文件服务器网络服务器显示服务器微内核硬件用户态
7、核心态8.6 操作系统的资源管理8.6.1 进程管理1进程与线程n进程是一个可并发执行的程序在其数据集上的一次运行,是操作系统进行资源分配的单位,进程表示资源的占用和所要做的工作n进程具有:动态性 、并发性、独立性、异步性n线程是进程内的一个可调度实体、是一个执行单元、轻量进程n线程可以方便、快捷地实现这种并发性。属于同一个进程的若干线程共享进程的地址空间和其他资源,所以,线程之间的切换比进程之间的切换要快得多2进程的状态阻塞就绪运行3进程控制进程控制一个描述进程的数据结构应当记录三个方面的信息:n进程状态,内存信息,记录文件管理信息常采用进程控制块( Process Control Bloc
8、k,简称PCB)描述UNIX的PCB:PCB:进程标识号 唯一标识一个进程的标志(为一整数) 进程状态 指就绪、运行、阻塞等状态 进程特征 标志是系统还是用户进程,程序是在内存还是在外存 进程优先数 用以确定由就绪态转为运行态的优先程度 程序地址 指出该进程的程序存放在内存或外存的什么地方 现场保护区 在进程交替时保存其程序运行的 CPU 状态,以便恢复并继续执行 同步、互斥机构 主要是一些同步互斥信号量(信号灯) 系统栈 进程调用操作系统核心的子程序时,所保留参数和返回地址等 “家族”联系 进程间的隶属关系,如本进程由哪个进程建立、其子进程是谁 资源清单 本进程当前已占用的资源情况(外设种类
9、、设备号、打开的文件等) 其它信息 随不同的系统而异4进程的同步n在操作系统中,资源是可以共享的,如:多个进程可共享硬盘、文件,变量甚至可执行程序段。然而,系统中的所有进程都是相互独立、以异步的方式并发执行的,所以进程间共享资源可能导致问题n进程共享的资源不允许被同时访问,这种资源叫做临界资源n操作系统必须提供一种机制对共享临界资源的进程进行协调,以保证这些进程能够“有序”地执行,这就是进程同步5进程通信(1)基于共享数据结构或共享内存进行通信 (2)利用消息进行通信(3)利用共享文件进行通信发送进程接收进程信箱信箱头 发送进程 接收进程 共享文件6进程调度按照一定的原则把CPU动态分配给某一
10、就绪进程,需完成: n记录进程的状态n按一定的调度算法,从就绪队列中选一个进程,把处理机分配给它n当进程的时间片已经用完或必须等待I/O完成时,回收处理机进程调度一般有两种方式:非抢占式、抢占式n系统可以根据某种规则剥夺一正在运行进程的CPU占用权并将CPU分配给其他进程 -抢占式n系统把CPU使用权分配给某个进程之后就让它一直运行下去直到该进程运行完成或被阻塞,才把CPU使用全分配给其他进程-非抢占式调度算法进程调度算法n优先级调度策略n时间片轮转法n多重时间片循环调度8.6.2 存储管理存储管理应当解决几个问题:n一是存储空间的分配和回收;n二是地址映射,就是把程序使用的地址映射成内存空间
11、地址;n三是内存的保护,就是系统必须保证内存中的进程不会相互干扰,影响整个系统的稳定性、可靠性1重要术语n逻辑空间和物理空间:逻辑空间是程序设计人员的编程空间,物理空间是指内存空间,是由物理存储单元组成n重定位和地址映射: 在设计程序时,程序设计人员使用的是逻辑地址空间,在程序调入内存实际执行时,操作系统再将逻辑地址空间转换成内存的物理地址空间,称为。由操作系统自动完成,对用户是透明的。:一是当某程序装入内存运行时,根据其所获得的空间位置,将程序的逻辑地址映射成相应的物理地址;二是在程序的执行过程中,如果系统移动了其在内存的位置,需要将程序的逻辑地址重新映射成新的物理地址n虚拟存储:虚拟存储器
12、,就是把内外存连起来统一使用2存储管理方式n分区管理:把内存空间静态地或动态地分割成若干大小不等的区域,每个作业分配一片连续的存储空间,程序一次整体装入到系统内存中。常见的有:固定式、可变式、可重定位和多重分区几种n分页管理 将每个进程的虚拟地址空间按固定大小分成若干页面,并 0、1、2等序号表示,叫做虚页面;同时,把内存空间也按同样大小分为若干页面,也用 0、1、2等序号表示,叫做实页。在对进程进行存储分配时,将进程的虚页面映射到内存中的实页面上n分段存储管理一个用户程序通常由一个主程序、若干个子程序和数据区组成,每一个逻辑信息组称“段”,以“段”为单位进行内存管理n段页结合存储管理:对各个
13、段又进行分页。把段调入内存时,虚页面与实页面相对应,一页一页地存放需要考虑的因素分页式内存管理分段式内存管理程序员需要知道这种技术吗?不需要需要线性地址空间的维数1 维2 维逻辑地址空间可以比实际的物理空间大吗?可以可以数据和代码可以被分开并被分别保护吗?不行不行有助于用户间的过程共享吗?不是的为什么发明这种技术?为了能向用户提供很大的逻辑地址空间而又不需购买很多的物理内存为了允许把程序和数据划分为独立的逻辑地址空间以实现共享和保护3存储保护n 越界保护:越界保护一般是通过一对界地址寄存器实现的。程序运行时,页表长度或段表长度被放入页表或段表地址寄存器的左边部分,当中央处理机访问某虚拟地址时,
14、硬件自动把页号 (段号 )与页表 (段表 )长度进行比较;在分段环境下还要将段内地址与段表中段长度进行比较,如果合法,才进行地址转换,否则产生越界中断信号。n存取控制保护:常用的存取控制类型包括读、写 (修正 )、执行和增加 (只许添加不允许修正 )四类。8.6.3 设备管理:n根据各类设备的特点确定相应的分配策略n启动设备完成实际的输入输出操作n向用户提供一个统一的、友好的使用界面n优化设备的调度、提高设备的利用率n设备管理分为两层,第一层与用户进程交互的是“输入输出控制系统”,它完成设备的分配、调度并向程序员提供一个统一的编程接口,实现了逻辑设备向物理设备的转换。处于下面一层的是“设备驱动
15、程序”它直接与设备打交道,控制设备控制器完成具体的输入输出进程阻塞调用进程验证I / O请 求调用驱动程序状态检验唤醒调用进程返回调用进程 初始化设备数据传送返回输入输出控制系统 输入输出控制系统设备驱动程序2逻辑设备与物理设备n输入输出控制系统必须把逻辑设备映射到实际的物理设备,系统必须保存一张记录了物理设备信息的表,我们把它称为逻辑设备表3缓冲技术nCPU与外设、内存与外设、外设与外设之间的处理速度是不匹配的,处理速度极慢的外设频繁地中断CPU的运行,将会大大降低CPU的使用效率,利用输入输出缓冲器可提高CPU与输入输出设备之间的并行程度,提高整个系统的运行效率4设备的分配与调度:按用户要
16、求合理、公平地进行设备分配5设备驱动程序负责接收和分析从设备分配程序转来的信息以及设备控制表中的信息,结合设备特性,进行信息格式转换,把执行信息转换成设备能够执行的形式,驱动设备进行I/O操作逻辑设备号物理设备号设备驱动程序入口地址1620E0000211FC120 8.6.4 文件管理n一个文件系统应当具有以下功能: 确定物理存储设备的存储结构、确定文件的组织结构 实现文件的保护和共享1文件的命名2文件的结构:是文件中信息的组织方式:字节流式文件和记录式文件两种 一 个 字 节 字节流文件 记录式文件一个记录3. 文件的存取n早期操作系统为顺序存取(Sequential Access)。进程
17、只能从文件的开始处顺序读取文件中的所有字节或记录,不能跳过某些内容n其后产生随机存取文件(random access file),它允许非顺序地读取文件中的字节或记录n在现代操作系统中,所有的文件创建后,自动成为随机存取文件4文件的属性下表列出了一些可能的文件属性域域含义域含义保护访问者及其访问权限临时标志0:正常;1:临时文件口令访问所需口令锁标志0:未加锁;1:加锁创建者创建者 ID记录长度一条记录的字节数拥有者当前拥有者关键字位置每条记录的关键字位置只读标志0:读写;1:只读关键字长度关键字域的 长度隐藏标志0:正常;1:隐藏创建时间文件创建日期和时间系统标志0:正常;1:系统文档修改时
18、间文件最近修改日期和时间存档标志0:已备份;1:未备份存取时间文件最近访问时间和日期ASCII/二进制标志0:ASCII 文件 1:则否当前长度文件字节数随机存取标志0:顺序;1:随机最大长度文件允许最大长度5文件的操作n文件是用来存储信息的,所以,任何一个系统都必须提供一些操作,以便于信息存储和检索 CREATE:创建新文件 DELETE:删除文件并收回占用的空间 OPEN:把文件的属性和磁盘地址装载到内存中,以便读写。 CLOSE:关闭文件释放占用的内存空间 READ:从文件中读取数据 WRITE:把数据写到文件中 SEEK:对于随机存取文件,可以利用此函数移动文件指针到需要的位置进行读写
19、。 SET ATTRIBUTE:设置文件属性 GET ATTRIBUTE:获取文件属性6目录n文件是用来记录信息的,而目录是用来记录文件的,目录包含许多目录项,每个目录项表征了一个文件7文件的存取控制8文件的存储文件系统中最基本的问题就是如何在盘上存储文件,记录文件使用了那些磁盘块,也就是如何管理磁盘存储空间n连续分配 、链表方式n索引链表、I-结点 .9目录的实现NTFS 文件系统权限权限文件夹(就是目录)文件读(R-Read)查看文件夹、属性、权限查看文件、属性、权限写(W-Write)添加文件夹,更改属性、显示权限更改文件属性、添加或修改文件内容执行(X-eXecute)更改文件夹 、显示权限属性运行文件,显示属性和权限删除(D-Delete)删除文件夹删除文件更改权限(P-change Permission) 修改文件夹权限修改文件权限取得所有权(O-take Ownership) 取得文件夹的所有权取得文件的所有权文件名扩展名权限保留时间时期 第 一 块 地 址文件长度8.6.5 操作系统的发展n1. 健壮性和安全性 .n2.多处理器能力 .n3.简单方便的系统配置和管理n4.网络配置管理 .n5.分布式对象技术 .n6.支持64位计算 .
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。