关于“实模式下能否访问1M以上内存”

2024-01-12 00:32

本文主要是介绍关于“实模式下能否访问1M以上内存”,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2009-07-29 17:43

CPU上电后,从ROM中的BIOS开始运行,而Intel文档却说80x86 CPU上电后总是从最高内存下16字节开始执行。实际上,BIOS在内存的最顶端64K(FFFF0000H)和1MB之下的64KB(F0000H)处都出现。

在实模式下,CPU用段寄存器左移4位与偏移量相加,形成物理地址;在保护模式下,则是用段描述符中的基地址加上偏移量,形成物理地址。这两者其实是一样的,当80286推出时,其地址空间从8086的20位变成了24位,自然的,段寄存器和指针都被加大了,只是由于保护的原因,加大的部分没有被程序“看到”,到了80386之后,地址又从24位加大到了32位。

在8086中,CPU只有“看得见的部分”(即1M)。但是在80286之后,在“看不见的部分”中已经包含了地址值,“看得见的部分”就退化为一个标号,不再参与地址形成的运算了。地址的形成总是从“不可看见部分”取出基址值与偏移相加形成地址。也就是说在是模式下,当一个段寄存器被装入一个值时,“看不见的部分”的界限被设成FFFFH,基址部分将装入值左移4位,属性部分设成16位0特权级。这个过程与保护模式时装入的一个段寄存器是同理的,只是保护模式的“不可见部分”是从描述表中取值,而是模式是一套固定的过程。

对于CPU在形成地址时,是没有实模式与保护模式之分的,他只管用基址(即“不可见部分”)去加上偏移量。实模式与保护模式的差别实际上

这篇关于关于“实模式下能否访问1M以上内存”的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/596219

相关文章

golang内存对齐的项目实践

《golang内存对齐的项目实践》本文主要介绍了golang内存对齐的项目实践,内存对齐不仅有助于提高内存访问效率,还确保了与硬件接口的兼容性,是Go语言编程中不可忽视的重要优化手段,下面就来介绍一下... 目录一、结构体中的字段顺序与内存对齐二、内存对齐的原理与规则三、调整结构体字段顺序优化内存对齐四、内

Java实现状态模式的示例代码

《Java实现状态模式的示例代码》状态模式是一种行为型设计模式,允许对象根据其内部状态改变行为,本文主要介绍了Java实现状态模式的示例代码,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来... 目录一、简介1、定义2、状态模式的结构二、Java实现案例1、电灯开关状态案例2、番茄工作法状态案例

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

Ollama整合open-webui的步骤及访问

《Ollama整合open-webui的步骤及访问》:本文主要介绍如何通过源码方式安装OpenWebUI,并详细说明了安装步骤、环境要求以及第一次使用时的账号注册和模型选择过程,需要的朋友可以参考... 目录安装环境要求步骤访问选择PjrIUE模型开始对话总结 安装官方安装地址:https://docs.

Linux内存泄露的原因排查和解决方案(内存管理方法)

《Linux内存泄露的原因排查和解决方案(内存管理方法)》文章主要介绍了运维团队在Linux处理LB服务内存暴涨、内存报警问题的过程,从发现问题、排查原因到制定解决方案,并从中学习了Linux内存管理... 目录一、问题二、排查过程三、解决方案四、内存管理方法1)linux内存寻址2)Linux分页机制3)

解读静态资源访问static-locations和static-path-pattern

《解读静态资源访问static-locations和static-path-pattern》本文主要介绍了SpringBoot中静态资源的配置和访问方式,包括静态资源的默认前缀、默认地址、目录结构、访... 目录静态资源访问static-locations和static-path-pattern静态资源配置

Java循环创建对象内存溢出的解决方法

《Java循环创建对象内存溢出的解决方法》在Java中,如果在循环中不当地创建大量对象而不及时释放内存,很容易导致内存溢出(OutOfMemoryError),所以本文给大家介绍了Java循环创建对象... 目录问题1. 解决方案2. 示例代码2.1 原始版本(可能导致内存溢出)2.2 修改后的版本问题在

大数据小内存排序问题如何巧妙解决

《大数据小内存排序问题如何巧妙解决》文章介绍了大数据小内存排序的三种方法:数据库排序、分治法和位图法,数据库排序简单但速度慢,对设备要求高;分治法高效但实现复杂;位图法可读性差,但存储空间受限... 目录三种方法:方法概要数据库排序(http://www.chinasem.cn对数据库设备要求较高)分治法(常

Redis多种内存淘汰策略及配置技巧分享

《Redis多种内存淘汰策略及配置技巧分享》本文介绍了Redis内存满时的淘汰机制,包括内存淘汰机制的概念,Redis提供的8种淘汰策略(如noeviction、volatile-lru等)及其适用场... 目录前言一、什么是 Redis 的内存淘汰机制?二、Redis 内存淘汰策略1. pythonnoe

Java访问修饰符public、private、protected及默认访问权限详解

《Java访问修饰符public、private、protected及默认访问权限详解》:本文主要介绍Java访问修饰符public、private、protected及默认访问权限的相关资料,每... 目录前言1. public 访问修饰符特点:示例:适用场景:2. private 访问修饰符特点:示例: