无忧启动论坛

标题: [讨论][已有成果]如何简化 TXTSETUP.SIF ?... [打印本页]

作者: Null    时间: 2006-7-16 01:56
标题: [讨论][已有成果]如何简化 TXTSETUP.SIF ?...
红叶的 TXTSETUP.SIF 很小...
在启动显示进度条时(>>>===),还有1/4的时候就开始到Logo图形界面了...

但它的 TXTSETUP.SIF 只是 WinXP Sp1 的...

敢问,TXTSETUP.SIF 是如何精简的?

精简 TXTSETUP.SIF,可是能加快启动速度的哦...请大家发表一下看法....


今天搞了一天,终于弄出了一个简化版的,只有 64.0 KB (65,589 字节) For WinXP SP2 的 PE

在我的机子上没问题(P4,2.0A),不知其它的如何,希望大家能帮忙测试一下...
哦,其中关于64位的字段我全删了,谁看看有什么不妥吗?

有空看看 23 和 26 楼... 里面有些说明...

[ 本帖最后由 Null 于 2006-7-17 01:29 AM 编辑 ]

Lite.jpg (198.57 KB, 下载次数: 221)

Lite.jpg

liter.jpg (217 KB, 下载次数: 231)

liter.jpg

Lite TXTSETUP.rar

13.37 KB, 下载次数: 435, 下载积分: 无忧币 -2

Lite TXTSETUP For WinXP SP2

TXTSETUP.rar

11.62 KB, 下载次数: 83, 下载积分: 无忧币 -2


作者: strongchen    时间: 2006-7-16 02:10
整个pe 最不熟悉就是 TXTSETUP.SIF 这个文件,相关讨论的帖子也不多。。

大部分 TXTSETUP.SIF 的帖子都是关于安装windows的时候的,pe的 TXTSETUP.SIF都没怎么说过

找不到相关的资料(国外的bbs有没有讨论?)
作者: strongchen    时间: 2006-7-16 02:24
有没有微软 winpe sp1 版 的原装 TXTSETUP.SIF 呢,这样可以比较一下省略了那些部分
作者: 老毛桃    时间: 2006-7-16 02:25
原帖由 strongchen 于 2006-7-16 02:24 发表
有没有微软 winpe sp1 版 的原装 TXTSETUP.SIF 呢,这样可以比较一下省略了那些部分

嗯,这是个不错的方法
作者: strongchen    时间: 2006-7-16 02:28
红叶的 TXTSETUP.SIF

其中的 [WinntDirectories] 字段内容如下:

[WinntDirectories]
1="\"
2=system32
3=system32\config
4=system32\drivers
5=system
17 =system32\drivers\etc
20 =inf
22 =Fonts
45 =Temp
58 =%MUI_PRIMARY_LANG_ID_DIR%
124 =WinSxS
125 =WinSxS\Manifests
126 =WinSxS\InstallTemp

显然这些目录都是 winpe有的,我估计 [SourceDisksFiles] 下面的文件,在以上目录的就保留,其余的就删除。。

这样会快很多吧
作者: Null    时间: 2006-7-16 02:28
不知哪里找

似乎红叶时说过,TXTSETUP.SIF 是由 *** 提供的,Sorry 阿,忘记了....

谁能去找到这个 *** 阿,要向他学习一下....
作者: Null    时间: 2006-7-16 02:33
来自逍遥茶的
Windows 2003 版

他的那张光盘...
问题挺多的,老出错...很郁闷

TXTSETUP.rar

28.42 KB, 下载次数: 70, 下载积分: 无忧币 -2


作者: strongchen    时间: 2006-7-16 02:37
ms 红叶的 TXTSETUP.SIF 在只[SourceDisksFiles]字段中 保留了 file=1,file=100的文件

有些昏ing。。。。

[ 本帖最后由 strongchen 于 2006-7-16 02:40 AM 编辑 ]
作者: Null    时间: 2006-7-16 02:48
的确很晕...

想到一个办法....
先弄好光盘,然后弄个文件名列表出来,
用[SourceDisksFiles]字段中的文件名和列表中的对比
如果存在,保留该行,反之则删掉这行....
作者: strongchen    时间: 2006-7-16 02:53
像这样:  ,,,,,,,221 是代表文件在 221 所代表的目录中。。。

因为 winpe的文件都只在

[WinntDirectories]
1="\"
2=system32
3=system32\config
4=system32\drivers
5=system
17 =system32\drivers\etc
20 =inf
22 =Fonts
45 =Temp
58 =%MUI_PRIMARY_LANG_ID_DIR%
124 =WinSxS
125 =WinSxS\Manifests
126 =WinSxS\InstallTemp

这几个目录里面。。所以 ,,,,,,, 后面的数字如果不在以上范围,应该都可以删除了。

如果有批处理高手搞个自动的bat就好了
作者: strongchen    时间: 2006-7-16 02:54
把红叶的文件和xpe的文件 中 [SourceDisksFiles] 字段的所有内容删除。

发现剩下的内容都是有2000行左右,显然 红叶比xpe少的内容都在[SourceDisksFiles] 里面

[ 本帖最后由 strongchen 于 2006-7-16 03:16 AM 编辑 ]
作者: Null    时间: 2006-7-16 04:08
原帖由 strongchen 于 2006-7-16 02:54 AM 发表
把红叶的文件和xpe的文件 中  字段的所有内容删除。

发现剩下的内容都是有2000行左右,显然 红叶比xpe少的内容都在 里面


的确是在
[SourceDisksFiles] 段

