0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

5个存储管理中非常重要的概念

xCb1_yikoulinux 来源:一口Linux 作者:一口Linux 2022-07-01 11:34 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

(一)用户程序的地址空间

内存也称主存,是指CPU能直接存取指令和数据的存储器,是现代计算机系统进行操作的中心

外存也称辅存,是指一些外部的存储设备,例如硬盘、软盘和磁带等存储器。用户的程序和数据,通过I/O系统接口,从外部设备中读到内存中才能运行。

07269ad0-e872-11ec-ba43-dac502259ad0.png

图 内存在计算机系统中的地位

典型存储器层次结构

按照速度、容量和成本划分,存储器系统构成一个层次结构,如下图所示。

07505136-e872-11ec-ba43-dac502259ad0.jpg

图4-2 典型的存储器层次结构

请思考:我们平时常用的便携存储器,如光盘、U盘、活动硬盘等,它们属于内存还是外存,存取速度处于哪个层次呢?

用户程序的地址空间

想一想:用户源程序进入系统到在机器上运行要经历如下5个步骤,请为他们排序吧。

A.链接B.编译C.运行D.装入E.编辑

(二)重定位的概念

在这一部分,我们要进一步学习5个存储管理中非常重要的概念。

逻辑地址:用户程序的目标模块都以0为基地址顺序编址的,这种地址称为逻辑地址,也称为相对地址。

物理地址:内存中各物理存储单元的地址是从统一的基地址开始顺序编址的,这种地址称为物理地址,也称为绝对地址。

逻辑地址空间:由程序中逻辑地址组成的地址范围叫做逻辑地址空间,或简称为地址空间。

物理地址空间:由内存中一系列存储单元所限定的地址范围称作物理地址空间,或简称为物理空间,内存空间。

重定位:程序和数据装入内存时,需对目标程序中的地址进行修改。这种把逻辑地址转变为内存物理地址的过程称作重定位。

076bdf96-e872-11ec-ba43-dac502259ad0.jpg

图 重定位示意图

对程序进行重定位的技术按重定位的时机可分为静态重定位和动态重定位两种。

(1)静态重定位

静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。静态重定位的时机是在程序装入时一次完成,在程序运行期间不再进行重定位。

07b7f340-e872-11ec-ba43-dac502259ad0.jpg

静态重定位

(2)动态重定位

动态重定位是在程序执行期间,每次访问内存之前进行重定位。动态重定位靠硬件地址转换机构实现。

07dd1d00-e872-11ec-ba43-dac502259ad0.jpg

动态重定位

(三)对换技术

对换技术也称作交换技术,它的实现方式就类似于日常生活中几个单位租用一个会议厅那样,甲单位租用时间到了,就退出会议厅,由乙单位使用;乙单位到时后,也退出去,由丙单位使用,等等。如甲单位还需使用,就再租用,由管理者安排占用时间。

在多道程序环境中可以采用对换技术。此时,内存中保留多个进程。当内存空间不足以容纳要求进入内存的进程时,系统就把内存中暂时不能运行的进程(包括程序和数据)换出到外存上,腾出内存空间,把具备运行条件的进程从外存换到内存中。在UNIX/Linux系统中对内存的管理就利用了这种多道程序的对换技术,如图4-6所示。

082fe71a-e872-11ec-ba43-dac502259ad0.jpg

对换两个进程

原文标题:存储管理 -地址空间与重定位

文章出处:【微信公众号:一口Linux】欢迎添加关注!文章转载请注明出处。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    39

    文章

    7715

    浏览量

    170869
  • 硬盘
    +关注

    关注

    3

    文章

    1355

    浏览量

    59576
  • 计算机
    +关注

    关注

    19

    文章

    7764

    浏览量

    92692
  • 存储管理
    +关注

    关注

    0

    文章

    31

    浏览量

    9571

原文标题:存储管理 -地址空间与重定位

