reactos操作系统实现(74)

很多驱动程序,都是通过硬件检测时写到注册表里保存起来的,因此读取注册表里键值列表,就知道有多少设备需要需要加载了。下面就从注册表里创建一组驱动程序列表,实现的代码如下:#001  NTSTATUS INIT_FUNCTION#002  IoCreateDriverList(VOID)#003  {#004       RTL_QUERY_REGISTRY_TABLEQuer...
阅读(6927) 评论(2)

reactos操作系统实现(73)

即插即用(Plug and Play,PnP)是计算机系统I/O设备与部件配置的应用技术。PnP就是指插入就可以使用,不需要进行任何的硬件配置。其实还是需要安装相应的驱动程序才可以使用的。随着人们对计算机使用多样化,不断地需要添加各种各样的硬件卡到计算机的主板上,这样就需要配置硬件卡的中断、I/O所占用的资源,才能正常工作。这个过程是非常复杂的,经常需要手工配置,还需要查看计算机那里中断是空闲...
阅读(1858) 评论(0)

reactos操作系统实现(72)

ReactOS通过对象管理机制为内核提供了一致的和安全的访问方式。对象管理器是一个用于创建、删除、保护和跟踪对象的内核一部份。由于I/O管理的设备是多方面的,就需要创建很多对象来表达这种设备,下面就来了解关于I/O相关的对象,初始化的代码如下:#001  BOOLEAN#002  INIT_FUNCTION#003  NTAPI#004  IopCreateObjectType...
阅读(1463) 评论(0)

reactos操作系统实现(71)

I/O管理器是管理着整个计算机的输入和输出的操作,因此它是一个基本的组成部份。I/O管理器的初始化调用是在文件reactos/ntoskrnl/ex/init.c里,它主要调用I/O管理器的函数IoInitSystem()来实现,这个函数在文件reactos/ntoskrnl/io/iomgr/iomgr.c里。这个函数的实现代码如下:#001  BOOLEAN#002  INIT_F...
阅读(1807) 评论(0)

reactos操作系统实现(70)

安装和配置用户信息后,就会重新启动,ReactOS系统就会自动登录到正常的环境里,并且启动驱动程序安装向导,如下图: 当驱动程序安装完成后,整个系统就可以使用了,如下: 到这里就把从光盘开始安装到系统正常使用的过程分析完成,当然这个过程里,还有很多其它实现代码没有一一去解释,但这个主线已经完全清晰了,其它代码只需要顺藤摸瓜。...
阅读(1531) 评论(1)

reactos操作系统实现(69)

当用户安装系统时,就会出现几个向导界面,这几个向导界面是怎么样实现的呢?具体又是做些什么样的功能呢?它的实现代码如下:#001  VOID#002  InstallWizard(VOID)#003  {#004    PROPSHEETHEADER psh;#005    HPROPSHEETPAGE ahpsp[8];#006    PROPSHEETPAGE psp =...
阅读(1483) 评论(1)

reactos操作系统实现(68)

前面介绍怎么样调用动态连接库里的InstallReactOS函数,下面就来分析这个函数的代码,看看这个函数是怎么运行向导界面,又做了些什么样的工作。如下:#001  DWORD WINAPI#002  InstallReactOS(HINSTANCE hInstance)#003  {#004      TCHAR szBuffer[MAX_PATH];#005      ...
阅读(1479) 评论(3)

reactos操作系统实现(67)

前面分析安装后,就会调用setup.exe程序运行,在入口函数里处理命令行参数newsetup后,就会调用函数newsetup来运行,下面来仔细地分析这个函数是到底做什么事情。如下:#001  static VOID#002  RunNewSetup (HINSTANCE hInstance)#003  {#004    HMODULE hDll;#005    PINST...
阅读(1102) 评论(0)

reactos操作系统实现(66)

 当选择重新启动后,就会进入最后阶段安装,进入有界面安装。这里主要通过程序setup.exe来实现的,它的实现代码在目录reactos/base/setup/setup里。就可以进安装驱程序和系统一些配置信息,如下: 下面就是程序入口点的代码,从这里可以看到这个程序与前面的安装程序是不一样的,它是采用应用程序的方式来运行,也就是加载了几个内核DLL才能运行这个程序。#001  ...
阅读(1194) 评论(0)

reactos操作系统实现(65)

 激动人心的时刻到了,最后安装成功了。会出现下面的界面,如下:  上面成功的实现代码如下:#001  static PAGE_NUMBER#002  SuccessPage(PINPUT_RECORD Ir)#003  { 显示成功安装的信息。#004      MUIDisplayPage(SUCCESS_PAGE);#005  #006     ...
阅读(1621) 评论(0)

reactos操作系统实现(64)

在安装一个操作系统时,绝大多数都是把引导程序安装在硬盘里,下面就来了解安装到硬盘里具体过程,实现代码如下:#001  static PAGE_NUMBER#002  BootLoaderHarddiskPage(PINPUT_RECORD Ir)#003  {#004      UCHAR PartitionType;#005      NTSTATUS Status;...
阅读(1340) 评论(1)

reactos操作系统实现(63)

 前面把注册表初始化完成之后,就开始进行安装引导程序了。这里安装的引导程序是分区引导程序,或者安装到软盘引导程序。当然也可以选择跳过不安装它,界面如下:  这个函数的代码如下:#001  static PAGE_NUMBER#002  BootLoaderPage(PINPUT_RECORD Ir)#003  {#004      UCHAR PartitionTy...
阅读(1258) 评论(0)

reactos操作系统实现(62)

当文件拷贝完成后,主要就是把已经拷贝的文件进行注册表登记,还需要把用户在安装过程里选择的配置保存到注册表,同时也需要把检查到的硬件保存到注册表里。其实注册表,就是保存一些配置信息,这样下一次启动时,就可以直接把这些信息加载到内存就行了,不需要用户重新选择,也不需要重新搜索硬盘配置。代码如下:#001  static PAGE_NUMBER#002  RegistryPage(PINPU...
阅读(1246) 评论(0)

reactos操作系统实现(61)

前面准备好文件后,就需要从光盘里拷贝文件到安装目录,下面就是这个过程的界面:实现这个过程的代码如下:#001  static#002  PAGE_NUMBER#003  FileCopyPage(PINPUT_RECORD Ir)#004  {#005      COPYCONTEXT CopyContext;#006   显示拷贝文件的标题。#00...
阅读(1391) 评论(0)

reactos操作系统实现(60)

在拷贝文件到磁盘之前,需要把压缩包的文件解压,然后才能拷贝文件到安装目录里,它的代码如下:#001  static PAGE_NUMBER#002  PrepareCopyPage(PINPUT_RECORD Ir)#003  {#004      HINF InfHandle;#005      WCHAR PathBuffer[MAX_PATH];#006     ...
阅读(1113) 评论(0)
24条 共2页1 2 下一页 尾页
    个人资料
    • 访问:5594041次
    • 积分:73134
    • 等级:
    • 排名:第25名
    • 原创:1587篇
    • 转载:61篇
    • 译文:11篇
    • 评论:2086条
    文章存档
    最新评论