`
lobin
  • 浏览: 417591 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

哪些内存区间是比较安全的区域?

 

系统服务

 

处理器架构

寄存器

不管是哪种架构,像x86,arm等都提供大量的寄存器用于临时存放数据。不只是CPU,像很多其他的外设,如显卡等也都提供了大量的寄存器,只是这些寄存器不像x86等架构的处理器提供的寄存器那样可以直接访问,他们主要通过IO端口映射到指定端口,通过端口进行访问。这个不同的外设它的寄存器访问方式不一样,很多都很复杂。

 

 

中断

 

内存管理

 

遍址

不同的架构会采用不同的遍址方式。目前主要有两种遍址方式。

 

遍址方式

1、独立遍址方式

2、统一遍址方式

x86架构采用的是独立变址方式。采用统一遍址方式的有ARM,MIPS等架构。

 

独立遍址方式

 

统一遍址方式

 

x86遍址方式

独立遍址

 

IO端口

 

内存映射IO

 

 

不管是哪种架构,目前来看,各种架构,像x86,arm等,他们基本都是通过IO端口,内存,或者寄存器与外设打交道,包括内存。像x86,它是可以直接操作内存的,所以x86与外设打交道主要通过IO端口,内存方式,他们通过IO端口映射或者内存映射IO方式来完成。

 

有些架构,如ARM,这种架构不支持直接操作内存。它们主要通过寄存器。

 

x86

寻址方式

 

运行模式

实地址模式

保护模式

虚模式(虚拟8086模式)

 

从实地址模式到保护模式

 

门(Gate)

 

任务门(Task Gate)

 

中断门(Interrupt Gate)

 

陷阱门(Trap Gate)

 

分段管理

x86处理器在没有开启分页的情况下采用的是分段内存管理的。

 

在系统上电执行操作系统引导程序的时候有个短暂时间是在实地址模式下执行的,这个时候通过段寄存器和段偏移来访问内存,段寄存器存放的是基地址,这个地址是实际的地址,也就是物理地址,在从实模式进入到保护模式下,这个时候段寄存器改变了用途,段寄存器存放的是段选择子,而不是实际的物理地址,它指向的实际上是描述符表中的一个表项,由描述符表项来决定使用的哪一段地址空间,表项中存放了这段地址空间的基地址。

 

这段时间实际上都是采用的分段的内存管理。只要没有开启分页,那么就是采用的分段的管理。

 

分页管理

 

arm

 

BIOS

BIOS即Basic Input/Output System,基本输入输出系统。它包含两部分,BDA即BIOS data area,BIOS数据区以及EBDA即Extended BIOS Data Area,扩展BIOS数据区。

 

BDA位于低端内存0x00000400~0x000004FF这段内存区,这段内存区间总共256字节,EBDA位于低端内存0x00080000~0x0009FFFF这段内存区,这段内存区间总共128k。

 

EBDA是一块可变大小的内存区,它不一定会有128k,也就是不一定会占到0x000004FF,如果没有128k,就低于0x000004FF。

 

 

0
0
分享到:
评论

相关推荐

    网管教程 从入门到精通软件篇.txt

    网管教程 从入门到精通软件篇 ★一。★详细的xp修复控制台命令和用法!!! 放入xp(2000)的光盘,安装时候选R,修复! Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的...

    iOS应用逆向工程(第2版)高清版 沙梓社 吴航 著

    第二部分 工 具 篇 第3章 OSX工具集 25 3.1 class-dump 25 3.2 Theos 27 3.2.1 Theos简介 27 3.2.2 安装Theos 28 3.2.3 Theos用法介绍 30 3.2.4 Theos开发tweak示例 51 3.3 Reveal 53 3.4 IDA 57 3.4.1...

    电脑知识整理大全 菜鸟变高手

    这篇详尽的电脑知识整理旨在帮助初学者快速提升技能,从电脑的基本操作到高级应用,逐步成长为电脑高手。以下是系统学习电脑知识的一些关键点: 一、操作系统基础 操作系统是电脑的核心,它管理并协调硬件与软件...

    操作系统实验心得(精选多篇).doc

    文章共分为两篇,第一篇是操作系统实验心得,第二篇是操作系统实验总结。 操作系统实验心得 1. 络真的很强大,用在学习上将是一个非常高效的助手。在学习操作系统实验时,需要善于使用络来快速找到相关资料,从 ...

    iOS应用逆向工程:分析与实战

    第二部分为工具篇,介绍一系列基于Mac和iOS平台的配套工具,并且重点讲解其中的class-dump、Theos、Reveal、IDA、GDB等5个工具的使用方法,前3个侧重于使用,后2个侧重于分析。第三部分为理论篇,主要讲述iOS逆向/...

    unix学习基础篇pdf

    **第2章 入门** 1. **终端与Shell**:学习如何使用命令行界面,熟悉Bash shell的基本操作,如命令行提示符、输入历史、路径导航等。 2. **基本命令**:教授ls、cd、mkdir、rm、cp、mv等常用文件管理命令,理解它们...

    ucGUI学习笔记 -- 仿真器

    - 设备驱动层第二层:这部分处理通用的LCD控制命令,如清屏、设置颜色等。 - 设备驱动层第一层:这是最接近硬件的部分,处理特定硬件的细节,如像素格式转换、数据传输等。 三.内存管理 1. 问题的引出 在ucGUI...

    数据收集及空文件夹的删除

    3. 使用第三方工具:一些文件管理软件,如TreeSize、CCleaner等,提供了扫描并删除空文件夹的功能,操作更为直观且安全。 以下是一个简单的Python示例,用于删除指定路径下的空文件夹: ```python import os def ...

    MAC安装方法[整理].pdf

    - 使用GHOST将Leopard的GHO文件恢复到第二个分区。 - 重启选择移动硬盘启动,选择对应的安装选项,按照提示完成安装。 二、本地硬盘安装Leopard: 1. 如果已有Windows系统,需要在硬盘上划分15GB以上的空间给...

    诺基亚手机秘籍介绍.docx

    **购买篇:** 1. **检查手机状态**:购买时需仔细检查手机是否有使用痕迹,如通话记录、照片和电池触点磨损情况。 2. **检测功能**:通过按#键5秒以上检查是否存在切换线路选项,以测试手机功能是否正常。 3. **检测...

    Git权威指南PDF完整版

    第2篇 Git独奏 第4章 Git 初始化/ 58 4.1 创建版本库及第一次提交/ 58 4.2 思考:为什么工作区根目录下有一个 .git 目录/ 60 4.3 思考:git config 命令的各参数有何区别/ 63 4.4 思考:是谁完成的提交/ 65 4.5 思考...

    自己动手写操作系统(含源代码).part2

    在第二版中,你将会看到,你已经可以通过交叉编译的方式为我们的实验性 OS编写应用程序了,也就是说,它已经具备操作系统的基本功能,虽然仍然极其简陋,但第一个圈,毕竟是已经圆起来了。第三,实践类的操作系统...

    移动技术网Symbian开发专辑(pdf档)

    ##### 第一篇:Symbian OS简介 1. **Symbian OS六大特性**:如前所述,Symbian OS具有运行在ROM上、预装应用、开放性、多任务处理、安全性和硬件兼容性的特点。 2. **操作系统结构**:Symbian OS采用分层结构,...

    自己动手写操作系统(含源代码).part1

    在第二版中,你将会看到,你已经可以通过交叉编译的方式为我们的实验性 OS编写应用程序了,也就是说,它已经具备操作系统的基本功能,虽然仍然极其简陋,但第一个圈,毕竟是已经圆起来了。第三,实践类的操作系统...

    02316计算机应用技术全国2013年7月自考试题整理.pdf

    这篇资料是全国2013年7月高等教育自学考试《计算机应用技术》的试题,涵盖了计算机基础知识、操作系统使用、文字处理软件Word 2000的操作、电子表格软件Excel 2000的基本概念以及基本的计算机网络知识。 1. 计算机...

    批量修改文件名,多种规则

    在IT行业中,对文件进行批量修改文件名是一项常见的任务,特别是在数据管理、文件整理和自动化流程中。批量修改文件名可以极大地提高效率,避免手动逐一更改的繁琐过程。本篇文章将详细阐述批量修改文件名的方法、...

    Xcode8以及iOS10适配等常见问题汇总(整理篇)

    这篇文章主要汇总了一些在升级过程中可能会遇到的问题及其解决方案。 1. 访问权限问题:iOS 10对用户的隐私保护加强,应用在请求访问如通讯录、照片等权限时,如果不提前在`info.plist`文件中配置相应的权限描述,...

    UCD火花集2

    第2章 交互设计 11 交互到底是做什么的 12 好习惯和坏习惯 13 交互设计师容易犯的错误:把自己.禁锢在解决 方案之中 15 UI和IxD 16 再谈交互设计、用户体验设计工作 19 中国还很需要交互设计师 19 做产品?拿什么去...

Global site tag (gtag.js) - Google Analytics