精华内容
下载资源
问答
  • 2021-07-17 05:42:00

    503ee6376e867e9435e62cd62d0431ba.png

    操作系统的存储管理功能实际上是管理什么?

    操作系统的存储管理功能实际上是管理内存资源.

    操作系统的五大管理功能:

    (1)作业管理:包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等;

    (2)文件管理:又称为信息管理;

    (3)存储管理:实质是对存储“空间”的管理,主要指对主存的管理;

    (4)设备管理:实质是对硬件设备的管理,其中包括对输入输出设备的分配、启动、完成和回收;

    (5)进程管理:实质上是对处理机执行“时间”的管理,即如何将CPU真正合理地分配给每个任务。

    五大类型操作系统各自的特点分别是:

    (1) 批处理操作系统的特点有:a. 用户脱机使用计算机。用户提交作业之后直到获得结果之前就不再和计算机打交道。作业提交的方式可以是直接交给计算中心的管理操作员,也可以是通过远程通讯线路提交。提交的作业由系统外存收容成为后备作业。

    b.成批处理。操作员把用户提交的作业分批进行处理。每批中的作业将由操作系统或监督程序负责作业间自动调度执行。

    c.多道程序运行。按多道程序设计的调度原则,从一批后备作业中选取多道作业调入内存并组织它们运行,成为多道批处理。

    (2) 分时操作系统的特点有:a. 交互性:首先, 用户可以在程序动态运行情况下对其加以控制。其次,用户上机提交作业方便。第三,分时系统还为用户之间进行合作提供方便。

    b. 多用户同时性:多个用户同时在自己的终端上上机,共享CPU和其他资源,充分发挥系统的效率。

    c.独立性:客观效果上用户彼此间感觉不到有别人也在使用该台计算机,如同自己独占计算机一样。

    (3) 实时操作系统的特点有:a. 实时时钟管理(定时处理和延时处理)。

    b. 连续的人-机对话,这对实时控制往往是必须的。

    c.要求采取过载保护措施。例如对于短期过载,把输入任务按一定的策略在缓冲区排队,等待调度; 对于持续性过载,可能要拒绝某些任务的输入; 在实时控制系统中,则及时处理某些任务,放弃某些任务或降低对某些任务的服务频率。

    d.高度可靠性和安全性需采取冗余措施。双机系统前后台工作,包括必要的保密措施等。

    (4) 网络操作系统的特点有:a. 计算机网络是一个互连的计算机系统的群体。

    b. 这些计算机是自治的,每台计算机有自己的操作系统,各自独立工作,它们在网络协议控制下协同工作。

    c.系统互连要通过通信设施(硬件、软件)来实现。

    d.系统通过通信设施执行信息交换、资源共享、互操作和协作处理,实现多种应用要求。

    (5) 分布式操作系统的特点有:a.计算机网络的开发都遵循协议,而对于各种分布式系统并没有制定标准的协议。当然,计算机网络也可认为是一种分布式系统。

    b.分布式系统要求一个统一的操作系统,实现系统操作的统一性。

    c.分布式操作系统对用户是透明的。但对计算机网络,若一个计算机上的用户希望使用另一台计算机上的资源,则必须明确指明是哪台计算机。

    d.分布式系统的基础是网络。分布式系统已不仅是一个物理上的松散耦合系统,同时还是一个逻辑上紧密耦合的系统。

    e.分布式系统还处在研究阶段。而计算机网络已经在各个领域得到广泛的应用。

    更多相关内容
  • 存储管理的四大基本功能 1、内存分配与回收 当有作业进入系统时,存储管理模块就会根据当前内存情况来分配内存给它;当作业完成后,就会回收作业占用的内存,将这部分内存设置为可分配状态。 分配方式主要有两种: ...

    存储管理的四大基本功能

    1、内存分配与回收

    当有作业进入系统时,存储管理模块就会根据当前内存情况来分配内存给它;当作业完成后,就会回收作业占用的内存,将这部分内存设置为可分配状态。

    分配方式主要有两种:

    静态分配:作业在运行之前,已经明确所需内存的大小,并且一次性分配;作业在运行的时候,不可以重新申请或移动内存。

    动态分配:作业在运行期间,可以根据需要动态申请内存。比静态分配灵活,并且能够提高内存的利用率,避免因静态分配导致不必要的信息加载到内存中。

    2、地址重定位

    实现程序的逻辑地址和物理地址转换,并根据物理地址重定位到物理空间。

    程序中,基本都是用符号名来访问存储单元的。而符号名存储的是逻辑地址,而逻辑地址可以转化为物理地址,最后可以通过物理地址直接定位存储单元。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QpBvY0Ia-1629033009669)(https://camo.githubusercontent.com/2b4ffb6c70a5ce8c704db0e2a13e300a812052fe48545c6755cc732d69e1f46d/68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f706e672f42574c624b395067714b334339425a7a50366961696255365948477165724b4844375775306d4b6e69634d73696369634a6172356d4c554a363066784f6963436b33514c38576d435633704b366f49365752496157425563455055412f3634303f77785f666d743d706e672674703d7765627026777866726f6d3d352677785f6c617a793d312677785f636f3d31)]

    其中重定位一共有两种方式:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pYxeXIsU-1629033009674)(https://camo.githubusercontent.com/e5b9b373ed4880855cb3296d51b8494add41e3e0b2b2f15398a10d2fb88e84cf/68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f706e672f42574c624b395067714b334339425a7a50366961696255365948477165724b4844376c33433773725038566b79457056474b58726f4a524a4b777377464275723078723458436b537036345545347854514d6f53387177412f3634303f77785f666d743d706e672674703d7765627026777866726f6d3d352677785f6c617a793d312677785f636f3d31)]

    3、存储保护

    存储保护是为了防止程序越界访问、破坏其他程序或系统的存储区。较为普遍的存储保护方法是:硬件的界限存储器保护法,并且还分为两种实现方法。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QJ6gSARp-1629033009677)(https://camo.githubusercontent.com/a09cdf8110364b59c694a21f467c9cfb7e19bf855808896fcec2017fde902284/68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f706e672f42574c624b395067714b334339425a7a50366961696255365948477165724b48443751496575736143574e4477754d4e6a6962416f3166424d394955364b3832706f775968326962716d54775555674953335a4968426769616961512f3634303f77785f666d743d706e672674703d7765627026777866726f6d3d352677785f6c617a793d312677785f636f3d31)]

    4、虚拟存储

    程序的局部性分为:时间和空间的局部性。

    时间局部性:某条指令被执行,那么在不久的将来也会被再次执行。

    空间局部性:一旦程序访问某个存储单元的数据,那么不久的将来,这个存储单元附近的存储单元也可能会被访问。

    由于程序的局部性原理,很多数据没有必要全部加载到内存。因此就将那些不必要的数据暂存在外存中,等到需要的时候再调入到内存中。这部分外存就充当虚拟内存,也叫虚拟存储。

    展开全文
  • 存储管理功能

    万次阅读 2017-05-29 08:57:02
    存储管理功能 存储分配 存储共享 存储保护 存储扩充 地址映射 内存资源管理 内存分区 内存分配 静态等长分区的分配 动态异长分区的去配 紧凑 小结 存储管理功能 ...

    我是一个有强迫症的人,什么文件都要归类,电脑桌面干干净净的放着几个必要的文件夹,所有的文件对应有不同的文件夹存放,如果看到某个文件(只要不是临时存放的)出现在桌面上,就感觉非常刺眼。
    我就是这么管理电脑文件的,感觉…….没救了。

    存储管理的功能


    存储管理可不仅是对外部存储资源(如磁盘文件)进行的管理,也包括了对内存的管理。内外存的资源管理技术可以相同,也可以不同,但一般情况下,都采用相同的管理技术。

    存储管理主要是完成如下功能:存储分配存储共享存储保护存储扩充地址映射

    存储分配

    我们知道,当一个作业进入内存时,操作系统会将其转变为进程,同时为其分配存储空间以供运行,而进程运行结束时,操作系统将进程所占有的存储空间回收。

    一般的存储分配

    如果操作系统带有虚拟存储管理功能,那么进程运行过程中一部分存在于内存,另一部分存在于外存。如果外存部分进入内存,则撤销外存空间,分配内存空间,反之,操作相反。

    带虚拟存储管理的内存分配

    仅仅知道要这样分配还不够,操作系统得记录这些情况——内存与外存资源的使用情况,为此,操作系统设置了两个表用于记录这些信息:
    1. 分配表:记录已经分配的区域。
    2. 空闲表:记录未分配区域。

    存储共享

    多个进程共用内存中的相同区域。

    经常去吃烧烤的小摊儿上就一个老板在忙活,不管谁的串都是老板烤的,但如果老板雇佣很多人,然后不同客人的串分给不同的人去烤,那老板多轻松啊(但这赚的估计还不够老板发工资)。
    据说高档餐厅会为每个桌配一名侍者,不过我没去过就是了……

    我们之所以要进行存储共享,其一便是为了节约内存空间,不然多个进程同时需要使用一个程序资源时,还要为每个进程创建一个程序资源的副本,那内存就算再大也不够用啊(就像那个烧烤摊儿老板,赚的还不够给工人发的工资)。
    另一方面,使用存储共享也是为了方便进程通信,我们知道PV操作就需要公共的内存空间才能够实现。

    一般情况下我们需要共享的是代码和数据,共享代码是为了节约内存空间,而数据则是对应的方便进程通信(也能节约内存空间)。

    存储保护

    存储共享中我们提到了PV操作,那PV操作是为了限制多个进程出现同时进入临界区的情况所提出来的,也算是一种对共享变量的一种保护,不过在存储保护中这种保护则更甚一筹,即对于多个进程共享的存储区域的保护。
    存储保护主要包括以下两个方面:
    1. 防止地址越界
    这个比较容易理解,因为在我们写程序的时候也要注意的,一旦地址越界编译就会出错,无法通过,不过此时还能在编译失败时纠正。
    而在操作系统中,每个进程具有相对独立的进程空间,一旦其中一个进程运行时产生的地址出现在其自身的进程空间之外,此时发生了地址越界,如果侵犯了其他进程空间,就会影响其他进程的正常执行,假如侵犯的进程空间属于操作系统,就可能导致系统崩溃。
    2. 防止操作越权
    对于多个进程共享的存储空间,每个进程有自己的访问权限,如读,写,执行。如果该进程访问共享区域时违反了权限规定,就说这个进程发生了操作越权。
    一般我们选用硬件来提供存储保护,软件作为辅助。

    我们用Windows的时候,如果在系统盘里删一些东西,会有提示说需要提供权限,这就是说当前登录用户权限不够,不能做这种操作。

    存储扩充

    我们知道,cache是高速缓冲,读写速度仅次于寄存器,但是耐不住人家尊贵,如果直接使用cache作为存储器的话,我只能说:“土豪,交个朋友吧!”。
    当然了,这只是玩笑话,cache很贵,其次是内存很贵,再然后咱么所说的机械硬盘就是大街货了,便宜,容量都是以TB做单位的。
    所以为了省钱,也为了性价比,我们就提出了三级缓存,将cache,内存,还有外存有机的结合,形成一个容量大速度快的虚拟存储系统。

    三级缓存都是比较新的技术了,很多年前,还没有cache这个东西,只有内存和外存之说。

    三级缓存

    地址映射

    逻辑地址转换成物理地址的过程。
    完成地址映射的硬件机构称为存储管理部件(MMU)

    地址映射

    逻辑地址是相对的,因此可以被映射到物理地址的不同的位置,物理地址则是绝对的,一旦产生,便固定了,这对于程序的结构化和分层设计带来不便。
    之所以会使用逻辑地址,也是为了程序移植方便。

    内存资源管理


    内存分区

    对内存分区,可以是静态,可以是动态的,分区的大小可以是等长,也可以是异常的。
    所谓静态分区,则是在系统运行之前就将内存划分为若干区域,后期可以直接分配。

    但是,由于分配时只能对已划分好的分区进行选择,故很难出现正好合适的区域。

    动态分区与之对应,是在系统运行的过程中划分内存空间

    通常,按照进程所需存储空间的大小为其分配一个或多个区域。

    等长和异长听名字就知道了,就不废话了。
    一般情况下,我们都是使用静态等长动态异长的组合方式。

    内存分配

    静态等长分区的分配

    通常用于页式和段页式的存储管理方式,被静态的划分为等长区域,每个区域大小为2^iB,称之为页面
    分配与去配的表示方法:

    1. 位示图
      用1位(1bit)来表示一个页面状态,1表示被占用,0表示空闲。假设某个存储空间内忧n个页面:
      位示图

    2. 空闲页面表
      若干个连续的空闲页面作为一组登记在空闲页面表中,该表包含首页面号页面个数。这种分配方法能使一个进程的若干页面连续。
      空闲页面表

      页面首号是指一块连续空闲区的第一块空闲页面号,页面个数则是这块连续空闲区的页面总数。

    3. 空闲页面链
      所有的空闲页面连接成一个链表,分配时取链表头页面,去配(撤销)时将释放的页面连接到链表头。
      空闲页面链

      这种方法适用于内存页面的分配,对于外存,由于需要数据的传输,故而速度慢,不采用。

    动态异长分区的去配

    此种分区常用语界地址和段式存储管理方式。
    存储空间被划分为若干不等长区域,对此的管理采用空闲区域表,该表中记录所有当前未被进程占用的空闲区域。
    空闲区域表

    与空闲区域表相关的算法:

    1. 最先适应算法(First Fit)
      核心思想:对于存储申请命令,选取空闲区域表中满足申请长度,且起始地址最小的空闲区域。
      实现:空闲区域表中的首址按从大到小的次序依次被记录了,当进程申请存储空间时,系统从该表的头部开始查找,取满足要求的第一个表目项,对比长度,若空闲区域大于进程申请空间,进行分割,然后将与申请空间大小相同的空闲区分配给进程,将剩余部分保留在空闲区域表中(需要改变首址)。

      该算法尽可能的使用低地址,造成高地址空间形成较大空闲区,算是一个优点,但是对空闲区的分割又是一个缺点(假设某个空闲区本来刚好可以满足P1的空间申请,但是P2先提出了空间申请,致使空闲区被分割,如此P1的申请将无法被满足)。

    2. 下次适应算法(Next Fit)
      核心思想:从上一次分配空闲区域的下一个位置开始,选取第一个可满足的空闲区域。
      实现:用一个指针记录每次分配结束后的下一个位置。

      此算法不需要像FF算法一样,每次分配都要进行一次查询,减小了时间开销,使空闲区域分布的较为均匀,但依旧没有解决FF算法的缺点。

    3. 最佳适应算法(Best Fit)
      核心思想:分配时寻找满足空间申请并且长度是最小的空闲区域,这样就克服了FF算法的缺点。
      实现:空闲区域按地址由小到大的记录,然后从表头开始查找,过程与FF算法类似,只是多出了一项长度的比较。

      可以预见,BF算法克服了FF算法的缺点,不去分割大的空闲区,但是又可能会形成很小的无法使用的空闲区——碎片。

    4. 最坏适应算法(Worst Fit)
      核心思想:分配时取满足空间申请,并且长度最大的空闲区域。
      实现:按照空闲区域长度由大到小依次记录于空闲区域表中,进程申请空间时,取第一个满足要求的表目项。

      克服了BF的缺点,却保留了FF算法的缺点。

    一说到算法,马上就感觉高大上起来,但实际上…….
    FF算法,NF算法以及WF算法就是图个简单,实现起来省时省力又省心。只有BF算法比较麻烦些。

    我们研究算法的时候,是为了解决一个个的实际问题,总是需要先提出一个最简单的算法,然后发现算法的缺点,针对这个缺点进行算法的进一步改进,不断的重复这一个过程。
    要知道,没有一个粗胚,怎么能够雕刻出一件完美的作品呢?

    紧凑

    这是为了解决碎片问题而提出来的。
    这个方法就是想移动所有的已占有区域,然后将所有的空闲区域连成一块完整的空闲区。

    虽然只有简简单单的一句话,但是我们可以发现,想要实现这个方法,系统的开销非常大,所以尽量避免使用紧凑技术。
    那么,什么时候使用呢?
    只有在一个新的进程申请空间时,所有分散的的空闲区域都不能满足,但是其总和可以满足这个申请时使用杂凑技术。

    小结


    一个适合的存储管理方式,会大大增强系统的易用性。

    所以……我该怎么收尾呢?

    展开全文
  • 存储管理-存储管理功能

    千次阅读 2019-11-20 15:32:00
    存储管理-存储管理功能 存储器为什么比较重要? 存储器是计算机系统的重要资源之一。任何程序和数据以及各种控制用的数据结构都必须占用一定的存储空间,因此,存储管理直接影响系统性能。 存储器的组成 内存:存由...

    存储管理-存储管理的功能

    存储器为什么比较重要?

    存储器是计算机系统的重要资源之一。任何程序和数据以及各种控制用的数据结构都必须占用一定的存储空间,因此,存储管理直接影响系统性能。

    存储器的组成

    • 内存:存由顺序编址的块组成,每块包含相应的物理单元
    • 外存

    内存外存的信息交换式谁控制的?

    CPU控制相应的输入输出设备实现外存与内存信息的交换。

    C语言.c源程序文件变成.exe可执行文件的过程

    预编译->编译->汇编->链接

    预编译

    1.删除所有#define,展开所有宏定义;
    2.处理所有条件预编译指令,如#if,#ifdef,#elif,#else,#endif;
    3.处理#include预编译指令,将被包含的文件插入到该预编译指令的位置(该过程是递归进行的);
    4.删除所有注释(实际上是被替换为一个空格);
    5.添加行号和文件名标识;
    6.保留所有#pragma编译器指令。

    编译过程

    (编译之后生成.s文件)将预处理完的文件进行一系列的词法分析,语法分析,语义分析以及优化产生相应的汇编代码文件。

    汇编过程

    汇编之后生成.o文件,可重定位目标文件)将汇编代码转化成机器可以识别的指令。

    链接过程(重要的步骤,涉及地址和空间的分配)

    (链接之后生成.exe文件,可执行目标文件)合并多个可重定位目标文件生成可执行目标文件,需要完成的工作包括:地址和空间的分配;符号决议;重定位。
    1734701-20191120144625108-1063810418.png

    虚拟存储器

    为什么要有虚拟存储器?

    内存虽然访问速度快,但是太小了,而外存访问速度慢但是好处是空间大。引出问题,怎么相互弥补一下呢?不经常访问的数据和程序放到外存中去,只有在需要的时候才调入内存中。

    虚拟存储器是干什么用的?

    1.当物理内存不够用的时候,在硬盘上也就是外存开辟一块空间当内存用,但是这块内存不是内存条提供的,所以叫虚拟内存。
    例子:玩游戏的时候,你电脑内存1G,如果没有虚拟内存的话是没办法玩的,但是有了虚拟内存就可以玩了

    2.执行程序尽管向操作系统申请内存,而不管内存够不够用,好像有无限的内存一样

    3.编译链接程序
    什么是编译链接程序?源程序要由编译程序编译成CPU可以执行的代码,链接程序要把一个进程的不同程序段链接起来来让程序跑起来.
    1734701-20191120145415317-1030949311.png

    4.为进程提供虚拟空间

    虚拟存储器的定义

    进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存储器(virtual store或virtual memory)。

    虚拟存储器的特点

    1.虚拟存储器不考虑物理存储器的大小和信息存放的实际位置,只规定每个进程中互相关连信息的相对位置
    2.每个进程拥有自己的虚拟存储器,且虚拟存储器的容量由计算机的地址结构和寻址方式确定的,直接寻址时,如果CPU的有效地址长度为16位,则其寻址范围为0到64K
    3.要实现虚拟存储器到物理存储器的变换,必须有相应的硬件支
    4.每个进程都拥有自己的虚存,且每个虚存的大小不受实际物理存储器的限制
    5.内存只能存放经常被访问的程序和数据段,访问或在某一段时间内不会被访问的信息。进程执行过程中需要这些信息时,从外存中自动调入主存

    地址变换

    虚拟地址映射到物理地址涉及两个问题一个是分区问题,一个是虚拟空间的划分,另外一个是地址映射

    虚拟空间的分区

    虚拟空间的划分与计算机系统结构有关。一般划分为系统空间和进程空间两个部分,进程空间分为程序区和控制区
    1734701-20191120150914618-575782817.png

    地址映射

    把虚拟空间中已链接和划分好的内容装入内存,并将虚拟地址映射为内存地址

    静态地址重定位

    静态地址重定位在虚拟空间程序执行之前由装配程序完成地址映射工作

    特点:

    • 对于虚拟空间内的指令或数据来说,静态地址重定位只完成一个首地址不同的连续地址变换
    • 所有待执行的程序必须在执行之前完成它们之间的链接

    优点:不需要硬件支持。
    缺点:无法实现虚拟存储器;必须占用连续的内存空间,并且难以做到程序和数据的共享。

    动态地址重定位

    动态地址重定位在程序执行过程中,在CPU访问内存之前,将要访问的程序或数据地址转换成内存地址。

    特点:动态重定位依靠硬件地址变换机构完成

    优点:

    • 可以对内存进行非连续分配
    • 动态重定位提供了实现虚拟存储器的基础
    • 有利于程序段的共享

    地址重定位机构需要一个(或多个)基地址寄存器BR和一个(或多个)程序虚拟地址寄存器VR。指令或数据的内存地址MA与虚拟地址的关系为:MA=(BR)+(VR)
    1734701-20191120151504786-1170651639.png

    内外存数据传输控制

    目的

    实现内存扩充

    过程

    内存和外存之间必须经常地交换数据,即将执行的程序和数据段调入内存,处于等待状态的程序和数据段调出内存

    基本控制方法

    用户自己控制:

    覆盖:
    1.要求用户清楚地了解程序的结构,并指定各程序段调入内存的先后次序
    2.覆盖技术不能实现虚拟存储器

    操作系统控制

    交换(swapping)方式

    1.交换方式由操作系统把那些在内存中处于等待状态的进程换出内存,而把那些等待事件已经发生、处于就绪态的进程换入内存
    2.交换方式一般不进行部分交换,每次交换除去常驻内存部分后的整个进程
    3.交换方式能完成内存扩充任务,但不能实现进程大小不受内存容量限制的虚拟存储器

    请求调入(on demand)方式和预调入(on prefetch)方式

    请求调入方式是在程序执行时,如果所要访问的程序段或数据段不在内存中,则操作系统自动地从外存将有关的程序段和数据段调入内存

    预调入由操作系统预测在不远的将来会访问到的程序段和数据段部分,并在它们被访问之前选择适当的时机调入内存

    请求调入方式和预调入方式可以实现进程大小不受内存容量限制的虚拟存储器

    内存的分配与回收

    存储管理模块要为每一个并发执行的进程分配内存空间。另外,当进程执行结束之后,存储管理模块要及时回收该进程所占用的内存资源,以便给其他进程分配空间

    策略:

    (1) 分配结构:登记内存使用情况,供分配程序使用的表格与链表。例如内存空闲区表、空闲区队列等。

    (2) 放置策略:确定调入内存的程序和数据在内存中的位置。这是一种选择内存空闲区的策略。

    (3) 交换策略:在需要将某个程序段和数据调入内存时,如果内存中没有足够的空闲区,由交换策略确定内存中的哪些程序段和数据段调出内存,以便腾出足够的空间。

    (4) 调入策略:外存中的程序段和数据段什么时间按什么样的控制方式进入内存。调入策略与内外存数据交换的控制方式有关。

    (5) 回收策略:回收策略包括两点,一是回收的时机,二是调整回收空闲区和已存在空闲区。

    内存信息的共享与保护

    共享

    在多道程序设计环境下,内存中的许多用户或系统程序和数据段可供不同的用户进程共享。这种资源共享将会提高内存的利用率

    保护

    内存信息保护方法有硬件法、软件法和软硬件结合三种:

    上下界保护法是一种常用的硬件保护法

    为每个进程设置一对上下界寄存器,分别放置被保护程序和数据段的起始地址和终止地址。
    程序执行过程中,对内存进行访问操作时首先进行访址合法性检查,即检查重定位后的内存地址是否在上、下界寄存器规定的范围之内。
    在规定的范围之内,访问是合法的;否则是非法的,并产生访址越界中断。

    1734701-20191120152843274-1268988512.png

    保护键法也是一种常用的存储保护法
    为每一个被保护存储块分配一个单独的保护键。在程序状态字中设置相应的保护键开关字段,不同进程赋予不同的开关代码与被保护的存储块中的保护键匹配。保护键可设置成对读写同时保护或只对读、写进行单项保护。

    保护键0对2K到4K的存储区进行读写同时保护的,保护键2对4K到6K的存储区进行写保护。

    如果开关字与保护键匹配或存储块未受到保护,则访问该存储块是允许的,否则将产生访问出错中断。

    1734701-20191120152901770-1133045141.png

    界限寄存器与CPU的用户态或核心态工作方式相结合的保护方式

    在这种保护模式下,用户态进程只能访问界限寄存器规定范围内的内存部分,核心态进程可以访问整个内存地址空间

    展开全文
  • 简述操作系统的基本功能是什么?

    千次阅读 2021-07-12 01:58:08
    操作系统的五大管理功能: (1)作业管理:包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等; (2)文件管理:又称为信息管理; (3)存储管理:实质是对存储“空间”的管理,主要指对主存的管理; (4)...
  • C语言模拟实现虚拟存储管理(请求分页存储管理

    千次阅读 多人点赞 2020-06-25 23:19:08
    C语言模拟实现虚拟存储管理(请求分页存储管理)使用FIFO算法 一、实验目的 存储管理的主要功能之一是合理的分配空间。请求分页存储管理是一种常用的虚拟存储管理技术。本实验的目的是:通过编程模拟实现请求分页...
  • 操作系统储存管理功能

    千次阅读 2019-05-12 11:32:59
    Windows虚拟内存 Windows虚拟地址空间分配 在32位的机器上,地址空间从0x00000000~ 0xFFFFFFFF,总大小为4GB...功能 0x00000000 ~ 0x0000FFFF 这段内存为空指针区,不可以同时访问 0x00010000 ~......
  • 通过编程模拟实现操作系统存储管理的基本功能,包括分区存储管理、分页存储管理,段式存储管理和段页式存储管理等机制的基本思想。对于每种管理方式,要求显示出存储空间的分配和回收的执行情况;地址空间的重定位的...
  • Android Studio实现功能丰富的仓库管理系统

    千次阅读 多人点赞 2021-07-01 21:42:06
    本次项目实现了一个简单的仓库管理系统。用户身份分为超级管理员、出入库人员和商品管理员这三种角色。首先进行超级管理员的注册,然后登录超级管理员的账号和密码,进入主页之后进行添加用户,超级管理员可以添加和...
  • 操作系统——存储器管理功能

    千次阅读 2020-08-27 09:35:06
    一. 内容总览 二. 内存空间的分配和回收 1. 单一连续分配方式 2. 固定分区分配 ...操作系统怎么记录内存中各个分区的占用或者空闲的情况呢?...三....3. 虚拟存储技术 四. 地址转换 五. 存储保护 ...
  • 分页式存储(C语言实现

    千次阅读 2020-11-30 19:18:29
    分页式存储(C语言实现) 分段允许进程的物理地址空间是非连续的。分页是提供这种优势的另一种内存管理方案。然而,分页避免了外部碎片和紧缩,而分段不可以。 不仅如此,分页还避免了将不同大小的内存块匹配到交换...
  • 计算机是如何实现数据存储

    千次阅读 2020-08-05 17:18:33
    1.计算机底层存储实现概述 计算机的工作是基于二进制原理进行的,计算机内部所存储的信息都是用二进制;来记录和表示的。 实现原理: 计算机的存储器使用半导体集成电路构成的,它包括几亿个小的脉冲单元(二极管...
  • 操作系统管理功能有哪几种

    千次阅读 2021-07-13 01:15:00
    操作系统最重要的功能就是对内存、用户、设备等的管理了,那么管理功能具体是怎样完成的呢。下面由学习啦小编为大家整理了操作系统的五大管理功能的相关知识,希望对大家有帮助!操作系统五大管理功能系统是管理和...
  • 分页存储方式管理模拟 C++实现

    千次阅读 2019-12-25 16:25:26
    设计要求:设计一个简单分页存储管理系统,要求实现以下功能。 (1) 定义分页的地址结构和页表结构。 (2) 对进程的逻辑地址空间、页表起址、给定的逻辑地址进行初始化。 (3) 实现从逻辑地址到物理地址的变换。 ...
  • c#实现简单学生信息管理系统

    万次阅读 多人点赞 2019-06-06 21:40:37
    二、主要功能 登录、添加学生信息、修改学生信息、删除学生信息、查询学生信息 三、实现步骤 1、登陆界面功能实现 老规矩,先贴下主要代码: //构造方法 public Login() { InitializeComponent(); this.label...
  • 摘 要 随着我国服务行业水平的不断提高,家政服务者和客户之间的信息互通和管理是既重要又复杂的系统工作。传统家政服务工作方式已无法满足现代信息...以及HTML等技术来实现家政服务信息化管理的基本功能。系统主要功能
  • 本次毕业设计根据学生在校的基本情况,分析现状各个学校的基本需求情况,进行设计的一款学生成绩管理系统,通过本系统可以方便的管理学校的基本情况,包括院系管理,考试成绩管理等等,基本情况的管理。本次设计包括...
  • 功能实现学生信息管理。包括:录入、查询、排序等功能。 要求: 用数据文件保存学生基本信息(学号 姓名 课程1 课程2 课程3…) ,利用菜单可以循环实现各个功能。 进一步要求*: (1) 能够实现增加、删除、修改功能...
  • 实现原理:将学生对象存入集合中(把集合作为临时数据库),然后通过对集合中学生对象进行操作,实现功能。 一、创建学生类(class Student) 二、创建管理系统的接口(interface MangerStore) 管理系统接口中...
  • 存储管理

    千次阅读 2020-04-06 00:01:12
    存储管理的主要模式、功能、虚存、硬件支持。 单连续/可变分区存储管理 页式/段式/段页式存储管理
  • 基于JavaSpringMvc+mybatis实现学生信息管理系统

    万次阅读 多人点赞 2021-10-13 21:40:17
    使用Shiro权限管理框架,实现登录验证和登录信息的储存,根据不同的登录账户,分发权限角色,对不同页面url进行角色设置。 管理员可对 教师信息、学生信息、课程信息 进行 增删改查 操作,管理员账户,可以重置非...
  • 操作系统存储管理

    万次阅读 多人点赞 2021-10-24 09:11:23
    目录 - 3.1 内存的基础知识 - 3.1.1 什么是内存,有何作用 - 3.1.2 进程运行的基本原理 - 3.2 内存管理的概念 ... - 3.3 覆盖与交换 ... - 3.4 连续分配管理... - 3.10 基本分段存储管理方...
  • 管理员能够进行的操作有3项(查看、修改、退出), 我们可以采用(switch)菜单的方式来完成。 -------------库存管理------------ 1.查看库存清单 2.修改商品库存数量 3.退出 请输入要执行的操作序号...
  • 评论功能实现

    千次阅读 2020-06-08 09:18:04
    本篇将博客主要是介绍如何实现文章的评论功能,已经对评论功能的优化处理。 1 评论功能分析 对于一条评论: 有可能是第一条对于文章的评论; 有可能是子评论(也就是回复); 评论中是否存在敏感词汇; 评论下方有...
  • A、利用分布式文件系统、数据仓库、关系数据库等实现对结构化、半结构化和非结构化海量数据的存储管理 B、利用分布式并行编程模型和计算框架,结合机器学习和数据挖掘算法,实现对海量数据的处理和分析 C、构建...
  • nodejs 普通用户和管理功能实现

    千次阅读 2019-02-13 11:02:55
    //我们要实现这个功能,需要在模型中新增一个字段 var mongoose = require("mongoose"); //定义用户的表结构,并对外提供接口 module.exports = new mongoose.Schema({ //用户名 username: String, //...
  • 可选择充值金额,由于我们这里没有开通微信支付,所以这里是模拟支付,如果想实现微信支付,需要用营业执照注册一个企业小程序,并且要开通微信支付。如果想实现真实支付,可以找石头哥定制改造。 9,充值记录 10...
  • 前几天用集合作为临时容器写了一个简单的学生管理系统,但是毕竟数组不能真正作为数据库来长期存储,所以这次我就用MySQL数据库作为数据库来存数据,用java中jdbc来操作数据库。 工具:STS,MYSQL数据库。 实现...
  • Javaweb图书管理系统的设计与实现(含毕业设计)

    千次阅读 多人点赞 2021-04-22 22:16:11
    第1章 绪论 1 1.1课题背景 1 1.2研究目的和意义 1 1.3研究目标 2 1.4论文安排 2 第2章 相关技术和理论基础 3 ...3.3.1管理管理 9 3.3.2会员管理 9 第4章 系统概要设计 10 4.1系统总体设计 10 4.2系
  • 用JavaSE+数据库实现的合作版图书馆管理系统,适合学习完JavaSE和数据库的初学者两人合作练习的小项目。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,009,915
精华内容 403,966
关键字:

存储管理应实现的功能是