三、操作系统知识(2)

3.存储管理

对象:主存(内存)

存储器:计算机系统中关键性资源信息存储的主要场所。

  主要功能:分配、回收主存空间;提高主存的利用率;存信息实现有效保护(主)

  发展方向:高速、大容量、小体积

  

  虚拟地址:即,相对地址、程序地址、逻辑地址、符号地址、名地址

  名空间——(汇编或编译,链接编辑程序加工)>逻辑地址空间(相对地址空间)——(地址再定位)>物理地址空间(绝对地址空间)

  存储空间:逻辑地址空间(地址空间)、物理地址空间(存储空间);地址的集合

  地址重定位:逻辑地址变换为主存物理地址

    解决可执行文件中地址(指令、数据)与主存地址的对应关系

    由装入程序Loader、地址重定位机构完成

    分类:

    1.静态重定位:loader完成,无需地址重定位机构支持。执行期间不发生变化。缺点:分配连续的存储区域;执行期间不能扩充存储空间,不能再主存中移动;难以空想主存中同一程序的副本和数据。

    2.动态重地位:换入、换出主存,解决主存紧张;在主存中移动,碎片集中,充分利用空间;利用小的主存块,不必分配连续的空间;共享

  存储管理:

    目的:解决多用户使用主存问题

    必须为每个作业分配足够的空间,以便装入全部信息。当主存空间不能满足作业要求,作业便无法装入主存执行。

    分类:

    1.分区存储:主存的用户区分成若干个区域,每个区域分配给一个用户作业使用。

      (1)固定分区:系统生成时划分的,大小可不等。已分配区中存在未使用空间。

      (2)可变分区:作业装入时进行,个数可变,分区大小等于作业大小。最佳适应算法、最差适应算法、首次适应算法、循环首次适应算法。不断分配、回收,产生了外碎片。

      (3)重定位分区:移动所有已分配好的去,使之成为连续的分区。解决碎片问题

    分区保护的目的:防止未经审核的用户访问分区。

      上界/下界寄存器保护、基址/限长寄存器保护

    2.分页存储

    优点:分页过程由操作系统完成,对用户透明,用户不必关心分页过程

    缺点:不易实现共享

      (1)纯分页:进程地址空间划分为若干大小相等的区域,称为页;将主存空间划分成与页相同大小的若干个物理块,称为块、页框。将进程的每一页离散地分配到主存的多个物理块中。

      

      页表:保证在主存中找到每个页面所对应的物理块。实现从页号到物理块号的地址映射。

      地址映射:至少访问两次主存。1.得到数据物理地址;2.存取数据,若数据是间接地址,还需要再次变换

      

      地址变换机构:利用页表把用户程序中的逻辑地址变换成主存中的物理地址(将用户程序中的也好变换成主存中的物理块号)。页表寄存器->物理地址寄存器,或越界中断

      快表:小容量的联想存储器,由一组快速存储器组成。保存当前访问频率高的少数活动页的页号、相关信息。

        根据数据所在逻辑页好在联想存储器中找出对应的物理页号。查找联想存储器、查找主存页表是并行进行的。一旦在联想存储器中找到相符的逻辑也好,就停止查找主存页表

      两级页表机制:为了减少页表所占用的连续内存空间

        每个进程页表占用主存空间是连续的,如果页表占用大,则连续并不现实。

        原理:将页表进行分页。每页大小与主存物理块大小相同,离散地将各个页面分别存放在不同的物理块中。外层页表:第一级页表,存放某个页表的物理地址;第二级页表:存放页的物理块号。

        

    3.分段存储管理:作业的地址空间被划分为若干个段,每段是一组完整的逻辑信息。(主程序段、子程序段、数据段、堆栈段……)每段分配一个连续的分区,进程中的各段可以离散地分配到主存的不同分区中。

    优点:易于实现段共享,对段的保护很简单。

    

      段表:为每个进程建立一张段映射表。逻辑段->物理主存

      

      

    4.段页式存储:

    具有分页系统有效提高主存利用率的优点,又具有分段系统能很好满足用户需要的长处。

    先将整个贮存划分成大小相等的存储块(页架),将用户程序按程序的逻辑关系分为若干段。每段分为若干页,以页架为单位离散分配。

    

    系统中必须同时配置段表、页表

    

  虚拟存储管理:

  作业只部分装入主存便可开始启动运行,其余部分暂时留在磁盘上,需要时再装入主存。

  优点:可有效地利用主存空间。从用户角度看,系统所具有的主存容量比实际主存容量大的多。

  程序局部性原理:程序执行时呈现出局部性规律(在一段时间内,程序的执行仅局限于某个部分,所访问的存储空间也局限在某个区域)。

    表现:时间局限性(循环操作)、空间局限性(顺序执行)

  虚拟存储器:

    功能:请求调入、置换

    仅把作业的一部分装入主存便可运行作业,能从逻辑上对主存容量进行扩容

    逻辑容量:由主存、外存容量之和;CPU可寻址的范围来决定。运行速度接近于主存速度,成本低。

    分类:

    1.请求分页系统:

    2.请求分段系统

    3.请求段页式系统

      

    

