当前位置:鱼C工作室 >Win32汇编 > 查看文章

Win32基础知识1 – Win32汇编语言002

Win32基础知识1

 

让编程改变世界

Change the world by program


 

必须了解的基础知识

 

80×86处理器的工作模式

实模式

保护模式

虚拟8086模式

 

Windows的内存管理机制

Dos操作系统的内存安排情况

80386的内存寻址机制

80386的内存分页机制

Windows的内存安排

从Win32汇编的角度看内存寻址

 

Windows的特权保护机制

80386的中断和异常

80386的保护机制

Windows的保护机制

 

这是我们需要了解的一些基础知识,无论学习哪门编程语言,只要在Windows下编程,这些不能不知 ^_^

 

80×86处理器的工作模式

 

80386以后的处理器有 3 种工作模式:实模式、保护模式和虚拟8086模式。

其实,实模式和虚拟8086模式是为了向下兼容而设置的。

而保护模式是我们的主角,是我们现代系统实际上的工作模式。

只有在保护模式下,32位CPU的寻址才能达到4GB的地址空间,同时,也能实现多任务、内存分页管理和优先级保护等先进的机制。

 

Windows7的启动过程

 

1、开启电源

计算机系统将进行加电自检(POST)。

如果通过,之后BIOS会读取主引导记录(MBR)——被标记为启动设备的硬盘的首扇区,并传送被Windows 7建立的控制编码给MBR。

 

注:硬盘的0磁道的第一个扇区称为MBR,它的大小是512字节,而这个区域可以分为两个部分。

第一部分为pre-boot区(预启动区),占446字节;

第二部分是Partition table区(分区表),占66个字节,该区相当于一个小程序,作用是判断哪个分区被标记为活动分区,然后去读取那个分区的启动区,并运行该区中的代码。

 

MBR他是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。

但我们可以用ROM-BIOS中提供的INT13H中断的2号功能来读出该扇区的内容。(介绍BIOS指令)

 

2、启动菜单生成

Windows启动管理器读取“启动配置数据存储(Boot Confi guration Data store)中的信息。

此信息包含已被安装在计算机上的所有操作系统的配置信息。并且用以生成启动菜单。

 

当您在启动菜单中选择下列动作时: 

如果您选择的是Windows 7,Windows 启动管理器(Windows Boot Manager)运行%SystemRoot%System32文件夹中的OS loader —— Winload.exe。

如果您选择的是自休眠状态恢复Windows 7,那么启动管理器将装载Winresume.exe并恢复您先前的使用环境。

如果您在启动菜单中选择的是早期的Windows版本,启动管理器将定位系统安装所在的卷,并且加载Windows NT风格的早期OS loader(Ntldr.exe)——生成一个由boot.ini内容决定的启动菜单。

 

3、核心文件加载及登录

Windows7启动时,加载其核心文件 Ntoskrnl.exe和 hal.dll —— 从注册表中读取设置并加载驱动程序。

接下来将运行Windows会话管理器(smss.exe)并且启动 Windows启动程序(Wininit exe),本地安全验证(Lsass.exe)与服务(services.exe)进程,完成后,您就可以登录您的系统了。


为您推荐

报歉!评论已关闭.