文章出处:【微信号:yikoulinux,微信公众号:一口Linux】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    为什么过压、过流和短路保护在电源中非常重要

    可靠的工业电源不仅对供电至关重要,而且还能保护自身及其负载免受过压、过流和短路条件的损害。在本文中,我们将探讨这些保护机制的重要性,并重点介绍 RECOM RACPRO1 系列 DIN 导轨电源
    发表于 08-25 15:21 900次阅读
    为什么过压、过流和短路保护在电源<b class='flag-5'>中非常重要</b>?

    入行嵌入式应该怎么准备?

    架构、总线协议和存储管理概念的理解也是必不可少的。 三、操作系统嵌入式系统通常需要运行一实时操作系统(RTOS)或者一精简版的操作
    发表于 08-06 10:34

    TPS2549-Q1 具有压降补偿功能的汽车 USB 充电端口控制器数据手册

    TPS2549-Q1 器件是一 USB 充电端口控制器和电源开关,具有电流感应输出,能够控制上游电源。这使得它能够在 USB 端口上保持 5 V 电压,即使 大充电电流。这在具有长 USB 电缆的系统中非常重要,因为在为
    的头像 发表于 05-23 11:07 542次阅读
    TPS2549-Q1 具有压降补偿功能的汽车 USB 充电端口控制器数据手册

    为什么仿真对于自动驾驶来说非常重要

    [首发于智驾最前沿微信公众号]自动驾驶仿真是当前自动驾驶技术研发与验证体系中不可或缺的重要环节。它通过构建虚拟的道路场景、车辆动力学模型以及传感器感知环境,实现对自动驾驶系统在各种复杂工况下的功能
    的头像 发表于 05-23 09:13 597次阅读
    为什么仿真对于自动驾驶来说<b class='flag-5'>非常重要</b>?

    Linux系统管理的核心概念

    在前一篇文章中,我们深入探讨了Linux中的文件操作命令,如cp、mv、rm,以及文本处理命令grep、wc和管道符。本文将继续深入Linux系统管理的核心概念,包括root用户的角色、用户和用户组
    的头像 发表于 05-15 17:05 496次阅读

    Linux系统进程管理入门指南

    在 Linux 系统中,进程是正在运行的程序的实例。理解进程的管理、查看和控制对于系统管理员和开发者来说非常重要
    的头像 发表于 04-22 14:34 860次阅读
    Linux系统进程<b class='flag-5'>管理</b>入门指南

    深度解析:Air8201如何使用LuatOS进行电源管理功能!

    。 一、电源管理介绍   电源管理是电子设备中非常重要的一部分,尤其是在移动设备和嵌入式系统中。它直接关系到设备的能效、续航时间和整体性能。以下是关于电源管理的一些基本知识和常见
    的头像 发表于 03-25 18:23 3146次阅读
    深度解析:Air8201如何使用LuatOS进行电源<b class='flag-5'>管理</b>功能!

    实际硬件设计中非常经典巧妙的20电路合集,带分析,收藏起来慢慢看!

    1、防反接保护(二极管)在实际电子设计中,防反接保护电路非常重要,不要觉得自己肯定不会接错,实际上无论多么小心,还是会犯错误......最简单的就是利用二极管了,利用二极管的单向导电性,反接的时候
    发表于 03-24 13:49

    存储电源芯片又一重要玩家,打破DDR5 PMIC垄断

    半导体是移动电源、TWS耳机等领域电源管理芯片的知名供应商,在TWS耳机充电仓SoC芯片市场占有率排名第一。如今,思远半导体进军存储电源芯片领域,实力满满,力争成为AI存储浪潮下PMIC芯片的头部企业。   DDR
    的头像 发表于 03-21 09:05 3213次阅读
    <b class='flag-5'>存储</b>电源芯片又一<b class='flag-5'>重要</b>玩家,打破DDR<b class='flag-5'>5</b> PMIC垄断

    RTOS中的本地存储指针使用

    本地存储指针是RTOS中的一重要特性,增强了任务管理和数据处理能力。在RTOS上下文中,本地存储是指
    的头像 发表于 02-28 16:33 1172次阅读
    RTOS中的本地<b class='flag-5'>存储</b>指针使用

    中央空调能耗计量与管理系统能量计量表

    管理空调系统能效的综合解决方案,通常包括多个关键组成部分,如能耗计量表、控制系统和数据分析平台等。 能耗计量表 是系统中非常重要的组成部分,用于实时测量中央空调系统在运行过程中消耗的能量(如电力、冷量
    的头像 发表于 02-19 15:36 977次阅读
    中央空调能耗计量与<b class='flag-5'>管理</b>系统能量计量表

    电脑私有云存储什么意思,电脑私有云存储优势与搭建方式

        在这个数字化时代,我们的生活和工作都与数据紧密相连。从海量的工作文档、珍贵的家庭照片,到重要的学习资料,数据量不断攀升,如何高效、安全地存储管理这些数据成为了一大难题。电脑私有云存储
    的头像 发表于 01-17 14:32 1111次阅读
    电脑私有云<b class='flag-5'>存储</b>什么意思,电脑私有云<b class='flag-5'>存储</b>优势与搭建方式

    语言模型管理的作用

    要充分发挥语言模型的潜力,有效的语言模型管理非常重要。以下,是对语言模型管理作用的分析,由AI部落小编整理。
    的头像 发表于 01-02 11:06 573次阅读

    硅基混合III-V半导体光放大器设计

    具有高增益和高输出功率的硅基混合III-V半导体光放大器在许多应用中非常重要,如光收发器、集成微波光子学和光子波束成形。
    的头像 发表于 12-30 16:15 1218次阅读
    硅基混合III-V半导体光放大器设计

    Redis使用重要的两机制:Reids持久化和主从复制

    今天这篇文章,我们一起了解 Redis 使用中非常重要的两机制:Reids 持久化和主从复制。 我们都知道Redis是一内存数据库,在学习主从同步之前,我们首先要想到 Redis 是如何做数据
    的头像 发表于 12-18 10:33 630次阅读
    Redis使用<b class='flag-5'>重要</b>的两<b class='flag-5'>个</b>机制:Reids持久化和主从复制