无忧启动论坛

标题: IO-RAMOS的理解 [打印本页]

作者: 2010p212937    时间: 2016-11-6 12:05
标题: IO-RAMOS的理解
本帖最后由 2010p212937 于 2016-11-30 09:12 编辑

写这贴子主要是想折腾win10的 IO RAMOS,想把自己对这种方式的理解写出来,看大家有没有更方便的做法,这个方案的原作者是本论坛的2012wuzhong。


大概的思路是这样的,
1,安装一个以X盘为系统盘的系统,装好P驱软件
1,用X盘上的系统文件制作一个本机驱动的PE(主要是用到本机的注册表和本机的硬件的驱动文件和P驱的驱动)
2,此PE用到的SDI(SDI其实是一个IMG文件),此SDI文件里有system32,Program Files (x86),Program Files的文件夹软连接到你的IO盘生成的R盘上的相对应的system32,Program Files (x86),Program Files文件夹(这个R盘就是你原系统C盘上的系统全部文件)
3,PE引导驱动时,会依次顺序用到,ramdisk.sysy   fbwf.sys   wimfsf.sys,但我们的做的PE故意去掉wimfsf.sys驱动,当PE引导到fbwf.sys驱动时,他完成的操作是释放到sdi的所有文件到X盘上,但是因为没有wimfsf.sys驱动,所以PE运行到这里就结束了,但windows系统引导到启动到用户桌面的过程包括各种进程,驱动已经完成,因为X盘上的所有操作都是软连接到IO模式R盘上的对应system32,Program Files (x86),Program Files等文件夹,所以此时系统的所有读写都是在IO盘上的。


现在聊聊系统引导过程和用户登录过程,主要是和smss文件和win32.sys有关,这两个文件在系统启动过程中会去调用system32里的相关文件,所以要用winhex 去修改他们的调用路径,因为只有当P驱的驱动加载时,R盘才会出现,当PE用ramdisk驱动,生成X盘时。他就可以去软连接R盘上的system32和原系统根目录的相关文件夹,当X盘和R盘都出现时,系统启动到SMSS,注册表初始化,加载win32子系统时,就不会出现找不到文件的错误,也就是蓝屏。

有不对的地方或者你有更好的方法请跟贴,谢谢


1,从系统引导过程和用户登录过程说起,大概是下面几方面(这部分是从看雪摘录过来的)

1. CPU 初始化
2. 驱动加载(BOOT、START、AUTO)
3. 系统线程创建
4. 各类进程创建顺序



之前部分内核部分已经初始化完成,下面进入创建第一个会话创建过程*(从这里开始相关--------------------------------------------)

*NewProcess:
   +0x084 UniqueProcessId : 0x00000330 Void
   +0x174 ImageFileName   : [16]  "autochk.exe" //磁盘检查进程
**Parent:
   +0x084 UniqueProcessId : 0x00000310 Void
   +0x174 ImageFileName   : [16]  "smss.exe"
//磁盘检查进程会加载驱动
*LoadDriver:
"\SystemRoot\System32\Drivers\Cdfs.SYS"
   +0x000 Length           : 0x4a
   +0x002 MaximumLength    : 0x4c
   +0x004 Buffer           : 0xe15a0980  "\SystemRoot\System32\Drivers\Cdfs.SYS"
*LoadDriver:
"\SystemRoot\System32\Drivers\diskdump.sys"
   +0x000 Length           : 0x52
   +0x002 MaximumLength    : 0x54
   +0x004 Buffer           : 0x805790ea  "\SystemRoot\System32\Drivers\diskdump.sys"
*LoadDriver:
"\SystemRoot\System32\Drivers\vmscsi.sys"
   +0x000 Length           : 0x4e
   +0x002 MaximumLength    : 0x50
   +0x004 Buffer           : 0xe1695000  "\SystemRoot\System32\Drivers\vmscsi.sys"

//*加载并初始化注册表*

//*加载win32子系统*
*LoadDriver:
"\SystemRoot\System32\win32k.sys"
   +0x000 Length           : 0x3e
   +0x002 MaximumLength    : 0x3e
   +0x004 Buffer           : 0xe15c68b0  "\SystemRoot\System32\win32k.sys" //win32子系统内核模块



作者: y7y007    时间: 2016-11-6 12:10
支持一下,期待各位继续折腾!发扬ramos
作者: 343119214    时间: 2016-11-6 12:30
义无反顾的支持 希望不要做一键的兼容性不好 做个手工教程
作者: y7y007    时间: 2016-11-6 12:48
一键的也可继续跟进
作者: 上帝是笨蛋    时间: 2016-11-6 13:22
支持。
作者: 不知    时间: 2016-11-6 14:26
顶一下
作者: 古今一梦    时间: 2016-11-6 15:26
赞一个
作者: wuyouman01    时间: 2016-11-6 16:11
楼主你好,请问支持win10 win8的metro吗?
作者: 追风    时间: 2016-11-6 18:17
支持下,谢谢分享教程。
作者: 2012gdszlwq    时间: 2016-11-6 20:50
义无反顾的支持!!!!
作者: 12250279    时间: 2016-11-6 20:56
希望发布教程。。。。  图文的那种,
作者: tzxinqing    时间: 2016-11-30 08:55
支持下,谢谢分享教程。
作者: happysong21    时间: 2016-11-30 14:30
支持楼主,期待实现工具!
作者: 2011xiongdeyuan    时间: 2016-11-30 18:05
支持下,谢谢分享教程
作者: xman00    时间: 2019-12-23 20:34
回顾,感觉好高深。
作者: wpyjp    时间: 2021-9-23 23:29
#在这里快速回复#很给力!
作者: nndx2009    时间: 2021-11-17 21:59
技术太深奥了,小白完全不懂
作者: nndx2009    时间: 2021-11-18 20:11
支持楼主。
作者: 7568168    时间: 2021-11-21 18:49

作者: cntvic    时间: 2023-12-25 15:54
感谢分享
作者: gxbcm    时间: 2024-8-1 17:44
感谢分享





欢迎光临 无忧启动论坛 (http://bbs.wuyou.net./) Powered by Discuz! X3.3