- 博客(5)
- 收藏
- 关注
转载 cdecl、stdcall、fastcall函数调用约定区别
论函数调用约定 在C语言中,假设我们有这样的一个函数: int function(int a,int b) 调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保
2014-12-15 11:47:57 234
转载 全局描述符表
局描述符表 GDT(Global Descriptor Table) 在Protected Mode下,一个重要的必不可少的数据结构就是GDT(Global Descriptor Table)。 中文名 全局描述符表 外文名 Global Descriptor Table 类 型 数据结构 领
2014-12-14 13:42:41 663
转载 控制寄存器(CR0,CR1,CR2,CR3)
控制寄存器 (控制寄存器(CR0,CR1,CR2,CR3)用于控制和确定处理器的操作模式以及当前执行任务的特性。) 从上表可见,80386有四个32位的控制寄存器,分别命名位CR0、CR1、CR2和CR3。但CR1被保留,供今后开发的处理器使用,在 80386中不能使用CR1,否则会引起无效指令操作异常。CR0包括指示处理器工作方式的控制位,包含启用和禁止分页管理机制的控制位,包含控制
2014-12-14 11:46:13 1059
转载 物理地址与线性地址详解
1. Linear Space & Physical Space 在硬件工程师和普通用户看来,内存就是插在或固化在主板上的内存条,它们有一定的容量——比如64 MB。但在应用程序员眼中,并不过度关心插在主板上的内存容量,而是他们可以使用的内存空间——他们可以开发一个需要占用1 GB内存的程序,并让其在OS平台上运行,哪怕这台运行主机上只有128 MB的物理内存条。而对于OS开发者而言
2014-12-14 11:21:51 368
转载 MBR参考资料:从INT 19H开始
System Boot Sequence 系统BIOS是机器被加电之后首先被运行的程序。我们下面看一看一个典型的Boot Sequence所包含的步骤,当然,由于硬件BIOS厂商的不同,这些序列会有一些不同,但下面所列的,是你的主机被加电之后,通常都会发生的序列。 当机器被打开时,等电源稳定之后,电源会发送一个“加电成功信号”给芯片,以启动时钟生成器(8284);
2014-12-13 23:27:25 515
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人