中国高校课件下载中心 》 教学资源 》 大学文库

《Linux操作系统原理与应用》课程教学课件(PPT讲稿)第二章 虚拟内存管理的硬件机制

文档信息
资源类别:文库
文档格式:PPT
文档页数:41
文件大小:528.5KB
团购合买:点击进入团购
内容简介
《Linux操作系统原理与应用》课程教学课件(PPT讲稿)第二章 虚拟内存管理的硬件机制
刷新页面文档预览

虚拟内存管理的硬件机制内存寻址的演变段机制分页机制Linux中的汇编语言Linux系统地址映射示例

虚拟内存管理的硬件机制 内存寻址的演变 段机制 分页机制 Linux中的汇编语言 Linux系统地址映射示例

内存寻址一操作系统设计的硬件基础之一操作系统一横跨软件和硬件的桥梁内存寻址一操作系统设计的硬件基础之一。操作系统的设计者必须在硬件相关的代码与硬件无关的代码之间划出清楚的界限,以便于一个操作系统很容易地移植到不同的平台。,在这众多的平台中,大家最熟悉的就是i386,即Inte180386体系结构。因此,我们所介绍的内存寻址也是以此为背景

内存寻址-操作系统设计的硬件基础之一 • 操作系统-横跨软件和硬件的桥梁 • 内存寻址-操作系统设计的硬件基础之一 • 操作系统的设计者必须在硬件相关的代码与硬件无 关的代码之间划出清楚的界限,以便于一个操作系 统很容易地移植到不同的平台。 • 在这众多的平台中,大家最熟悉的就是i386,即 Intel80386体系结构。因此,我们所介绍的内存寻 址也是以此为背景

内存寻址的不同时期石器时期一8位青铜时期一16位白银时期一24位黄金时期-32位

内存寻址的不同时期 石器时期-8位 青铜时期-16位 白银时期-24位 黄金时期-32位

石器时期一8位寻址在微处理器的历史上,第一款微处理器芯片4004是由Intel推出的,4位。,在4004之后,intel推出了一款8位处理器叫8080它有1个主累加器(寄存器A)和6个次累加器(寄存器B,C,D,E,H和L)那时没有段的概念,访问内存都要通过绝对地址因此程序中的地址必须进行硬编码(给出具体地址),而且也难以重定位

石器时期-8位寻址 • 在微处理器的历史上,第一款微处理器芯片4004是 由Intel推出的,4位。 • 在4004之后,intel推出了一款8位处理器叫8080, 它有1个主累加器(寄存器A)和6个次累加器(寄存 器B,C,D,E,H和L) • 那时没有段的概念,访问内存都要通过绝对地址, 因此程序中的地址必须进行硬编码(给出具体地址 ),而且也难以重定位

青铜时期一“段”的引入intel开发出的16位的处理器叫8086,标志着IntelX86王朝的开始,同时引入了“段”概念。·段描述了一块有限的内存区域,区域的起始位置存在专门的寄存器(段寄存器)中。·8086处理器地址线扩展到了20位,寻址空间到了1M。也就是把1M大的空间分成数个64k的段来管理(化整为零了)。·把16位的段地址左移动4位后,再与16位的偏移量相加便可获得一个20位的内存地址

青铜时期-“段”的引入 • intel开发出的16位的处理器叫8086,标志着Intel X86王朝的开始,同时引入了“段 ”概念。 • 段描述了一块有限的内存区域,区域的起始位置存 在专门的寄存器(段寄存器)中。 • 8086处理器地址线扩展到了20位,寻址空间到了1M • 也就是把1M大的空间分成数个64k的段来管理(化整 为零了)。 • 把16位的段地址左移动4位后,再与16位的偏移量相 加便可获得一个20位的内存地址

白银时期一“保护模式”的引入·intel的80286处理器于1982年问世。·地址总线位数增加到了24位。·从此开始引进了一个全新理念一保护模式·访问内存时不能直接从段寄存器中获得段的起始地址了,而需要经过额外转换和检查。·80286处理器一些致命的缺陷注定不能长久,它很快被天资卓越的兄弟一80386代替了

