reactos操作系统实现(6)
引导序号 |
引导过程 |
引导执行代码位数 |
目标文件名称 |
1. |
主引导代码(Master Boot Record (MBR) code),主要寻找活动分区,然后读入引导扇区代码 |
16位执行代码 |
reactos/boot/freeldr/bootsect/dosmbr.asm |
2. |
引导扇区代码,主要寻找根据的引导程序,这里主要寻找freeldr.sys。 |
16位执行代码 |
reactos/boot/freeldr/bootsect/ fat.asm或 reactos/boot/freeldr/bootsect/fat32.asm |
3. |
ReactOS的加载程序freeldr.sys,主要用来加载hal.dll和ntoskrnl.exe,并且读取FREELDR.INI配置文件。 |
16位和32位代码 |
reactos/boot/freeldr |
4. |
ntoskrnl.exe主要加载驱动程序和初始化内核工作。 |
32位代码 |
reactos/ntoskrnl |
在ntoskrnl.exe文件里会首先加载下面的文件运行:
模块名称:bootc.lst, start=[0xC00DC000]
模块名称:system32/drivers/pci.sys, start=[0xC00DD000]
模块名称:system32/drivers/scsiport.sys, start=[0xC00E4000]
模块名称:system32/drivers/atapi.sys, start=[0xC00F2000]
模块名称:system32/drivers/class2.sys, start=[0xC00FC000]
模块名称:system32/drivers/disk.sys, start=[0xC0109000]
模块名称:system32/drivers/vfatfs.sys, start=[0xC0114000]
模块名称:system32/drivers/ndis.sys, start=[0xC012C000]
模块名称:system32/config/system, start=[0xC0157000]
模块名称:system32/ansi.nls, start=[0xC0163000]
模块名称:system32/oem.nls, start=[0xC0174000]
模块名称:system32/casemap.nls, start=[0xC0185000]
接着根据硬件来加载所有驱动程序。
通过上面的过程,就把ReactOS加载到系统内存里,并且加载好所有驱动程序。
转载于:https://www.cnblogs.com/ajuanabc/archive/2008/12/11/2463911.html
reactos操作系统实现(6)相关推荐
- reactos操作系统实现 2
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 对于开发 ...
- reactos操作系统实现(2)
对于开发一个操作系统是一个漫长的过程,并不像一个Hello world程序那么快捷,那么明了.因此对开发OS的基本知识,基本技能也需要比较高深一些,特别对一些名词和概念,更需要深入地了解.由于操作系统 ...
- reactos操作系统实现 1
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! reac ...
- reactos操作系统实现(47)
当光盘变成记录数据以后,就开始使用光盘来分发操作系统了.毕竟光盘有着储存数据量大,成本便宜的优势.下面就来分析Reactos是怎么样通过光盘的格式来引导操作系统的. 现今的计算机BIOS,会在开机时根 ...
- reactos操作系统实现 3
有人说,reactos不是实时操作系统,不能做嵌入式系统,难道真的不能做嵌入式系统吗?其实不是这样的,嵌入式系统本来就包括有两类系统,一种是要求实时性强,一种是要求实时性弱的.这两种都是嵌入式系统.因 ...
- reactos操作系统实现(1)
reactos是什么操作系统呢?它是一个开源的操作系统,并且是兼容Windows XP的应用程序和驱动程序的操作系统.意思就是说,直接安装一个reactos之后,把第三方的驱动程序安装好后,就可以运行 ...
- reactos操作系统实现(3)
有人说,reactos不是实时操作系统,不能做嵌入式系统,难道真的不能做嵌入式系统吗?其实不是这样的,嵌入式系统本来就包括有两类系统,一种是要求实时性强,一种是要求实时性弱的.这两种都是嵌入式系统.因 ...
- reactos操作系统实现(12)
有了上面的知识,就来分析ReactOS里引导任务是怎么样设置全局描述符表.其工作过程如下图所示: 由于CPU初始化运行后,就当作为一个任务在运行.这里主要设置这个任务的运行保存环境,以便CPU可以交给 ...
- reactos操作系统实现(119)
前介绍了初始化函数ScsiClassInitialize,那么在这个函数里使用下面的语句来查找SCSI的磁盘,如下: if (InitializationData->ClassFindDevic ...
最新文章
- mongodb 的PHP 扩展
- 使用Qt Designer编辑资源
- 计算机应用对口升学后能学啥专业,计算机应用专业的对口升学生考什么大学好...
- 【问题和解决】NLTK7.6节nltk.sem遇到的问题
- 20130328java基础学习笔记-循环结构for以及for,while循环区别
- Pytorch的BatchNorm层使用中容易出现的问题
- VS2005中Build顺序的设定
- Vue3@cli项目结构
- 每日算法系列【LeetCode 714】买卖股票的最佳时机含手续费
- 如何用一个废旧的笔记本打造一个家庭网络服务器?
- 用91卫图助手获取研究区(勾画研究矢量shp格式范围等)
- 如何通过手机拍照生成三维模型
- 期货真的可以做到长期稳定盈利吗?
- 软件工程-第三章 软件需求分析1
- gmapping建图与rviz实时显示中出现的问题记录
- 《送东阳马生序》(节选)
- 小米网关一二三代的区别【转载】网关,mesh ,zigbee
- DFS 简单的剪枝和状态压缩 海贼王之伟大航路
- FLStudio21水果免费版本FL2023电音制作软件
- 成都东软学院2016年ACM冬季校赛正式赛 - 题解