操作系统基础知识

来源:互联网 发布:战舰世界纪依数据 编辑:程序博客网 时间:2024/05/22 13:25

?操作系统是什么
?操作系统做什么
?操作系统如何做

1章
什么是操作系统?
从资源管理的角度:控制和管理计算机系统内的各种硬件和软件资源
有效的组织多道程序运行的系统软件。是用户与计算机的唯一接口
系统软件:一对下:控制和管理计算机系统内的各种硬件和软件资源
                  有效的组织多道程序运行
          一对上:扩充硬件功能,提供众多服务,方便用户使用
理解操作系统:1。是裸机之上的第一层软件 计算机硬件->操作系统->系统软件->应用软件
                                  
操作系统的功能?
1、存储器管理:内存分配 地址映射 内存保护 内存扩充 
2、处理器管理:作业调度 进程调度 进程控制 进程通信
3、设备管理 : 缓冲区管理:原因cpu处理的速度和设备不同步 设备的分配 设备驱动 设备无关性
4、文件管理 :文件存储空间管理 文件操作 目录管理 读写管理和存取控制
5、用户接口:命令界面 程序界面 图形界面
操作系统的特点?
1、并发:两个或多个活动在同一给定的时间间隔中进行 ///区别并行:随时随刻都同时在运行 cpu?串行
2、共享:计算机系统中的资源被多个任务所共用
         同时访问:宏观上同时访问磁盘,使用cpu
         互斥访问:没有固定的时间关系,程序执行的不可预计

操作系统的类型?
1、批处理系统:作业:用户定义的,由计算机完成的工作单位
               单道批处理系统:
               多道批处理系统:
2、分时系统:分时:若干并发程序对cpu时间的共享
             特点:同时性
                   交互性
                   独立性
                   及时性 
3、实时系统 :实时-及时、立即
              对特定的事件,系统能在很短的时间内作出响应并完成事件处理工作
              典型的是1、过程控制系统 2、信息查寻系统 3、事务处理系统
           特点:专业 实时 可靠
4、个人机系统:单用户 多用户

5 、网络操作系统  计算机网络=计算机技术+通信技术
       计算机网络特征:分布性 自治性 互连性 可见性
6、 分布式操作系统  其特征:分布式处理 模块化结构 利用信息通信 实施整体控制
                    其特点:透明性 灵活性 可靠性 高性能 可扩充性

2章
1、怎样理解进程的概念
2、进程的状态及其转换
3、进程的同步与互斥
4、临界资源和临界区

程序顺序执行的特征 顺序性:the one the other 封闭性:和自身的条件相互影响
     可再现行:
多道程序设计的特点 1、多个程序共享系统资源
                   2、多个程序并发执行
程序并发执行的特征 1、失去封闭性 2、程序与计算不再一一对应 3、出现相互制约的关系
进程:程序在并发环境中的执行过程
进程与程序的比较 1、进程是动态的 程序是静态的
          2、进程具有并发性 程序本身具有顺序性 程序的并发执行是通过进程实现的
                 3、进程具有独立性 是能独立运行的单位 是系统资源分配的基本单位
                                   是运行调度的基本单位
                 4、二者无一一对应的关系  一个程序可由多个进程共用 一个进程可顺序执行多个程序:输入数据计算
                 5、进程是异步运行的,会相互制约,程序不具备此特性  
                 程序和进程是二个完全不同的概念,二者间又存在密切的联系   
进程的特征       1、动态性
                 2、并发性
                 3、调度性:分配资源,调度运行
                 4、异步性
                 5、结构性:反映进程的状态,反映进程的分配情况 

进程的组成       进程控制块(pcb): 系统通过其进行进程的管理
                 程序:又定义,离不开程序
                 数据集合
进程与进程块的关系:1、每一个进程有唯一的pcb
                    2、os依据pcb管理进程
                    3、利用pcb实现进程的动态和并发
                    4、pcb是进程存在的唯一标志     

进程的状态及其转换: 1、进程的动态性是由进程的状态及其转换体现出来的  
                     2、进程的状态信息存在pcb中
                     3、状态转换在一定的条件下实现  
进程的基本状态:     1、运行态---正在cpu上执行 
                     2、就绪态--万事具备,就差cpu
                     3、阻塞态--等待事件,无法运行
说明:1、进程之间的状态转换并非都是可逆的  如阻塞--》运行
      2、进程之间的状态转换并非都是主动的  如运行-》阻塞
      3、进程在运行态才是真正的运行
进程的同步与互斥
      1、进程的活动中会相互制约(由系统的资源相制约:缓冲区、供者、用者) 所有的进程均相互独立
                                以异步方式并发执行
