sisterofdc

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

为什么要配置层次存储器?
因为计算机运行时,每一条指令都有对储存器的访问
存储器需要非常快,大容量,价格非常便宜

哪几种方式装入内存,分别使用哪种场合?
1.绝对的装入
计算机系统很小,只能运行单道程序的时候。会完整的编译出物理地址
2.可重定位装入系统
多道程序环境下,根据内存的具体情况装入模块到内存的适当的位置
通常把目标程序中指令和数据地址修改过程叫重定位。如果地址变化是一次完成的以后不变,称为静态重定位
3.动态运行的装入方式
在多道程序西安,将程序装入到内存中任何允许的位置
在程序真正执行的时候才进行地址转换,需要重定位寄存器。

何为静态链接?静态链接需要解决的问题?
(编译后目标模块,需要库函数。链接就是把目标模块和库函数链接变成装入模块)
在程序运行之前,先将各目标模块所需要的库函数链接成完整的装配模块
1.相对地址进行修改
2.变换外部调用符号

装入动态链接?有什么优点?
一边装入一边链接。发生一个外面模块调用。才去找
优点:实现对目标模块的共享

运行动态链接?有什么优点?
在模块的链接推迟到程序执行时。
优点,因为直接装入,加快程序装入过程,节省内存空间

在动态分区分配方式,将各个分区链接成空闲分区链?
在每一个分区的起始部分设置一下用于控制分区的信息,和链接分区的前后指针。状态由0 变成1

为什么要引入动态重定位,任何实现?
因为在动态装入的方式中,作业在装入后所有的地址仍然是相对(逻辑)地址。把相对地址转换为物理地址的工作。推迟到程序执行时执行
增加一个重定位寄存器。存放程序在内存中的起始地址,绝对地址就是相对地址和重定位寄存器中的地址

什么是基于顺序搜索的动态分区分配算法?它可分为哪几种?优缺点?
1.首次适应(first fit FF)从头找
优点,利用低位地址,保留高位地址。可以为大作业保留空闲区
缺点,产生大量不可利用的碎片
2.循环首次适应(next fit NF)从上一次的结束开始找
优点,减少开销
缺点,缺乏大的分区
3.最佳适应(best fit BF)每次都找最小的
容易留下大量碎片
4.最坏适应(worst fit WF)每次都找最大的
适合中小作业

什么是基于索引搜索的动态分区分配算法?它分为哪几种
1.快速适应
直接把空闲分区进行分类管理。
匹配到能容纳它的最小空闲区链表,直接整个分配,不用分割。
优点效率高,没有碎片
缺点算法复杂,归还分区系统开销大。空间换时间
2.伙伴系统
内存块与伙伴块的区别
3.哈希算法
直接把空闲分区大小为哈希表
找就是直接哈希函数进去找

剩下的内容。分页和段页存储,虚拟储存器,算法和计算

posted on 2023-02-27 01:06  SistersOfDC  阅读(7)  评论(0编辑  收藏  举报