
保护模式编程
漠北刀客
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【学习】【保护模式编程、二】
【80386保护模式编程】8086到80386的跳转,80386与8086在硬件上的区别在这就不说了!!那么80386与8086在软件逻辑上面的区别就是:8086是实模式,而80386 不仅包括实模式,而且还可以进入保护模式!!!保护模式不仅不受64KB内存寻址的限制,而且还拥有4GB的寻址空间。这是因为386扩展了20地址线,将它扩展成32位了(32位能表达的字节数就是4GB).转载 2009-12-27 14:48:00 · 1112 阅读 · 0 评论 -
【学习】【保护模式编程、九】
【用C语言编写内核程序】一、读入ELF文件到内存接着Loader.bin 程序将,在进行保护模式的系列初始化工作后。是时候转到kernel.bin了。1、首先将 Kernel.bin 装入到内存:此时的Kernel,bin文件里面的内容跟磁盘上存放的是一摸一样。因为这个时候的装载是直接N个扇区到内存。;2、分析内存中的Kernel.bin文件:因为在内存当中的Kernel.转载 2009-12-27 15:27:00 · 782 阅读 · 0 评论 -
【学习】【保护模式编程、七】
【操作系统第一步】一、FAT12文件格式:第一章谈到了引导程序的编写。它是在0面0磁道0扇区的一个文件。它的大小是512BYTE,那么我们现在就来具体了解一下它的结构。文件格式通常分为:1、扇区:磁盘上的最小数据单元。2、簇:一个或多个扇区。3、分区:通常指整个文件系统,也就是一个分区。现在就来看看一个分区整体结构(扇区磁盘的最小单元):______________转载 2009-12-27 15:21:00 · 687 阅读 · 0 评论 -
【学习】【保护模式编程、六】
【异常和中断】:异常和中断的处理是通过一个中断向量表对应起来的,这样做的目标是能明确发生特殊转移时候能判断是什么异常或者中断并做出相应的处理。IRQ0-IRQ19 已经定义好了.IRQ20-IRQ31是INTEL预留的向量,我们不去使用它。IRQ32-IRQ255是用户自定义中断,那么我可以将自己的定义的中断与这些中断向量号联系起来。1、异常:异常是指程序在运行中所产生的。转载 2009-12-27 15:20:00 · 994 阅读 · 0 评论 -
【学习】【保护模式编程、五】
[386分页机制] 一、 页 页也就是指内存中的一块区域,在80386中页的大小是4KB,这个是可以计算出来的(线性地址的低12位0FFFh 是页的最大偏移。所以4KB是也页的最大界限)。 在Pentuim 系列后页的大小可以是2MB或者4MB,并且可以用页访问多于4GB的空间。 1、在未开启分页机制之前的寻址方式 : 根据保护模式的分段机制,[段选择子:EA]转载 2009-12-27 15:18:00 · 681 阅读 · 0 评论 -
【学习】【保护模式编程、四】
【LDT描述符&&特权级&&门】一、LDT(局部描述符)GDT是全局描述符,是整个系统的描述符,描述符着所有的段!!!在前几章我们已经熟悉了GDT的一些基本功能,与运作机制。对GDT描述符的定义与使用也就那么几项固定的步骤,接下来再了解LDT.LDT是局部描述符。看字面LDT与GDT很相似.它们都是描述符。只不过GDT是全局描述符、而LDT是局部描述符。那么LDT该如何转载 2009-12-27 15:16:00 · 2393 阅读 · 0 评论 -
【学习】【保护模式编程、三】
【继续80386编程】在一、到二、我们了解386基本寻址机制,没错就是这么简单!!!接下来我们谈谈 对上一个386进行扩展:大家在第二节已经知道了进入386的基本步骤了,那么我们来具体设计吧.编程首先当然是【声明】与【定义】:一、【声明】:在386.inc 头文件里定义好需要的宏信息(好东西直接拿来用了呵呵);------------------------------转载 2009-12-27 15:10:00 · 869 阅读 · 0 评论 -
【学习】【保护模式编程、一】
【8086模式编程】如果想更深、更亲近的了解电脑软件。那么学习cpu是你的必选!!386是CPU史的一大转折点,那386做基础课是最好不过了。那么我们将开始进行学习之旅!!!大家跟我一块学习吧,呵呵!!!一、准备工作1、NASM 编译环境(当然Masm 也可以 但是用它来写COM程序比较麻烦)2、虚拟机Virtual PC(Windows平台 ,执行比较快,即模拟又原创 2009-12-27 14:42:00 · 1169 阅读 · 0 评论 -
【学习】【保护模式编程、八】
【linux 下编程】一、用NASM与C语言在LINUX平台编程初次接触linux 还真有点适应困难,那么现在就来慢慢适用它吧!(在linux 下访问windows共享文件夹可以:mount -t smbfs -o username=name,password=pwd,ip=192.168.*.* //MachineName/share /home/share)在linux 用转载 2009-12-27 15:24:00 · 856 阅读 · 0 评论 -
【总结】【操作系统内核工程】
【总结内核框架】×麻雀虽小五脏俱全,这个系统框架主要分3大块。下面就一个一个来细说:一、Boot.bin区(引导代码块):从开机到BIOS自检,然后BIOS把主控制权交给Boot.bin!!!Boot.bin的设计是这样的:【×头文件区】1、fat12hdr.inc(FAT12磁盘格式。这是我们文件系统格式头).里面就是一个简单的FAT12文件系统的引导扇区格式结构体.转载 2009-12-27 15:29:00 · 1159 阅读 · 0 评论