进程的同步:是进程间共同完成一项任务时直接发生相互作用的关系
            同步进程间具有合作关系
            在执行时间上须按照一定顺序协调进行
进程的互斥:并发执行的多个进程由于竞争同一个资源而产生的相互排斥的关系(例:多用户和打印机)
            互斥进程彼此在逻辑上是完全无关的,他们的运行不具有时间次序的特征

临界资源:一次仅允许一个进程使用的共享资源(例,打印机、表格)
临界区:   在每个进程中访问临界资源的那段程序。
进入临界区的准则: 1、单一进入
                   2、独自占用临界资源
                   3、尽快退出(使用完临界资源,尽快释放)
                   4、等则让权(让cpu的资源)
3章
信号量:是一种数据结构
        信号量的值与相应资源的使用情况有关  
        信号量的初值与资源有关
        信号量的值由p,v操作改变          
wait操作p(s):对信号量s做p操作:while(s<=0)do no_op s:=s-1     申请一个单位资源
signal操作v(s):对信号量s做v操作: s:=s+1    (s>0表示没有进程等待资源)                                        
 若s<0释放s队列上的第一个pcb,本进程继续                    释放一个单位资源
同步机制的应用

信号量mutex用于实现互斥,其初值设为1
说明:1、在同一个进程中,p,v必须成对出现 先 p 后v  才能使多个进程互斥使用临界资源
      2、 mutex用于实现互斥,其初值设为1

用p,v操作可以实现简单的同步
s1--缓冲区是否为空 初值为1
s2--缓冲区是否为满 初值为0
用于同步
说明:1、确定彼此关系和信号量的种类
      2、设定信号量的初值
      3、同一信号量的p,v操作要成对出现,但分别在不同进程的代码中
4章
处理机的管理
1、调度的类型和功能
2、调度的性能评价
3、常用的调度算法

调度:就是选出待分派的作业或进程
调度的分类:高级调度(作业调度)
            中级调度(存储调度)
            低级调度(进程调度)
作业调度和进程调度的区别:
   1、作业调度是宏观调度
        进程调度是微观调度
   2、前者为进程的活动做准备
                           后者为进程真正活动起来
   3、前者执行的次数交少
                           后者活动频繁
                        4、前者可以不设
                           后者必不可少
调度的性能和评价:1、cpu的利用率 2、吞吐量 3、周转时间 4、响应时间(从提交第一个请求到产生第一个响应所用的时间)
                  5、就绪队列的等待时间
常用的调度算法:1、先来先服务法 特征:较利于长作业或进程 交利于占用cpu时间多的作业
                                      易实现但效率低
                2、时间片轮转法       主要用于分时系统中的进程调度
                3、优先级法      :非抢占式和抢占式
                   确定进程优先级的方式:  静态方式:创建进程是就确定不变 易实现,出现进程饿死
                                           动态方式:随进程的推进而不断改变 可实现负反馈作用

五章 存储器管理
内存的分配:主要任务:为每个进程分配一定的内存空间
            基本工作:记录内存情况、处理用户申请、实施策略分配、回收释放空间
地址映射:  把程序中所用的相对地址转换成内存的物理地址
用户程序的主要处理阶段
    1、原程序   编辑->编译(成目标代码01码)->连接->装入->运行
相对地址:用户经编译之后的每个目标模块都以0为基地址顺序编址
绝对地址:内存中各物理存储单元的地址是从统一的基地址顺序编址
逻辑地址空间:由程序中逻辑地址组成的地址范围
内存空间:由内存中一系列存储单元所限定的地址范围 

虚拟存储器的引入:1、内存的不够用的矛盾
                  2、作业全部装人造成的内存浪费
                  3、程序执行具有局部规律
实现虚拟存储器技术的物质基础  : 1、二级存储结构 内存+外存
                                 2、动态地址转换机构
虚存的特点:1、虚拟扩充  不是从物理上而是从逻辑上扩充了内存的容量
            2、部分装人  每个作业不是全部一次性的装入内存,而是只装人他的一部分
            3、离散分配  每个作业装入内存的那部分不必占用连续的内存空间,而是见缝插针
            4、多次对换   在一个进程的运行期间,它所需的全部程序和数据要分成多次调入内存
虚存受到的限制:1、指令中表示地址的字长
                2、外存的容量                               

