段描述符的大小为8个字节大小,下面是一道例题要求根据内存分配情况对段描述符进行正确填充。
如下图,在进入保护模式时,必须填充一个数据段描述符和一个代码段描述符,对应的内存段大小都是8M,要求填写每个段描述符的内容:
由题意知段描述符的界限为8M,即 800000H,一共占用了...
7年前 (2016-02-04) 1756℃ 0评论
2喜欢
保护模式和实模式一样,都是通过段寄存器和通用寄存器来进行寻址,区别是实模式只有20位地址线的寻址能力,而保护模式有32位地址线的寻址能力,保护模式和实模式一样,也是把内存分成了一个个内存段来表示,把已经分好的内存段信息存入一张表格中,段寄存器中保存要访问的表格的索引,寻找内存段...
7年前 (2016-02-04) 1628℃ 0评论
0喜欢
x86CPU主要有三种工作模式,分别是 实模式,保护模式和 虚拟8086模式。
实模式
在8086CPU中,只有实模式一种工作模式。实模式有自己独特的寻址方式 段地址:偏移地址,它实际对应的物理地址为:
实际物理地址 = 段地址 * 16 + 偏移地址
16位的8...
7年前 (2016-02-03) 1713℃ 0评论
1喜欢
引导扇区(boot sector)是设备的第一个扇区,大小为512个字节,并且以0xAA55结束。当机器加电启动后,如果选择从软盘启动,会检查软盘的0面0磁道1扇区,如果它以0xAA55结束,就认为它是一个引导扇区,之后把引导扇区内容加载到用户指定的内存地址处,并从此处开始执行...
7年前 (2016-02-02) 1935℃ 0评论
1喜欢
上一篇笔记提到当运行bochs虚拟机的时候:
bochs -f bochsrc
并不会直接运行,而是进入了调试状态,然后输入指令进行调试。
在上图中最后一行可以看到输入了指令“c”, 指令“c”的含义是“继续执行直到遇到断点” . 实际这里可以输...
7年前 (2016-01-21) 2103℃ 0评论
1喜欢
写一个操作系统,目的就是得到一个软盘映像文件 *.img ,笔者首先写了一个映像文件 a.img进行展示,之后再介绍是如何完成的。
使用bochs运行a.img: (图中红色部分即为要输出内容)
使用VMare运行a.img:
可以看到...
7年前 (2016-01-19) 2174℃ 1评论
0喜欢
实现一个操作系统内核原型之前的开发环境的搭建:
1. 一个linux的开发环境,比如ubuntu,debian,如果使用windows开发,可以使用QEMU,Virtual Box等虚拟机安装linux。
2. 代码编辑器,比如 vim,emacs,g...
7年前 (2016-01-18) 3016℃ 0评论
2喜欢
#include <stdio.h>int func(int param1 ,int param2,int param3){ int var1 = param1; int var2 = param2; int var...
7年前 (2015-12-21) 2571℃ 0评论
1喜欢
1. 如何判断链表是否有环,如果有环返回入环节点
快指针,慢指针, 快指针每次走两步,慢指针每次走一步,如果二可以者相遇,则说明有环。当二者相遇的时候,将快指针重新指向头结点,然后快慢指针每次都走一步,相遇节点即为入环节点。
2. 无环单链表判断是否相交,相交返回第...
7年前 (2015-12-01) 2302℃ 0评论
1喜欢
君不见
三界之中纷扰
只为天明不了绝
一念不生心澄然
无去无来不生灭
来自为知笔记(Wiz)
转载请注明:晋坤 的博客 » 拾得诗(摘)...
7年前 (2015-11-27) 1706℃ 0评论
1喜欢