可问题是如何去掉多余的内容,我试了几次,老错误和提示缺文件
作者: strongchen    时间: 2006-7-16 10:26
估计至少不能去掉cd目录里面有的文件,还有inf目录下面某些inf文件内容有的文件。。。

而且比较inf下面的文件,你会发现红叶那边的inf文件size也特别小,不知道有没有删减,越说越昏了。

[ 本帖最后由 strongchen 于 2006-7-16 10:27 AM 编辑 ]
作者: Null    时间: 2006-7-16 11:06
这样就很麻烦了....
作者: l1982012800    时间: 2006-7-16 20:24
试用一下下,待会儿再来评价
作者: strongchen    时间: 2006-7-16 21:57
lz是按cd里面的文件来精简的么?把经验写一下。。呵呵
作者: strongchen    时间: 2006-7-16 22:31
在老九160m的iso中提示 ohci1394.sys文件丢失。。

看来只适合在lz自己造的xpe中使用
作者: Null    时间: 2006-7-16 22:38
原帖由 strongchen 于 2006-7-16 10:31 PM 发表
在老九160m的iso中提示 ohci1394.sys文件丢失。。

看来只适合在lz自己造的xpe中使用


???
请问是 WinXP SP2 的吗?

与 Win2K3 的是不通用的....

你可以这样解决

[SourceDisksFiles]
下,加一句:
ohci1394.sys = 100,,,,,,3_,4,1,,,1,4
作者: strongchen    时间: 2006-7-16 22:51
ohci1394.sys这个文件在cd里面是没有的,在TXTSETUP.SIF 里面却有。

估计用不同的插件,和windows版本生成的 TXTSETUP.SIF 是不同的

(比如用了tureimage 插件就会在TXTSETUP.SIF 中增加4个选项)

所以TXTSETUP.SIF 是不能够有模板的。。lz最主要的是说出精简的具体原理

还有就是想办法令到精简的过程用bat文件完成。

(我在dos联盟曾经看见有人提出用命令行批量出来文本的问题,用在这里很合适)
作者: sdb001    时间: 2006-7-16 22:51
这个有点难度了,两个月了越搞要解决的问题越多,我连字体都换成了10M的,精简的在CMD下显示不了中文,先做一张用着,再来研究尝试的问题吧,哈哈.人气太少了,有人能解决一下就好,没有查到相关资料
        我觉得红叶的nu2和XPE的不可能一样,我们不能按照红叶的方式 来搞XPE,毕竟XPE搞了个仿XP的,至少加了IE类的东西.
作者: strongchen    时间: 2006-7-16 22:53
原帖由 sdb001 于 2006-7-16 10:51 PM 发表
这个有点难度了,两个月了越搞要解决的问题越多,我连字体都换成了10M的,精简的在CMD下显示不了中文,先做一张用着,再来研究尝试的问题吧,哈哈.人气太少了,有人能解决一下就好,没有查到相关资料
        我觉得红叶 ...


宋体的问题已经解决了 看这个帖子:http://bbs.wuyou.net/forum.php?m ... &extra=page%3D2
作者: Null    时间: 2006-7-16 23:26
原帖由 strongchen 于 2006-7-16 10:51 PM 发表
ohci1394.sys这个文件在cd里面是没有的,在TXTSETUP.SIF 里面却有。

估计用不同的插件,和windows版本生成的 TXTSETUP.SIF 是不同的

(比如用了tureimage 插件就会在TXTSETUP.SIF 中增加4个选项)

所以T ...


也没有什么原理拉,我的做法是:

去掉多余的空行
空行太多,碍眼,且增加操作难度...

优化目录
[WinntDirectories]
1   = "\"
2   = system32
3   = system32\config
4   = system32\drivers
5   = system
17  = system32\drivers\etc
20  = inf
22  = Fonts
45  = Temp
58  = %MUI_PRIMARY_LANG_ID_DIR%
124 = WinSxS
125 = WinSxS\Manifests
126 = WinSxS\InstallTemp

去掉 [SourceDisksNames.*64]
我的XP是32位的,似乎没必要要64的文件...
就是不知在64位的机上会怎么样。

优化 ["Keyboard Layout"]
将多余的语言去掉,只保留 00000804 ="美式键盘(中文)"
(似乎整个删了也没问题...)

去掉 [*.DeleteOnUpgrade]
光盘是死的,无法这样操作...

去掉 [Files.BackupOnOverwrite]
光盘是死的,无法这样操作...

到这里,文件应该为 370+K

接下来时处理
[SourceDisksFiles]
(这个有点难说,基本上是看文件名是试来的...等我整理好再贴出来...)
作者: Null    时间: 2006-7-17 00:20
在我的 PE 上(WinXP SP2) 最简的 [SourceDisksFiles] 段如下...

[SourceDisksFiles]
ntoskrnl.exe=100,,,,,,,,3,3,,1,2
c_936.nls=1,,,,,,3_,2,0,0,,1,2
halaacpi.dll = 100,,,,,,3_,2,3,,,1,2
kdcom.dll    = 1,,,,,,3_,2,0,0,,1,2
setupreg.hiv = 100,,,,,,_3,,3
vgaoem.fon   = 1,,,,,,3_,22,0,0,,1,2
ntdll.dll    = 100,,,,,,_6,2,0,0,,1,2

不知其它的能系统能不能适用...
一个一个文件加的...一共生成了11次镜像,

总的来说,在引导阶段(还没有图形界面的时候),所需的文件并不多...
对于 PE 来说,就是单纯的引导,文件位置已经固定,新的设置对他已经没有意义,
注:区别于系统安装哦...
只要能通过引导,进入下一阶段,TXTSETUP.SIF 的任务基本完成了...

