码迷,mamicode.com
首页 >  
搜索关键字:实模式    ( 160个结果
?Linux源码学习(1) 2013-2-21
1.BIOS启动过程自检复制到BIOS影子区到0xF0000,并跳转到此处执行进入实模式加载操作系统引导程序到0x7c00,并将控制权交给引导程序收藏于 2013-02-21来自于百度空间文章有问题?点击这里反馈给我们
分类:系统相关   时间:2015-07-07 20:59:58    阅读次数:196
Linux启动过程
BIOS启动1.加电时由硬件将BIOS加载到内存末尾.这时是实模式,寻址空间为1M. 2.由硬件将CS段寄存器强制设置为0xFFFF,IP指令寄存器设置为0x0000.这样CS:IP指向了OxFFFF0的地址位置.这个位置就是BIOS程序的入口地址. 3.执行BIOS程序.在内存起始地址0x00000设置1K大小的中断向量表.每个中断向量大小为4字节.中断向量保存的是中断服务的入口地址. 4....
分类:系统相关   时间:2015-06-08 13:29:02    阅读次数:167
Structual设计--Bridge模式
1.意图将抽象部分与它的实现部分分离,使他们都可以独立地变化。2.别名Handle/Body3.动机当一个抽象对象可能有多个实现时,通常用继承来协调它们。抽象类定义对该抽象的接口,而具体的子类则用不同方式加以实现。但是此方法有时不够灵活。继承机制将抽象部分与它的实现部分固定在一起,使得难以对抽象部分和实现部分独立的进行修改、扩充和重用。4.适用性以下情况使用Bridge模式: 你不希望在抽象和它的实...
分类:其他好文   时间:2015-06-08 11:46:20    阅读次数:175
bootsect及setup
BIOS和bootsectCPU加电即进入16位实模式硬件逻辑设计为加电瞬间强行设置:CS=0xF000,IP=0xFFF0,CS:IP=0xFFFF0而BIOS程序的入口地址即0xFFFF0,是计算机上电后CPU执行的第一条指令的地址BIOS程序在内存中加载中断向量表和中断服务程序调用INT 0x...
分类:其他好文   时间:2015-05-01 11:53:35    阅读次数:182
0.11之路(四):从实模式到保护模式
关中断并将system移动到内存地址起始位置 0x00000 将CPU的标志寄存器(EFLAGS)中的中断允许标志(IF)置0。这样系统不会再响应中断,直到main函数中能够适应保护模式的中断服务体系重建完毕才会打开,那时候响应中断的服务程序将不再是BIOS提供的中断服务程序,而是系统自身提供的。 就是要完成实模式下的中断向量表和保护模式下的中断描述符表(IDT)的交接工作。借助关中断(cli...
分类:其他好文   时间:2015-04-16 23:50:32    阅读次数:390
汇编:有关在屏幕区显示字符的四种方法
李忠老师的《x86汇编语言:从实模式到保护模式》中第五章到第七章的部分,每一章在讲述知识点的同时,分别使用了三种不同的显示字符的方法,加上调用BIOS的10h中 断的方法,这里做出一次简单梳理: 一:第五章,最基础的直接用mov 的方法代码如下: 1 ;代码清单5-1 ...
分类:其他好文   时间:2015-04-12 06:33:43    阅读次数:544
Booting the Linux/ppc kernel without Open Firmware
The DT block format这一章定义了传递给内核的FDT(flattened device tree)的格式。关于它包含的内容以及内核需要的属性将在后续章节描述。注:DT block应该被加载到主存储器中,内核需要在实模式和保护模式下都能够访问DT block,因此,要求DT block...
分类:系统相关   时间:2015-04-11 14:29:03    阅读次数:206
0.11之路(二):加载setup
BIOS将bootsect这个引导程序载入内存后,接下来就要靠bootsect来加载第二批和第三批程序。bootsect首先要做的工作就是规划内存。 实模式下,寻址最大范围是1MB(0xFFFFF)。关于setup程序,在bootsect.s中要指定setup程序的扇区数和被加载到的位置(0x90200),此外还要指定启动扇区(也就是bootsect.s)被BIOS加载的位置(0x07c00)和将...
分类:其他好文   时间:2015-04-10 18:01:12    阅读次数:102
实模式和保护模式的段式存储
intel 8086是16位的CPU,有着16位的寄存器,16位的数据总线和20位的地址总线。但由于其寄存器和数据总线都是16位,仅仅具有64kb的寻址能力,所以采用段+偏移的方式得到20位的即1M的寻址能力。则其计算公式为: 物理地址 = 段值 * 16 + 偏移。 也就是段值左移一位 + 偏移。 —其中,段值和偏移都是16位的但80386开始,CPU进入32位时...
分类:其他好文   时间:2015-04-09 15:29:47    阅读次数:130
USB系列之五:用汇编实现的一些USB功能
前面的USB系列一至四,实现了我们需要的一些USB功能,但都是用C语言的32位代码,之后我们插进了三篇关于DOS下设备驱动程序的文章,我们现在应该清楚,当我们要在DOS下写一个U盘的驱动时,最好使用汇编语言,而且不得不在实模式下编程。 基于这样一个原因,本文计划把《USB系列二》到《USB系列四.....
分类:其他好文   时间:2015-03-31 19:33:17    阅读次数:122
160条   上一页 1 ... 11 12 13 14 15 16 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!