存储器的基本任务
1、分页和分段的概念
分页管理是解决内存碎片的一种有效方式
分页存储管理的基本方式: 逻辑地址->页表->物理地址
逻辑空间分页:  1、页面:是逻辑空间按照固定大小分的,由硬件确定
内存空间分块:内存块的大小与页面相同
页表:作用实现从页号到物理块号的地址映射
页面和内存块一般选为2的若干次幂
逻辑地址表示:(p,d)页号p 页内地址d
分页概念:逻辑空间分页  物理空间分块 页与块同样大 页连续块离散 用页号查页表 由硬件做转换
简单的分页系统并没提供虚存

分段的概念:
分段:段是一组逻辑信息的集合
程序的地址结构:       段号(s)+段内地址(d)
内存的分配:1、以段为单位分配
            2、每段各占用一块内存区
            3、各段可离散的放入内存
2、请求分页的实现
基本思想:1、地址空间分页,内存分块,页与块的大小相同
          2、作业部分装人内存
          3、作业所占的各块不连续
          4、硬件通过页表生成访问地址
          5、若缺页,进行缺页中断处理,换入内存
          6、利用快表可加速地址转换
特点:
请求分页=分页+请求
请求分页提供了虚拟存储器
页表项中的状态位指示该页面是否在内存。若不在,则产生一个缺页中断
整个系统有一个存储分块表,记录整个内存的使用情况

3、常用页面置换算法
页面置换:把一个页面从内存调换到磁盘的对换区中
1、先进先出 2、最佳方法 3、LRU最近最久未使用   2、3比较 1234123  2:124 3:423

6章 文件系统
1、什么是文件、文件系统
文件:被命名的数据的集合体  特点:通常存放在外存上
                                  可作为一个独立的单位被操作
                                  有自己的属性
文件的类型:ms=dos unix系统分为   普通文件:由表示程序、数据或正文的字符串构成
                                  目录文件:由下属文件的目录项构成的文件
                                  特别文件:特指各种外部设备
文件系统:操作系统中负责操纵和管理文件的一整套设施,
          他实现文件的共享和保护,方便用户“按名存取”。
文件系统的功能:     1、文件管理
                     2、目录管理
                     3、文件存储空间管理
                     4、文件的共享和保护
                     5、提供方便的接口
看待文件系统的观点:
                     1、用户观点
                     2、系统观点

2、文件的存储结构
涉及一个文件在存储设备上如何放置
取决于存储设备的物理特性,又与文件的存取方法密切相关
从逻辑上看所有文件都是连续的,但在存储介质上却不一定连续
基本文件的存储结构:连续文件:优点:顺序存取时速度较快,简单   适合存放系统文件
                              缺点:不便于文件的动态扩充
                                    建立文件时就须确定其长度   
                                    可能出现外部碎片              
                    串连文件:优点:克服了连续文件的缺点,磁盘利用率教高
                              缺点:不利于对文件随机存取
        连接字带来的麻烦
                    索引文件:克服了 串连文件缺点,文件读取快
                              缺点:索引表会占用很多内存空间
                    多重索引文件:具备索引文件的优点,又克服了其缺点
                                  用于unix
                              缺点:间接索引会影响存取的速度

3、文件目录及目录结构
文件控制块:   对文件进行控制、管理的数据结构
               每个文件有唯一的文件控制块
文件目录:是文件控制块的有序的集合
          其中的文件控制块是目录项
          完全由目录项构成的文件称为目录文件,简称目录
文件目录实现文件名与其存储盘块之间的映射

目录结构:单级目录结构:所有文件在一个目录下,造成重命名,和文件共享问题
          二级目录结构:一个主文件目录加上多个用户文件目录
          树形目录结构
          非循环图目录结构:链接:允许一个文件或目录登记在多个父目录中
                            即带连接的树形目录结构
常用的磁盘空闲管理技术:   1、空闲空间表法:所有连续的空闲盘块在空闲空间表中占据一项
                           2、空闲块链接法:所有的空闲盘块链接在一个队列中
                           3、位示图法
                           4、成组链接法:所有的空闲盘按固定的数量分组,组与组之间形成链接
4、文件共享和安全保护
文件的共享:系统允许多个用户(进程)共同使用某个或某些文件
共享方式:                 文件链结:给文件起别名,增加共享途径
                           文件的保护:指文件免遭由于文件或其他用户的错误操作而造成破坏
                           文件保密:未经文件主授权的用户不得访问该文件
保护机制通过限制文件存取的类型来实现受控共享
常用的保护机制:1、命名:用户只能存取自己建立的文件
                2、口令
                3、存取控制:根据用户身份,为他们规定不同的文件存取权限