其它字段正在研究中....

PS:今天生成的镜像次数不下 50+
可怜的硬盘....
作者: strongchen    时间: 2006-7-17 00:32
期待 [SourceDisksFiles] 字段的处理方法。。(如果会编程应该可以省些劳力)
作者: Null    时间: 2006-7-17 01:14
原帖由 strongchen 于 2006-7-17 12:32 AM 发表
期待  字段的处理方法。。(如果会编程应该可以省些劳力)


23楼已经说了....
作者: Null    时间: 2006-7-17 01:25
[WinntDirectories] 和 [SourceDisksFiles] 的绝对最简形式如下:

  1. [WinntDirectories]
  2. 1=""
  3. 2=system32
  4. 3=system32\config
  5. 22=Fonts

  6. [SourceDisksFiles]
  7. ntoskrnl.exe=100,,,,,,,,3,3,,1,2
  8. c_936.nls=1,,,,,,3_,2,0,0,,1,2
  9. halaacpi.dll = 100,,,,,,3_,2,3,,,1,2
  10. kdcom.dll    = 1,,,,,,3_,2,0,0,,1,2
  11. setupreg.hiv = 100,,,,,,_3,,3
  12. vgaoem.fon   = 1,,,,,,3_,22,0,0,,1,2
  13. ntdll.dll    = 100,,,,,,_6,2,0,0,,1,2
复制代码


是不可能比这还要简单了...
值得提醒的是:
这里只包含一种电源管理模式,其它的需要另外添加
或许下面这个会通用一点

  1. [SourceDisksFiles]
  2. ntoskrnl.exe = 100,,,,,,,,3,3,,1,2
  3. kdcom.dll    = 1,,,,,,3_,2,0,0,,1,2
  4. ntdll.dll    = 100,,,,,,_6,2,0,0,,1,2

  5. ;Codepage
  6. c_936.nls    = 1,,,,,,3_,2,0,0,,1,2
  7. c_1252.nls   = 1,,,,,,3_,2,0,0,,1,2
  8. c_437.nls    = 1,,,,,,3_,2,0,0,,1,2
  9. c_850.nls    = 1,,,,,,3_,2,0,0,,1,2
  10. l_intl.nls   = 1,,,,,,3_,2,0,0,,1,2
  11. c_10008.nls  = 1,,,,,,,,3,3

  12. ;注册表
  13. setupreg.hiv = 100,,,,,,_3,,3

  14. ;字体
  15. vgaoem.fon   = 1,,,,,,3_,22,0,0,,1,2

  16. ;电源管理
  17. acpi.sys     = 100,,,,,,3_,4,1,,,1,4
  18. acpi.inf     = 100,,,,,,,20,0,0
  19. acpiec.sys   = 1,,,,,,3_,4,1,,,1,4
  20. halaacpi.dll = 100,,,,,,3_,2,3,,,1,2
  21. halacpi.dll  = 100,,,,,,3_,2,3,,,1,2
  22. halapic.dll  = 100,,,,,,3_,2,3,,,1,2
  23. halmacpi.dll = 100,,,,,,3_,2,3,,,1,2
  24. wmiacpi.sys  = 100,,,,,,,4,1
复制代码

在23楼已经提过关于 [SourceDisksFiles] 的简化--文件一定不多,可以一个一个的试
(可以用 PEBuilder 建一个最小系统,约140M,直接将插件目录改名,禁用全部插件...)
[SourceDisksFiles] 出来了,[WinntDirectories] 也就可以开始减肥了...

剩下的字段,查看附件的文件,一般除了安装部分和硬件相关部分不要动,其它的,看这不爽就试着删看看....
56.5 KB (57,886 字节)

再次说明:这是针对 WinXP SP2 的 PE 的,其它的系统应该会不兼容....

[ 本帖最后由 Null 于 2006-7-17 02:44 AM 编辑 ]

liter.jpg (217 KB, 下载次数: 194)

liter.jpg

TXTSETUP.rar

11.62 KB, 下载次数: 46, 下载积分: 无忧币 -2


作者: Null    时间: 2006-7-17 01:43
个人认为,在图形界面出现前的启动过程中,但部分时间应该是放在硬件的识别上
TXTSETUP.SIF 类似一个数据库,里面包含文件的位置和一些硬件的信息...
在 PE 启动中,系统并没有花太多的时间处理 [SourceDisksFiles] 字段
证:我将 [SourceDisksFiles] 字段减到极限后,启动速度并没有太大的改观...

恰恰硬件那部分,不知如何下手,是全部删除还是全部保留,或者删除一部分,不该乱来...
怕删除了,进入系统不正常....
回想红叶的,进度条约到 3/4 的时候就结束了,而他的[SourceDisksFiles] 字段比我的要多得多...
这不就说明了是硬件识别部分占用绝大部分时间?

所以,精简应该从硬件的识别开始...
作者: strongchen    时间: 2006-7-17 02:28
硬件部分看来经常做ghost的高手会比较熟悉。。。
作者: 老毛桃    时间: 2006-7-17 10:32
原帖由 Null 于 2006-7-17 00:20 发表
不知其它的能系统能不能适用...
一个一个文件加的...一共生成了11次镜像,
。。。
PS:今天生成的镜像次数不下 50+
可怜的硬盘....  

呵呵,精神可嘉,可惜的是,启动速度看不出有提高。
作者: Null    时间: 2006-7-17 17:29
原帖由 老毛桃 于 2006-7-17 10:32 AM 发表

呵呵,精神可嘉,可惜的是,启动速度看不出有提高。


