80386处理器有3种工作模式:实模式、保护模式和虚拟86模式。实模式和虚拟86模式是为了和8086处理器兼容而设置的。在实模式 下,80386处理器就相当于一个快速的8086处理器。保护模式是80386处理器的主要工作模式。在此方式下,80386可以寻址4GB的地址空间,同时,保护模式提供 ...
在我们阅读boot loader代码时,遇到了两个非常重要的概念,实模式 real mode 和保护模式 protected mode 。 首先我们要知道这两种模式都是CPU的工作模式,实模式是早期CPU运行的工作模式,而保护模式则是现代CPU运行的模式。 但是为什么现代CPU在运行boot loader时仍旧要先进入实模式呢 就是为了实现软件的向后兼容性不得已才这样的。 下面我们分别看下这两种 ...
2016-01-09 14:49 0 5354 推荐指数:
80386处理器有3种工作模式:实模式、保护模式和虚拟86模式。实模式和虚拟86模式是为了和8086处理器兼容而设置的。在实模式 下,80386处理器就相当于一个快速的8086处理器。保护模式是80386处理器的主要工作模式。在此方式下,80386可以寻址4GB的地址空间,同时,保护模式提供 ...
假设x86处理器执行以下的指令 主要讨论实模式和保护模式:这包括16位模式即实模式,32位模式即保护模式,以及32位模式下的16位兼容模式(首先需要明确的是保护模式有着不同的内存访问机制,简单地说就是传统的涉及段的几个寄存器如CS,DS,ES,SS等被解释为不同的内容——实 ...
为何要了解Intel 80386的保护模式和分段机制?首先,我们知道Intel 80386只有在进入保护模式后,才能充分发挥其强大的功能,提供更好的保护机制和更大的寻址空间,否则仅仅是一个快速的8086而已。没有一定的保护机 制,任何一个应用软件都可以任意访问所有的计算机资源 ...
Lab 1 Exercise 3 设置一个断点在地址0x7c00处,这是boot sector被加载的位置。然后让程序继续运行直到这个断点。跟踪/boot/boot.S文件的每一条指令,同时使用b ...
Part 3 Kernel Address Space JOS把32位线性地址虚拟空间划分成两个部分。其中用户环境(进程运行环境)通常占据低地址的那部分,叫用户地址空间。而操作系统内核总是占据高地址的部分,叫内核地址空间。这两个部分的分界线是定义在memlayout.h文件中的一个宏 ULIM ...
Lab 1 Exercise 10 为了能够更好的了解在x86上的C程序调用过程的细节,我们首先找到在obj/kern/kern.asm中test_backtrace子程序的地址, 设置断点,并 ...
Lab 1 Part 3: The kernel 现在我们将开始具体讨论一下JOS内核了。就像boot loader一样,内核开始的时候也是一些汇编语句,用于设置一些东西,来保证C语言的程序能够正确的执行。 使用虚拟内存 在运行boot loader时,boot loader中的链接 ...
Lab 1中Exercise 9的解答报告 Exercise 1.9: 判断一下操作系统内核是从哪条指令开始初始化它的堆栈空间的,以及这个堆栈坐落在内存的哪个地方?内核是如何给它的堆栈保留一块 ...