时间: 2024-11-06 18:22:07

三、操作系统知识(2)的相关文章

三、操作系统知识

1.基础知识 软件分类:应用软件.系统软件 操作系统 作用:1.通过资源管理(CPU管理.存储管理.设备管理.文件管理),提高计算机系统的效率. 2.改善人机界面,向用户提供友好的工作环境. 特征:并发性.共享性.虚拟性.不确定性 功能: 1.处理机管理(进程控制.进程同步.进程通信.进程调度) 2.文件管理,即信息管理(存储空间管理.目录管理.读写管理.存取管理) 3.存储管理(分配与回收.存储保护.地址映射.贮存扩充) 4.设备管理(分配.启动.完成.回收) 5.作业管理 接口:系统命令级接

三、操作系统知识(3)

6.作业管理 作业: 系统为完成一个用户的计算任务.事务处理所做的工作总和. 组成:程序.数据.作业说明书(作业基本情况.作业控制.作业资源要求的描述.体现了用户的控制意图). 状态:提交.后备.执行.完成 作业管理程序:操作系统中用来控制作业进入.执行.撤销的一组程序. 作业控制: 1.脱机控制方式:无须人工干预.用作业控制语言(JCL)编成作业说明书,联通作业一同提交给计算机系统. 2.联机控制方式:需要人工干预.操作系统提供了一组联机命令,用户通过终端输入命令将意图告诉计算机来口昂之作业的

操作系统知识梳理2-哲学家就餐问题

本文非原创,转载地址:http://blog.csdn.net/ikikray/article/details/4042922 1. 哲学家进餐问题: (1) 在什么情况下5 个哲学家全部吃不上饭? 考虑两种实现的方式,如下: A. 算法描述: void philosopher(int i) /*i:哲学家编号,从0 到4*/ { while (TRUE) { think( ); /*哲学家正在思考*/ take_fork(i); /*取左侧的筷子*/ take_fork((i+1) % N);

Linux操作系统知识

1.常见的Linux发行版本都有什么?你最擅长哪一个?它的官网网站是什么?说明你擅长哪一块? 答: 常见的Linux发现版本有Redhat.Centos.Debian.Ubuntu.Suse 最擅长Redhat和Centos Redhat官网:www.redhat.com Centos官网:www.centos.org 我最擅长Linux基本命令操作及相关服务搭建 2.Linux开机启动流程详细步骤是什么?系统安装完,忘记密码如何破解? 答: 开机步骤由a--h a.首先是bios加电自检.初始

操作系统知识梳理1-概述及进程管理

1. 概述 计算机体系结构图:(CPU,memory,devices) 指令:操作码,操作数 OS作用:管理各部件:为上层的应用软件提供一个易于理解和编程的接口 历史:1950s,无操作系统,卡片:60s,单道批处理,出现了通道技术和中断技术:70s,多道批处理,任务并行执行:70s后,分时系统,多个用户连接同一台计算机: 类型:批处理:分时操作系统:实时操作系统(工业控制,军工产业):嵌入式操作系统:个人PC:分布式操作系统: OS需要的硬件特性: a. 受保护的指令(只有OS才有权限):IO

操作系统知识(4)--Linux 用户和用户组管理

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也可以帮助用户组织文件,并为用户提供安全性保护. 每个用户账号都拥有一个惟一的用户名和各自的口令. 用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录. 实现用户账号的管理,要完成的工作主要有如下几个方面: 用户账号的添加.删除与修改. 用户

常用的操作系统知识

为什么要有操作系统 现代计算机系统是由一个或者多个处理器,主存,磁盘,打印机,键盘,鼠标显示器,网络接口以及各种其他输入,输出设备组成的复杂系统,每位程序员不可能掌握所有系统实现的细节,并且管理优化这些部件是一件挑战性极强的工作.所以,我们需要为计算机安装一层软件,成为操作系统,任务就是用户程序提供一个简单清晰的计算机模型,并管理以上所有设备. 定义也就有了:操作系统是一个用来协调.管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用程序之间.(程序是运行在系统上的具有某种功能的软件,比如

操作系统知识

操作系统之页面替换算法 (1)最佳置换算法(OPT) :选择以后不再使用或在最长时间内不再被访问的内存页面予以淘汰.OPTimal replacement (2)先进先出置换算法(FIFO):选择最先进入内存的页面予以淘汰. (3)最久未使用淘汰算法(LRU):选择在最近一段时间内最久没有使用过的页,把它淘汰.least recently used (4)最不经常使用淘汰算法(LFU):选择到当前时间为止被访问次数最少的页转换. least frequently used

操作系统知识(7)--Shell(2)

Shell 传递参数 我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推-- 实例 以下实例我们向脚本传递三个参数,并分别输出,其中 $0 为执行的文件名: #!/bin/bash echo "Shell 传递参数实例!"; echo "执行的文件名:$0"; echo "第一个参数为:$1"; echo "第二个参数为:$