呵呵,期待某人能对硬件部分的精简....
作者: Rinrin    时间: 2006-7-19 09:39
Windows XP 文本模式安装环境概述
作者:Rinrin
    Windows XP 的安装是从文本模式(Text-mode)开始的,文本模式安装的引导器是SETUPLDR.BIN,它是
NTLDR的一个变体,比NTLDR要大一些,可能是含有解压缩代码的缘故吧.SETUPLDR.BIN由两部分组成:初始化代码和Setup Loader.
从文件中的文本信息来看,初始化代码主要完成进入保护模式的任务.ntdetect.com由Setup Loader执行,用来检测硬件,主要检测以下内容:
        Computer ID
        总线/适配器 类型
        SCSI适配器
        视频卡
        键盘
        串行口
        并行口
        软驱
        鼠标/指向设备
        浮点协处理器
    这些信息以后将被存储到HKLM\Hardware\Description中.
    由于Setup Loader含有解压缩代码,所以它加载的各种文件(包括Txtsetup.sif等文件)均可以被压缩为
MS-Cabinet格式.
    Setup Loader随后装载Txtsetup.sif文件.这是个文本文件,用来指导文本模式的安装.该文件内容说明如下:
        [Version]    ;版本信息
        signature="$Windows NT$"
        ClassGUID={00000000-0000-0000-0000-000000000000}

        [SourceDiskNames]    ;定义文件路径的标识号,文本模式引导时使用
        _x = %cdname%,%cdtagfile%,,""    ;标识号=安装盘名,标志文件,?,文件所在路径
        ......

        [SourceDiskNames.x86]
        [SourceDiskNames.amd64]
        [SourceDiskNames.ia64]    ;对于不同的处理器平台,定义文件路径的标识号

        [WinntDirectories]    ;定义安装目录的数字标识
        1  = "\"
        2  = system32
        ......

        [SourceDisksFiles]
        bootvid.dll  = 1,,,,,,3_,2,0,0,,1,2
        ;文件名=文件来源([SourceDiskNames.xxx]中定义),,,,,,文件的来源2([SourceDiskNames]中定
        ;义,文件复制目的地([WinntDirectories]中定义),?,?,重命名选项,?,?
        ......
        [SourceDisksFiles.ia64]
        [SourceDisksFiles.amd64]
        [SourceDisksFiles.x86]

        [Strings]    ;定义字符串
        cdname = "Windows XP Professional CD-ROM"
        ......

        [SetupData]
        SetupSourcePath = "\"
        MajorVersion = 5
        MinorVersion = 1
        DefaultPath=\WINDOWS
        OsLoadOptions = "/fastdetect /nodebug"
        ForceScsi = 1
        ForceDiskClass = 1
        ForceCDRom = 1
        Architecture = i386
        DriverCabName=driver.cab,sp1.cab
        ProductType = 0
        LoadIdentifier  = %wks_id%
        LoadIdentifierCancel  = %cancel_id%
        LoadIdentifierWin9x  = %9x_id%
        BaseVideoLoadId = %wks_id_vga%
        RequiredMemory = 67108864
        Pagefile = 115,250
;--------------------------------------------------
        [Files.DeleteOnUpgrade]
        [Directories.DeleteOnUpgrade]
        [Files.BackupOnOverwrite]
        [Files.BackupOnUpgrade]
        [Files.UpgradeWin31]    ;OS升级时进行的操作
;--------------------------------------------------
        [DiskDrivers.Load]
        [FileSystems.Load]
        [HardwareIdsDatabase]
        [Map.Computer]
        [bootvid]
        [hal]
        [Hal.Load]
        [ntdetect]
        [Map.Display]
        [Display.Load]
        [Map.Mouse]
        [Map.Keyboard]
        [Map.PROM]
        [PROM.Version]
        [Map.SCSI]
        [SCSI.Load]
        [BootBusExtenders.Load]
        [BusExtenders.Load]
        [InputDevicesSupport.Load]
        [Keyboard.Load]

        ;[HardwareIdsDatabase]    设备识别,没有此项设备无法工作
        ;[xxxx.Load]    加载驱动程序
        ;[Map.xxxx]    设备映射
;--------------------------------------------------
        [files.pcmcia]
        [files.pci]
        [files.pciide]
        [files.intelide]
        [files.viaide]
        [files.cmdide]
        [files.toside]
        [files.aliide]
        [files.acpi]
        [files.isapnp]
        [files.ohci1394]
        [files.sbp2port]
        [files.lbrtfdc]
        [files.video]
        [files.vga]
        [files.i8042]
        [files.sermouse]
        [files.inport]
        [files.hidusb]
        [files.mouhid]
        [files.usbohci]
        [files.usbehci]
        [files.usbuhci]
        [files.usbhub]
        [files.usbccgp]
        [files.kbdhid]
        [files.usbstor]
        [SystemPartitionFiles]
        [FileFlags]
        [ScsiClass.Load]
        [FloppyDrivers.Load]
        [CdRomDrivers.Load]
        [MouseDrivers.Load]
        [SpecialFiles]
        [files.none]
        [Files.KeyboardLayout]
        [KeyboardLayoutId]
        [Files.RemoteBoot]

        ;[files.xxxx]    驱动程序对应的文件
;--------------------------------------------------
        [HiveInfs.Fresh]
        [HiveInfs.Fresh.RemoteBoot]
        [HiveInfs.Upgrade]
        [HiveInfs.Upgrade]
        [NetServicesToDisable]
        [SetupKeysToMigrate]
        [RootDevicesToDelete.clean]
        [RootDevicesToDelete]
        [RootDeviceClassesToDelete]
        [RootDeviceClassesToDelete.nt4]
;--------------------------------------------------
        [ACPIOptions]
        ACPIEnable = 2
        ;ACPIEnable=0    安装时不启用ACPI
        ;ACPIEnable=1    如果存在ACPI Bios,就启用ACPI
        ;ACPIEnable=2    根据ACPIBiosDate和GoodACPIBios决定是否启用ACPI
        ACPIBiosDate = 01,01,1999    ;该日期以后的Bios假定为支持Acpi,之前的要参考[GoodACPIBios]
        [NWACL]    ;NW(New Windows?) Acpi Compatibility List
        [ABitBP6]...[ViaVP3A]
        [GoodACPIBios]    ;与Windows兼容的ACPI Bios
        [AcerAspire3100]...[VobisHighscreen]
;--------------------------------------------------
        [BiosInfo]
        [nls]
        AnsiCodepage     = c_936.nls,936
        OemCodepage      = c_936.nls,936
        MacCodepage      = c_10008.nls,10008
        UnicodeCasetable = l_intl.nls,0804
        OemHalFont       = vgaoem.fon
        DefaultLayout    = 00000804
        [Keyboard]
        [FontListE]
        ["Keyboard Layout"]
        [Files.KeyboardLayout]
;--------------------------------------------------
        [DiskDriverMap]
        [ScsiClass]
        [FileSystems]
        [FloppyDrivers]
        [CdRomDrivers]
        [MouseDrivers]
        [FontListE]
        [DiskDrivers]
        [InputDevicesSupport]
        [SCSI]
        [BootBusExtenders]
        [BusExtenders]
        [Computer]
        [Display]
        [Mouse]
        ;定义加载时显示的字符串
;--------------------------------------------------
        [DiskSpaceRequirements]



    接下来的步骤是:
        加载Biosinfo.inf,该文件存储了硬件识别数据,用来决定是否提供ACPI或Apm的支持.
        在安装画面的底部显示 Press F6 if you need to install a third party SCSI or RAID driver...
        在安装画面的底部显示 Press F2 to run Automated System Recovery(ASR)...
        在这个阶段如果按下F5的话,可以在以后选择不同的HAL
        查找TagFile,一般是disk101,Win51ip之类的文件.如果不存在,则要求插入相应的磁盘或光盘.
        加载Ntkrnlmp.exe(Windows Executive)
        如果之前按下F5的话,这时可以选择不同的HAL,否则根据ACPI,APIC及多处理器的情况自动加载不同的HAL
    还可以用厂商提供的HAL.
        加载KDCOM.DLL(Kernel Debugger).
        加载Bootvid.dll(VGA Boot Driver),如果此文件不存在,Setup Loader提示ntkrnlmp.exe不能被加载.
        加载Setupreg.hiv注册表文件.主要含有ControlSet001\Control,ControlSet001\Services两项.
        加载OemHalFont,一般是Terminal字体,文件名由txtsetup.sif中[nls]小节的OemHalFont指定,一般为
    vgaoem.fon.
        加载nls文件,一般为c_xxx.nls和l_intl.nls.
        加载setupdd.sys(Windows NT Setup (kernel mode portion of character-based phase)).如果是中文
    版,还要加载Spddlang.sys(Windows NT Setup kernel mode lanaguage helper for FarEast).
        加载BootBusExtenders,有
        pci.sys(NT Plug and Play PCI Enumerator)
        acpi.sys(ACPI Driver for NT)
        wmilib.sys(WMI support library Dll),该文件丢失时,会提示acpi.sys无法找到,不知道算不算bug?
        isapnp.sys(PNP ISA Bus Driver)
        acpiec.sys(ACPI Embedded Controller Driver)
        oprghdlr.sys(ACPI Operation Registration Driver),或从字面上看是OPerationReGionHanDLeR.
        ohci1394.sys(1394 OpenHCI Port Driver)
        1394bus.sys(1394 Bus Device Driver)

        加载BusExtenders,有
        pcmcia.sys(PCMCIA Bus Driver)
        pciide.sys(Generic PCI IDE Bus Driver)
        pciidex.sys(PCI IDE Bus Driver Extension)
        intelide.sys(Intel PCI IDE Driver)
        viaide.sys(Generic PCI IDE Bus Driver)
        cmdide.sys(CMD PCI IDE Bus Driver)
        toside.sys(Toshiba PCI IDE Controller)
        aliide.sys(ALi mini IDE Driver)
        mountmgr.sys(Mount Manager)
        ftdisk.sys(Fault Tolerant Disk Driver)
        partmgr.sys(Partition Manager)
        fdc.sys(Floppy Disk Controller Driver)
        dmload.sys(NT Disk Manager Startup Driver)
        dmio.sys(NT Disk Manager I/O Driver)
        sbp2port.sys(SBP-2 Protocol Driver)
        lbrtfdc.sys(Toshiba Libretto floppy controller)

        加载InputDeviceSupport,有
        hidclass.sys(Hid Class Library)
        hidparse.sys(Hid Parsing Library)
        usbd.sys(Universal Serial Bus Driver)
        usbport.sys(USB 1.1 & 2.0 Port Driver)
        usbehci.sys(EHCI eUSB Miniport Driver)
        usbohci.sys(OHCI USB Miniport Driver)
        usbuhci.sys(UHCI USB Miniport Driver)
        usbhub.sys(Default Hub Driver for USB)
        usbccgp.sys(USB Common Class Generic Parent Driver)
        hidusb.sys(USB Miniport Driver for Input Devices)
        serial.sys(Serial Device Driver)
        serenum.sys(Serial Port Enumerator)
        usbstor.sys(USB Mass Storage Class Driver)

        加载Display Driver,有
        vga.sys(VGA/Super VGA Video Driver)
        videoprt.sys(Video Port Driver)

        加载Keyboard Driver,有
        i8042prt.sys(i8042 Port Driver)
        kbdhid.sys(HID Mouse Filter Driver)
        kbdclass.sys(Keyboard Class Driver)

        加载SCSI Driver,如果之前按下F6键,现在可以加载其他的驱动程序,不光是SCSI,也可以是CDROM或RAID控
    制器,甚至某些修改登录密码的工具(ntaccess,winkey)也是此时加载一个特殊的驱动程序,在以后的初始化时
    刻获得控制权的.默认加载的驱动程序很多,最先加载的是下面一个:
        scsiport.sys(SCSI Port Driver)
    其余的都是独立的驱动程序,其中atapi.sys(IDE/ATAPI Port Driver)是ide-cd驱动器的驱动程序,其余的有
        cpqarray.sys,aha154x.sys,sparrow.sys,symc810.sys,aic78xx.sys,i2omp.sys,dac960nt.sys,
        ql10wnt.sys,amsint.sys,asc.sys,asc3550.sys,mraid35x.sys,ini910u.sys,ql1240.sys,aic78u2.sys,
        symc8xx.sys,sym_hi.sys,sym_u3.sys,asc3350p.sys,abp480n5.sys,cd20xrnt.sys,ultra.sys,
        adpu160m.sys,dpti2o.sys,ql1080.sys,ql1280.sys,ql12160.sys,perc2.sys,hpn.sys,cbidf2k.sys,
        dac2w2k.sys

        接下来加载Disk Driver:dmboot.sys(NT Disk Manager Startup Driver)
        加载Floppy Driver:flpydisk.sys(Floppy Driver)
        加载SCSI class Driver,有
        classpnp.sys(SCSI Class System Dll)
        cdrom.sys(SCSI CD-ROM Driver)
        disk.sys(PnP Disk Driver)
        sfloppy.sys(SCSI Floppy Driver)
        ramdisk.sys(RAM Disk Driver)

        加载FileSystem Driver,有
        ksecdd.sys(Kernel Security Support Provider Interface)
        fastfat.sys(Fast FAT File System Driver)
        ntfs.sys(NT File System Driver)

        最后加载CDRom Driver:cdfs.sys(CD-ROM File System Driver)

[ 本帖最后由 Rinrin 于 2006-7-19 09:47 AM 编辑 ]
作者: strongchen    时间: 2006-7-19 10:16
好东西。。。慢慢看一下
作者: 老毛桃    时间: 2006-7-19 12:45
原帖由 Rinrin 于 2006-7-19 09:39 发表
Windows XP 文本模式安装环境概述
作者:Rinrin
    Windows XP 的安装是从文本模式(Text-mode)开始的,文本模式安装的引导器是SETUPLDR.BIN,它是
NTLDR的一个变体,比NTLDR要大一些,可能是含有解压缩代码的缘故吧 ...

嗯,不错,这个是要学习一下的
作者: fujianabc    时间: 2006-7-19 15:34
原帖由 Rinrin 于 2006-7-19 09:39 AM 发表
Windows XP 文本模式安装环境概述
作者:Rinrin
    Windows XP 的安装是从文本模式(Text-mode)开始的,文本模式安装的引导器是SETUPLDR.BIN,它是
NTLDR的一个变体,比NTLDR要大一些,可能是含有解压缩代码的缘故吧 ...

强啊。建议Rinrin新开一贴,并以此为顶楼内容,以方便今后的查找。
作者: 老毛桃    时间: 2006-7-19 15:54
原帖由 fujianabc 于 2006-7-19 15:34 发表

强啊。建议Rinrin新开一贴,并以此为顶楼内容,以方便今后的查找。

呵呵,是啊,我已经将这帖收藏了
作者: sdb001    时间: 2006-7-19 22:19
唉,看来这个问题要真正的研究一下才行!一连刻坏两张光盘了,在虚拟机里没有任何问题,在刻录成光盘后就是没有正常过,一直在虚拟机里测试,打算做完之后休息几天呢?看来要重头开始真正研究核心的问题了!
  在虚拟里测试没有任何加载问题,刻录成光盘后出现各种各样的错误,刚才就搞坏了两个,虚拟里没有问题,是否证明问题是出在硬件的方面,高手帮忙?
  file acpi.sys caused an unexpected error(4096) at line 5964 in d:\xpsprtm\base\boot\setup\setup.c.
        press any key to contiue!
望 高手现身,4096指什么,本人在这方面是菜鸟,怎么会搞出D盘呢?奇怪!
  我将出错的删除了之后随后又出现了问题!
  Insufficicut memory for ndis.sys
       press anykey to contiue
      在虚拟里无论怎么搞都没有问题,可以正常进入桌面,也可以上网的!问题出在硬件驱动上。
  第一个文件应该是显卡驱动文件,我的显卡是FX5200,第二个文件是网卡驱动吧!
2  = system32
3  = system32\config
4  = system32\drivers
  

[ 本帖最后由 sdb001 于 2006-7-19 10:25 PM 编辑 ]

未命名.JPG (29.1 KB, 下载次数: 181)

未命名.JPG

作者: Rinrin    时间: 2006-7-20 09:55
原帖由 sdb001 于 2006-7-19 10:19 PM 发表
唉,看来这个问题要真正的研究一下才行!一连刻坏两张光盘了,在虚拟机里没有任何问题,在刻录成光盘后就是没有正常过,一直在虚拟机里测试,打算做完之后休息几天呢?看来要重头开始真正研究核心的问题了!
   ...

acpi.sys是电源管理驱动程序
ndis.sys是网络设备接口驱动程序,比网卡驱动要高一层
出现d:xxx表示的是setupldr.bin的源代码所在位置
至于4096错误确实不知道是什么了
作者: sdb001    时间: 2006-7-20 22:31
哈哈,谢高手指教,我再试试吧,真的头晕了,估计问题是出在硬件的驱动上面!我查了一下,在我的光盘里,上述所说的NW文件基本就不存在!nidi倒是有,不过还是出现了错误,我查了一下,包括在我的一个网卡驱动的插件里,好像是一个VIA的集成网卡,因为我打算能在绝大多数的机器上可以上网,而且能识别RAID,SATA设备等,我用了BTS驱动的网卡和SATA驱动,唉,只能从头来了,我这东西是杂交做出来的,改了好多东西,可能有冲突!
    
  另:
  刚刚试了一下,用bart's PE生成的最基本的PE和添加了XPE1.04后的PE txesetup.sif文件通过文件比较完全一至!前者只保留了nu2shell和raddisk两个插件,其他的全部删除,后都只是添加了XPE Plugin1.04删除了help,wim,mediaplayer!两者的txesetup.sif文件完全相同,但用XPE比只用nu2多出80M容量,多出的文件并没有在txtsetup中留下痕迹!不知道null是否发现了这个问题,完全一至!
作者: secowu    时间: 2006-7-24 08:48
我一直没弄明白,为什么替换那个Ntkrnlmp.exe(Windows Executive)
文件没有成功,如果成功的话,就可以利用txtsetup的这个功能加载SATASCSI驱动,就可以做成真正的万能克隆版了
思路是这样的:
txtsetup.sif+diskpart+deploy
作者: Rinrin    时间: 2006-7-24 08:54
原帖由 secowu 于 2006-7-24 08:48 AM 发表
我一直没弄明白,为什么替换那个Ntkrnlmp.exe(Windows Executive)
文件没有成功,如果成功的话,就可以利用txtsetup的这个功能加载SATASCSI驱动,就可以做成真正的万能克隆版了
思路是这样的:
txtsetup.sif+d ...

这个为何要替换?
作者: sdb001    时间: 2006-7-24 13:05
感谢楼主所发的贴子,我的问题已经解决了,问题主要出在txtsetup.sif文件中的驱动加载上,现在终于能在真正的机器上运行了,上网速度也不错,就是没有显卡驱动,有点闪.
作者: wuyouman01    时间: 2006-7-28 22:58
txtsetup.sif可以加载SATASCSI驱动(共4处),如:
[SourceDisksFiles]
vmscsi.inf        = 1982,,,,,,,1982,0,0
vmscsi.cat        = 1982,,,,,,,1982,0,0
vmscsi.sy_        = 1982,,,,,,,1982,0,0
vmscsi.sys = 1,,,,,,4_,4,1,,,1,4

[HardwareIdsDatabase];添加VMSCSI
PCI\VEN_104B&DEV_1040= VMscsi

[SCSI.Load];添加VMSCSI
VMscsi = vmscsi.sys,4

[SCSI]
VMscsi = "VMware SCSI Controller"

这样应该可以修改OOBC使之支持SCSI。
作者: yitong    时间: 2006-8-1 09:13
txtsetup.sif 文件就易通的经验来讲,基本上就是用来生成 Winpe 的 Windows 安装盘里面的那个文件。
另外有一点要注意的是:[WinntDirectories] 有两段,搜索一下就出来了。
不是很赞成精简 txtsetup.sif 文件,反而建议扩展它,使它能自动加载更多的设备驱动,适用面更广些,牺牲一点时间也是值得的。不过,如果是 X86 的系统,把 X64 的内容去掉也无妨,反之亦然,因为它们是不起作用的。
要加载显卡驱动是可行的,在生成 Winpe 的时候加上支持即插即用 (PnP)(具体参数忘了,查一下说明文档吧),然后把显卡驱动加载的 Winpe 中(Winpe 中有一个命令行工具的,名称和语法也忘了),重新封装就好了。
如果是在虚拟机能运行但实际的电脑中不行,问题可以肯定出在驱动,对应设备的驱动有问题或没加载。
作者: 玉满堂    时间: 2006-8-2 20:59
个人经验来讲在对该文件不是特别特别了解的话最好别动 一旦修改 可能在你电脑上运行正常,但是有些电脑原来可以使用,该后就不能启动了提示缺少XXXX.XXX文件 精简此文件,加快的是速度(没人会去强调大小吧)减少的是兼容硬件平台.

以上理论无科学根据,纯个人经验.
作者: 玉满堂    时间: 2006-8-2 21:03
原帖由 yitong 于 2006-8-1 09:13 AM 发表
txtsetup.sif 文件就易通的经验来讲,基本上就是用来生成 Winpe 的 Windows 安装盘里面的那个文件。
另外有一点要注意的是: 有两段,搜索一下就出来了。
不是很赞成精简 txtsetup.sif 文件,反而建议扩展它,使 ...


本人从来不用BART PE闲里面垃圾多.一直都用OPK 我处理之后和bartpe一样 一样安插件(自己写的软件CMD的专处理插件)
OPK的命令是
mkimg.cmd [光盘位置] [生成文件位置][生成ISO名称] /PNP
作者: liuhj    时间: 2006-8-2 21:37
不明白楼上什么意思,能否解释一下。
作者: Null    时间: 2006-8-3 00:03
原帖由 yitong 于 2006-8-1 09:13 AM 发表
txtsetup.sif 文件就易通的经验来讲,基本上就是用来生成 Winpe 的 Windows 安装盘里面的那个文件。
另外有一点要注意的是: 有两段,搜索一下就出来了。
不是很赞成精简 txtsetup.sif 文件,反而建议扩展它,使 ...


的确,精简后会出现诸多问题...
缺文件是最常见的...

驱动之类,如声卡等于维护关系不大的,觉得应该去之,其他系统芯片的识别,觉得意义不大,认出来了,运行效率也大不到那里去。。。

这些比较麻烦...还是放一放。。。等那天知识够了才向他开刀。。。
作者: Null    时间: 2006-8-3 00:08
原帖由 玉满堂 于 2006-8-2 08:59 PM 发表
个人经验来讲在对该文件不是特别特别了解的话最好别动 一旦修改 可能在你电脑上运行正常,但是有些电脑原来可以使用,该后就不能启动了提示缺少XXXX.XXX文件 精简此文件,加快的是速度(没人会去强调大小吧)减少的是兼 ...


也不能说没有依据,比如源文件字段中的 Bmp 特别是 Gif 等文件,大可放心去掉,这些系统加载时绝对不会理会他的。。。

值得再次说明的是:
精简源文件列表,并不能把速度加快多少...
加载时间是耗在硬件的识别和安装驱动上...
优化的根本在于去掉与维护无关的硬件的识别...
作者: 玉满堂    时间: 2006-8-3 12:46
其实真正想要达到你们理想的效果,估计WINDOWS已经力不从心了,你们可以考虑LINUX LIVE CD 在硬件枚举上通过编程下下工夫,能有点效果吧.
作者: 老毛桃    时间: 2006-8-3 14:12
原帖由 Null 于 2006-8-3 00:08 发表


也不能说没有依据,比如源文件字段中的 Bmp 特别是 Gif 等文件,大可放心去掉,这些系统加载时绝对不会理会他的。。。

值得再次说明的是:
精简源文件列表,并不能把速度加快多少...
加载时间是耗在硬件 ...

光对 Txtsetup.sif 的文件说明部分精简,恐怕不见得会有多好的效果,我现在的 Txtsetup.sif 已经精简到了 44.5KB、Layout.inf(这个对启动似乎没有影响)也由 374KB 精简到了 2.4KB,但总感觉启动速度提高还是不够明显。只有对驱动部分进行精简,才会对启动速度有所提高。
作者: yitong    时间: 2006-8-3 22:37
原帖由 老毛桃 于 2006-8-3 02:12 PM 发表

光对 Txtsetup.sif 的文件说明部分精简,恐怕不见得会有多好的效果,我现在的 Txtsetup.sif 已经精简到了 44.5KB、Layout.inf(这个对启动似乎没有影响)也由 374KB 精简到了 2.4KB,但总感觉启动速度提高还是不 ...


毛桃和 NULL 能不能给出个具体的数字出来,精简前启动是多少秒,精简后又是多少?看看速度到底提升了多少。
如果能具体到哪个阶段是多少秒就更好了,那就可以分析出是哪个阶段最耗时,所作的精简又对哪个阶段有作用?
期待中……:)
作者: 123    时间: 2006-11-15 23:41
我想可以看看别人做的超精简的xpe,对比一下哪些可以删除。
作者: 123    时间: 2006-11-16 00:48
我用totalcommand比较我做的txtsetup.sif和老九的时发现老九的更改好像没什么规律,不过我在最后一行发现多了一行“; Optimized by nLite - www.nliteos.com”。估计先用nlite对安装盘精简后再做的。于是我用nlite试了一下,虽然在pebuilder处理时提示了几百个错误,不理它直接生成iso。果然进度条只走了2/3就进入桌面了!我想这应该是个好办法。
作者: cgfans999    时间: 2006-11-16 00:54
nlite的作者可能拿到了txtsetup.sif的内部资料 得以控制整个安装过程 而一些超白痴的东西他都不会 对于安装过程的控制 两年前我们就摸索的可以和nlite比
不过最终还是因为钱的原因吧 都淹没了
想不到老九竟写出来共享 自愧不如啊 有时间我们也把以前整理的资料拿出来 应该更全一些.
作者: 123    时间: 2006-11-17 16:50
我发现里面含有".load"的几个字段精简了对提高启动速度很明显,我精简这部分到刚能进入桌面那进度条才走了一半. 我还想把另一半进度条也精简掉,但一直蓝屏实在没办法了
作者: 老毛桃    时间: 2006-11-17 19:44
原帖由 123 于 2006-11-17 16:50 发表
我发现里面含有".load"的几个字段精简了对提高启动速度很明显,我精简这部分到刚能进入桌面那进度条才走了一半. 我还想把另一半进度条也精简掉,但一直蓝屏实在没办法了

这个地方不可以随便精简的

那一大堆的烂主板信息可以删除
作者: zhfzl2006    时间: 2006-11-24 10:54
学习!!!
作者: erhugod    时间: 2006-11-26 13:37
原帖由 strongchen 于 2006-7-16 02:24 AM 发表
有没有微软 winpe sp1 版 的原装 TXTSETUP.SIF 呢,这样可以比较一下省略了那些部分



我有比较过,不过是删了原版的,新加的几乎没有

http://soft.haosoft.cn/softa/usually/WINXP.rar  <-windows XP sp1 原版下载




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