白银时期-“保护模式”的引入 • intel的80286处理器于1982年问世 。 • 地址总线位数增加到了24位 。 • 从此开始引进了一个全新理念—保护模式 • 访问内存时不能直接从段寄存器中获得段的起始地 址了,而需要经过额外转换和检查 。 • 80286处理器一些致命的缺陷注定不能长久,它很快 被天资卓越的兄弟——80386代替了

黄金时期一内存寻址的飞跃·80386是一个32位的CPU,其寻址能力达到4GB·Intel选择了在段寄存器的基础上构筑保护模式,并且保留段寄存器16位·在保护模式下,它的段范围不再受限于64K,可以达到4G·这真正解放了软件工程师,他们不必再费尽心思去压缩程序规模,软件功能也因此迅速提升从80386以后,Intel的CPU经历了80486、Pentium、PentiumII、PentiumIII等型号,但基本上属于同一种系统结构的改进与加强,而无本质的变化,所以我们把80386以后的处理器统称为IA32(32 Bit Intel Architecture)

黄金时期-内存寻址的飞跃 • 80386是一个32位的CPU,其寻址能力达到4GB • Intel选择了在段寄存器的基础上构筑保护模式,并 且保留段寄存器16位 • 在保护模式下,它的段范围不再受限于64K,可以达 到4G • 这真正解放了软件工程师,他们不必再费尽心思去压 缩程序规模,软件功能也因此迅速提升 • 从80386以后,Intel的CPU经历了80486、Pentium、 PentiumII、PentiumIII等型号,但基本上属于同一种系统结 构的改进与加强,而无本质的变化,所以我们把80386以后的 处理器统称为IA32(32 Bit Intel Architecture)

IA32寄存器简介把16位的通用寄存器、标志寄存器以及指令指针寄存器扩充为32位的寄存器段寄存器仍然为16位。0增加4个32位的控制寄存器增加4个系统地址寄存器:增加8个调式寄存器·①增加2个测试寄存器

IA32寄存器简介 •  把16位的通用寄存器、标志寄存器以及指令指针 寄存器扩充为32位的寄存器 •  段寄存器仍然为16位。 •  增加4个32位的控制寄存器 •  增加4个系统地址寄存器 •  增加8个调式寄存器 •  增加2个测试寄存器

常用寄存器简介★通用寄存器心8个通用寄存器是8086寄存器的超集,它们分别为: EAX EBX ECX EDX EBP .EBP.ESI及 EDI★段寄存器×8086中有4个16位的段寄存器:CS、DS、SS、ES分别用于存放可执行代码的代码段、数据段、堆栈段和其他段的基地址。心这些段寄存器中存放的不再是某个段的基地址,而是某个段的选择符(Selector)心段基地址存放在段描述符表(Descriptor)中,表的索引就是选择符

常用寄存器简介 通用寄存器 ❖8个通用寄存器是8086寄存器的超集,它们分别 为:EAX ,EBX ,ECX ,EDX ,EBP ,EBP, ESI及 EDI 段寄存器 ❖8086中有4个16位的段寄存器:CS、DS、SS、ES, 分别用于存放可执行代码的代码段、数据段、堆 栈段和其他段的基地址。 ❖这些段寄存器中存放的不再是某个段的基地址, 而是某个段的选择符(Selector) ❖段基地址存放在段描述符表(Descriptor )中, 表的索引就是选择符

常用寄存器简介★指令指针寄存器指令指针寄存器EIP中存放下一条将要执行指令的偏移量(offset)这个偏移量是相对于目前正在运行的代码段寄存器CS而言的。偏移量加上当前代码段的基地址,就形成了下一条指令的地址。心EIP中的低16位可以被单独访问,给它起名叫指令指针IP寄存器,用于16位导址。★标志寄存器心标志寄存器EFLAGS存放有关处理器的控制标志,很多标志与16位FLAGS中的标志含义一样

常用寄存器简介 指令指针寄存器 ❖指令指针寄存器EIP中存放下一条将要执行指令 的偏移量(offset ),这个偏移量是相对于目 前正在运行的代码段寄存器CS而言的。偏移量加 上当前代码段的基地址,就形成了下一条指令的 地址。 ❖EIP中的低16位可以被单独访问,给它起名叫指 令指针IP寄存器,用于16位寻址。 标志寄存器 ❖标志寄存器EFLAGS存放有关处理器的控制标志, 很多标志与16位FLAGS中的标志含义一样

刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档