在程序运行时由中央处理单元生成的内容的地址称为逻辑地址。该地址也称为虚拟地址。当我们谈论逻辑地址时,我们指的是CPU分配给每个进程的地址,一个进程在内存中所处的实际地址与进程认为它所处的地址是不一样的。

每当 CPU 运行一个进程时,它都会为该进程分配一个特定的内存。此分配的内存空间位于 CPU 为进程生成逻辑地址。

在生成逻辑地址时,CPU 生成一个地址,程序将基地址与 CPU 生成的地址相加得到

逻辑地址 = 基地址 + CPU 生成地址

物理地址是进程及其内容放置在主内存或硬盘中的地址,是内存中的内存单元实际地址。该地址不能直接由用户程序访问或查看,因此需要将逻辑地址映射到该地址,以便借助显示位置而不是代码的指针进行访问

地址映射:

(MMU为内存管理单元)

简易理解:

逻辑地址就是相对地址,比如在1G的内存里分配1M的空间这1M空间中的第一个字节,就算是逻辑地址

在1G内存的100M的地方开始分配1M的空间,这时101M的第一个字节,这个就是指的物理地址,

再比如:有四个人要租房 ,房子的地址是XX街道XX号,这个地址就是实际的地址,是物理地址。房东将这四间房子进行编号1 2 3 4 号 。  这四人平时聊天会说自己住在几号房,这个就是逻辑地址,但实际地址还是XX街道XX号。

区别:

注:线性地址和分页机制没有补充到里面。

此内容为个人学习总结所用,有错望及时指正。

浅谈逻辑地址和物理地址相关推荐

  1. 浅谈物理地址、虚拟地址和逻辑地址

    从最根本的角度来看,地址只分为两类:物理地址.虚拟地址. 1.物理地址 CPU地址总线传来的地址,由硬件电路控制其具体含义.物理地址中很大一部分是留给内存条中的内存的,但也常被映射到其他存储器上(如显 ...

  2. 浅谈Linux内存管理那些事儿

    linux相关视频解析: 5个方面分析linux内核架构,让你对内核不再陌生 手把手带你实现一个Linux内核文件系统 1 前言 内存管理是Linux内核中非常重要的部分,今天和大家一起学习一下. 当 ...

  3. 嵌入式开发-浅谈嵌入式MCU开发中的三个常见误区

    浅谈嵌入式MCU开发中的三个常见误区 原创 2017-09-30 胡恩伟 汽车电子expert成长之路 目录 (1)嵌入式MCU与MPU的区分 (2)误区一:MCU的程序都是存储在片上Flash上,然 ...

  4. 浅谈存储重删压缩技术(一)

    浅谈存储重删压缩技术(一) 作为一个做企业存储市场的存储人,最近两年我不断被重删压缩撩拨着.对于重删压缩这个技术的好坏,真实需求还是伪需求大家看法不一.今天我就只能谈谈我个人的看法.更多观点请关注&q ...

  5. Linux内核之浅谈内存寻址

    Linux内核之浅谈内存寻址 前言 最近在看内存寻址的内容,略有所得,发此文与大家一起交流.我们知道计算机是由硬件和软件组成,硬件主要包括运算器.控制器.存储器.输入设备和输出设备,软件主要是操作系统 ...

  6. 浅谈 Python 程序和 C 程序的整合

    浅谈 Python 程序和 C 程序的整合 Python 是一种用于快速开发软件的编程语言,它的语法比较简单,易于掌握,但存在执行速度慢的问题,并且在处理某些问题时存在不足,如对计算机硬件系统的访问, ...

  7. 浅谈Service Manager成为Android进程间通信(IPC)机制Binder守护进程之路

    原文地址: http://blog.csdn.net/luoshengyang/article/details/6621566 上一篇文章Android进程间通信(IPC)机制Binder简要介绍和学 ...

  8. 浅谈SQL Server 对于内存的管理

    简介 理解SQL Server对于内存的管理是对于SQL Server问题处理和性能调优的基本,本篇文章讲述SQL Server对于内存管理的内存原理. 二级存储(secondary storage) ...

  9. Linux位置无关代码实现,浅谈位置无关代码

    原标题:浅谈位置无关代码 引言 最近参与的一个项目涉及到了二进制重写相关的问题,也因此看了几篇相关工具的论文.与之前曾经一直想做的动态装载有不少重合,因此在此做一个整理. 本文主要整理了动态库装载地址 ...

最新文章

  1. Java垃圾回收机制(Garbage Collection)
  2. 常用注解[spring 的 java 配置] ||springboot 热部署
  3. 计算机创建文档教案,计算机基础知识教案
  4. 网络编程技术(技术总结)
  5. CADD课程学习(5)-- 构建靶点已知的化合结构(ChemDraw)
  6. 中文分词 及发展现状(总结的不错)
  7. 本地项目上传至git码云步骤(超详细,附图文)
  8. Android Studio Design界面不显示控件的解决方法
  9. 【学习笔记】广义逆矩阵及共轭转置求解
  10. 华为matepad进行html编辑,华为MatePad Pro实现与笔记本多屏协同
  11. 2019,关于我的故事
  12. 用c语言编写打印机输出程序,C语言编写银行打印程序实例参考
  13. 根轨迹的基本概念与绘制
  14. mod_rewrite模块详解(转)
  15. ssssssssssssssss
  16. 从设计哲学对比波卡与Cosmos
  17. 詹姆斯高斯林_詹姆斯·高斯林(James Gosling):Oracle的表现“令人惊讶的是” 用Java
  18. 基础语法和变量day2学习内容
  19. 触摸操作(单手旋转双手缩放)
  20. Android最新手机号正则判断(含最新166/198/199开头的手机号)

热门文章

  1. 钾钠离子净化树脂,除钾钠树脂
  2. C语言里字符串的解析
  3. Atmel Studio6.0 下atmega88的调试和仿真
  4. 按几大洲或国家,访问指定服务器
  5. mac修改vmware flusion网络适配器的nat配置
  6. bga焊盘怎么做_焊接焊盘和BGA设计规则-嘉立创PCB打样专业工厂-线路板打样
  7. 项目Cycle Time的一种确定方式
  8. AD20小笔记——如何导出元器件清单
  9. 亚信安全发2021财报: 营收增长30.82%,云安全、终端安全核心产品收入增幅明显
  10. linux内核链表学习与实践