文件系统的安全措施: 文件的后备和恢复
                         后备:把硬盘上的文件在其他外存介质上做一个副本
                               分为:全量转储,增量转储
7章  设备管理
1、设备管理的功能
监视设备状态:记住所有设备、控制器和通道的状态
进行设备分配:按照设备类型(独占、共享、虚拟)和系统所用分配算法,实施设备分配。由
              设备分配程序(或I/O调度程序)完成。
完成I/O操作:系统调用设备驱动程序
             后者启动设备,进行I/O操作
             处理来自设备的中断
缓冲管理与地址转换:系统对缓冲区进行管理
                    将程序中的逻辑设备转换成物理设备的地址,实现设备的无关性
2、缓冲技术
引入缓冲的目的:缓冲cpu与外设间的速度不匹配的矛盾
                提高cpu与外设之间的并行性
                减少对cpu的中断次数
缓冲区的设置: 1、单缓冲:数据到达率与离去率相差很大
               2、双缓冲:信息的输入和输出速率相同
               3、多缓冲:数据的输入和输出具有阵发性
           组成公用缓冲池
3、设备分配技术
其因素: I/O设备的固有属性(打印机只能输出)
         系统采用的分配算法
         应防止死锁的发生
         设备的无关性
其性能分:独占设备   打印机、磁带机
          共享设备:可由若干个进程同时共享的设备 如:硬盘
          虚拟设备:把独占设备改造成“感觉上”可共享的设备
分配技术:1、独占分配
          2、共享设备  系统调度各进程的访问次序
          3、 虚拟设备;利用共享设备去模拟独占设备,从而由多个进程公用 例如:硬盘虚拟打印机
              最有名的技术:spooling技术
          spooling技术将独占设备改造为共享设备,实现虚拟设备的功能。
                      由专门负责I/O的常驻内存的进程以及输入井、输出井(即硬盘)组成
                      由存输入,取输入
                        存输出,取输出构成             
4、I/O处理过程
1、用户I/O调用 2、转去执行操作系统的核心程序 文件操作=》设备的驱动程序
3、设备驱动程序工作     4、启动该设备的工作
5、I/O完成后,产生中断信号
相应的中断处理程序调用设备驱动程序处理下面的I/O请求 

8章 中断处理
1、一般中断处理过程
中断的概念:cpu对某个事件发出的反映 cpu以外的事件 区别于异常cpu本身故障
中断源:    引起发生中断的事件
中断请求:中断源请求
断点:发生中断而程序停止的地方
一般处理过程:1、中断响应-----硬件实施
                   中止当前程序的执行
                   保存断点信息pc ps寄存器的内容
                   转到相应的处理程序
              2、中断处理-----软件实施
                    保存现场:通用寄存器的内容
                    分析原因:根据中断源判定
                    处理中断
                    中断返回
2、系统调用简要实现过程  
系统调用:操作系统内核与用户程序,应用程序之间的接口
所有内核之外的程序都必须经由系统调用才能获得操作系统的服务 
不能作为命令使用     
9章 死锁
1、死锁的概念
问题的引出:日常生活中
            计算机系统中
多个进程循环等待它方占有的资源而无限期的僵持下去的局面
2、死锁的产生
产生的根本原因:1、资源有限且操作不当
产生死锁的必要条件:1、互斥的条件 :资源独占
                    2、不可抢占条件:不能强行的抢夺对方资源
                    3、占有且申请条件:资源分配并非一次到位
                    4、循环等待条件:构成环路
3、处理死锁的对策  
  1、预防:打破产生死锁的四个必要条件中的一个或几个
                         是排除死锁的静态策略 
                         1、资源预先分配策略 :打破了占有且申请条件
                                               运行前一次性分配资源 
                            造成资源浪费,降低了进程的并发性
                         2、资源有序分配策略: 打破了循环等待条件
                                               资源事先分类编号,按序分配
                            限制了进程对资源的请求 ,增加了系统的开销,资源的利用率下降        
                2、避免:排除死锁的动态策略
           在资源分配过程中,若预测有发生死锁的可能性,则加以避免
                         1、安全序列
                            系统是安全的,是指系统中的所有进程能够按照某种次序分配资源,并且依次的运行完毕。这样的进程序列
                3、检测,与恢复
   
4、进程资源分配图及示例      
10章
1、微内核的概念及其结构
是操作系统的小核心,它将各种操作系统共同需要的核心功能提炼出来,
形成微内核的基本功能
服务器:除内核以外操作系统的其他部分都被分成若干相对独立的进程
        每个进程完成一组服务,称为服务器进程
2、线程
3、网络操作系统
4、系统管理员的职责