|
asbai
高级用户
   
积分 653
发帖 252
注册 2006-4-16
状态 离线
|
『楼 主』:
[下载][原创]发两个做启动光盘的自制工具
使用 LLM 解释/回答一下
==============================================
1. FindCD
■ 通过定义标签文件,在多光驱环境正确分别启动光碟所在驱动器。
■ 跳过未装光盘的驱动器,不会出现经典的 “Retry,Abort,Fail” 错误。
■ 在 MS-DOS 7.1 环境下,能够自动设置 CDROM 环境变量
■ 通过程序返回码判断光盘盘符
■ 例子:
FindCD boot\myutil.tag - 查找并返回存在指定文件的光盘驱动器号
==============================================
2. mkramdsk
解决创建 Win98 光盘启动盘时碰到的 1GB 问题。由于年久失修,Win98 上不能稳定运行于部分内存超过 512MB 的机器,对于物理内存超过 1GB 的机器,更是在绝大部分硬件上都无法正常运行,经常出现包含模式错误、报告内存不足、启动失败等等错误(详情可以google:windows98 memory 1GB)。
另一方面,Win98 启动通常需要使用 xmsdsk 做虚拟系统盘。mkramdisk 首先侦测当前计算机中的物理内存总量和空闲XMS总量,然后调用 xmsdsk 工具分配 ramdisk。特性包括:
■ 仅为 Win98 保留 256MB 物理内存,其余内存作为 ramdisk 使用
■ ramdisk 的最小尺寸为 36864 KB,从高地址开始分配,驱动器号为 z:
■ xmsdsk 必须在工作路径或 path 路径中
■ 由于设计时仅为了解决自己的问题,没有定义可配置的命令行参数
■ 由于现代机器内存普遍较大,建议把 Win98 的内存交换文件放到 ramdisk 以增强性能(等于变向帮98使用大内存,呵呵)
Last edited by llm on 2006-4-28 at 15:35 ]
==============================================
1. FindCD
■ Identify the drive where the CD-ROM containing the disc is located correctly in a multi-CD drive environment by defining a tag file.
■ Skip drives without a disc installed, avoiding the classic "Retry, Abort, Fail" error.
■ In MS-DOS 7.1 environment, automatically set the CDROM environment variable.
■ Determine the CD-ROM drive letter through the program return code.
■ Example:
FindCD boot\myutil.tag - Find and return the drive letter of the CD-ROM containing the specified file
==============================================
2. mkramdsk
Solve the 1GB problem encountered when creating a Win98 CD boot disk. Due to aging, Win98 cannot stably run on some machines with memory exceeding 512MB. For machines with physical memory exceeding 1GB, it cannot run normally on most hardware, often resulting in errors such as mode errors, out-of-memory reports, and boot failures, etc. (For details, you can google: windows98 memory 1GB).
On the other hand, Win98 startup usually requires using xmsdsk to create a virtual system disk. mkramdisk first detects the total physical memory and free XMS memory in the current computer, and then calls the xmsdsk tool to allocate the ramdisk. Features include:
■ Reserve only 256MB of physical memory for Win98, and use the remaining memory as ramdisk.
■ The minimum size of the ramdisk is 36864 KB, allocated from the high address, and the drive letter is z:.
■ xmsdsk must be in the working path or the path.
■ Since it was designed only to solve its own problem, no configurable command-line parameters are defined.
■ Since modern machines generally have large memory, it is recommended to put the Win98 memory swap file on the ramdisk to enhance performance (which is equivalent to indirectly helping 98 use large memory, heh heh)
Last edited by llm on 2006-4-28 at 15:35 ]
附件
1: findcd.rar (2006-4-18 02:27, 16.04 KiB, 下载附件所需积分 1 点
,下载次数: 54)
附件
2: MkRamDsk.rar (2006-4-18 02:27, 11.13 KiB, 下载附件所需积分 1 点
,下载次数: 44)
|
|
2006-4-18 02:27 |
|
|
JonePeng
金牌会员
      D◎$ Fαп
积分 4562
发帖 1883
注册 2004-1-19 来自 广东广州
状态 离线
|
『第 2 楼』:
使用 LLM 解释/回答一下
Originally posted by asbai at 2006-4-18 02:27:
■ 仅为 Win98 保留 256MB 物理内存,其余内存作为 ramdisk 使用
Win98支持最大 768MB 物理内存,把 512M 的内存分给Win98用也不为过。
Originally posted by asbai at 2006-4-18 02:27:
■ Only reserve 256MB physical memory for Win98, and use the remaining memory as a ramdisk
Win98 supports a maximum of 768MB physical memory, and it's not excessive to allocate 512M memory for Win98 to use.
|

----====≡≡≡≡ 我的至爱,永远是MSDOS!≡≡≡≡====----
|
|
2006-4-20 23:52 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 3 楼』:
使用 LLM 解释/回答一下
光盘版的win98,建议换一种思路。不用xmsdsk的ramdisk,而用grub的ramdisk。
先制作一个win98的硬盘镜像(此镜像可以用gzip压缩),然后用grub的的map --mem命令把这个镜像模拟成ramdisk的硬盘来启动。这样的ramdisk直接就是c:盘,原来的硬盘将变成第二硬盘。
CD-ROM version of Win98, it is recommended to change the approach. Instead of using XMSDsk's RAM disk, use GRUB's RAM disk. First, create a hard disk image of Win98 (this image can be compressed with gzip), then use GRUB's map --mem command to simulate this image as a RAM disk hard disk for booting. Such a RAM disk directly becomes the C: drive, and the original hard disk will become the second hard disk.
|
|
2006-4-21 12:00 |
|
|
asbai
高级用户
   
积分 653
发帖 252
注册 2006-4-16
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
Originally posted by JonePeng at 2006-4-20 23:52:
Win98支持最大 768MB 物理内存,把 512M 的内存分给Win98用也不为过。
这个很难说,理论可以到 1G,但在某些硬件搭配下也是不是有到512M就出问题的。加上本来就是就是做应急启动,通常不需要太多内存,所以采用最保守的方式估计。
Originally posted by JonePeng at 2006-4-20 23:52:
Windows 98 supports a maximum of 768MB of physical memory, and it's not excessive to allocate 512M of memory for Windows 98 to use.
This is hard to say. Theoretically, it can reach 1G, but in some hardware configurations, there may be problems even with 512M. Also, since it's originally for emergency booting, usually not much memory is needed, so the most conservative estimation method is adopted.
|
|
2006-4-23 05:27 |
|
|
asbai
高级用户
   
积分 653
发帖 252
注册 2006-4-16
状态 离线
|
『第 5 楼』:
使用 LLM 解释/回答一下
Originally posted by fujianabc at 2006-4-21 12:00:
光盘版的win98,建议换一种思路。不用xmsdsk的ramdisk,而用grub的ramdisk。
先制作一个win98的硬盘镜像(此镜像可以用gzip压缩),然后用grub的的map --mem命䠮..
以前试过grub的光盘启动版一直就没成功过,汗。。。。
虚拟成C盘还是Z盘好像不是很严重的问题,而且gz的压缩率远远小于固实模式的RAR,DOS版的Unrar也是 free/opensource 的。
BTW: GNU接手以后 GRUB 2 也开发了有一阵子了,等 2 出来了到可以试试 ^_^
Last edited by asbai on 2006-4-23 at 05:35 ]
Originally posted by fujianabc at 2006-4-21 12:00:
For the CD version of Win98, it is recommended to change the approach. Instead of using xmsdsk's ramdisk, use GRUB's ramdisk.
First, create a hard disk image of Win98 (this image can be compressed with gzip), and then use GRUB's map --mem command...
I have tried GRUB's CD boot version before and never succeeded, sweat...
Whether it is virtualized as drive C or Z is not a very serious issue, and the compression ratio of gz is far less than that of the solid mode RAR. The DOS version of Unrar is also free/opensource.
BTW: GRUB 2 has been developed for a while since GNU took over. We can try it when version 2 comes out ^_^
Last edited by asbai on 2006-4-23 at 05:35 ]
|
|
2006-4-23 05:32 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 6 楼』:
使用 LLM 解释/回答一下
Originally posted by asbai at 2006-4-23 05:32 AM:
以前试过grub的光盘启动版一直就没成功过,汗。。。。
虚拟成C盘还是Z盘好像不是很严重的问题,而且gz的压缩率远远小于固实模式的RAR,DOS版砮..
dos下的rar的确比gz压缩率要大,但是解压一个压缩包的时间要比gz时间长的多,rar里面要解压几百个文件,gz在grub下就解压一个img文件。
grub 2,等到它真的可以使用了不知要到何时了,它与现在的grub 0.9x相比增加的功能很多并不实用。
Originally posted by asbai at 2006-4-23 05:32 AM:
I've tried the CD boot version of grub before and never succeeded, sweat...
Whether it's virtualized as drive C or Z doesn't seem to be a serious problem, and the compression ratio of gz is far smaller than that of the solid mode RAR. The DOS version...
The RAR under DOS does have a larger compression ratio than gz, but the time to decompress a compressed package is much longer than that of gz. There are hundreds of files to be decompressed in RAR, while gz only needs to decompress one img file under grub.
Grub 2, I don't know when it will really be usable. The functions added compared to the current grub 0.9x are many but not practical.
|
|
2006-4-23 11:53 |
|
|
272922032
禁止访问
积分 97
发帖 41
注册 2005-10-6
状态 离线
|
『第 7 楼』:
使用 LLM 解释/回答一下
98不成问题,关键是驱动,98是一个大型操作系统,不像DOS随便几个驱动了事,主板,显卡,声卡,网卡的驱动程序怎么安装呢?
98 is not a problem, the key is the drivers. 98 is a large operating system, not like DOS where just a few drivers are enough. How to install the drivers for the mainboard, graphics card, sound card, and network card?
|
|
2006-4-23 22:28 |
|
|
asbai
高级用户
   
积分 653
发帖 252
注册 2006-4-16
状态 离线
|
『第 8 楼』:
使用 LLM 解释/回答一下
Originally posted by 272922032 at 2006-4-23 22:28:
98不成问题,关键是驱动,98是一个大型操作系统,不像DOS随便几个驱动了事,主板,显卡,声卡,网卡的驱动程序怎么安装呢?
是这样的,一般从光盘启动的系统都是用于紧急恢复的,很多驱动只要能工作就好,不要求性能,比如显卡工作在VGA或VESA兼容的SVGA一般足够,硬盘光驱用DOS兼容模式就可以。还有些驱动根本不需要,比如声卡驱动。好像没谁从光盘启动一个完整的日常系统,呵呵
Originally posted by 272922032 at 2006-4-23 22:28:
Windows 98 is not a problem. The key is drivers. Windows 98 is a large operating system. Unlike DOS, which only requires a few drivers. How to install drivers for the motherboard, graphics card, sound card, and network card?
That's right. Generally, the system booted from the CD is used for emergency recovery. Many drivers just need to work, not requiring high performance. For example, the graphics card working in VGA or VESA-compatible SVGA is generally sufficient. The hard drive and CD-ROM can be used in DOS-compatible mode. Also, some drivers are not needed at all, like the sound card driver. It seems that no one boots a complete daily system from the CD, heh heh
|
|
2006-4-24 00:04 |
|
|
asbai
高级用户
   
积分 653
发帖 252
注册 2006-4-16
状态 离线
|
『第 9 楼』:
使用 LLM 解释/回答一下
Originally posted by fujianabc at 2006-4-23 11:53:
dos下的rar的确比gz压缩率要大,但是解压一个压缩包的时间要比gz时间长的多,rar里面要解压几百个文件,gz在grub下就解压一个img文件。
grub 2,等删...
嗯,gz确实比rar快不少,但是一个MINI98本身并不大,一般解开后在30MB以内。而且对一个尺寸相当的压缩包来说,里面放1个文件还是10个文件一般对速度影响应该不大,除了极端情况,比如里面放了一千万个文件。。。。那是对文件系统的压力测试 ^_^。
而且直接从img虚拟文件系统,对98来说应该是不行的。98启动的时候必须在非只读媒体,好像没见过支持对img写入的boot loader还。Win32是到了XP以上才开始支持在只读媒体启动的(WinPE)。
兄台手上有没有用grub做光启的好文?我按照官方文档操作总是有问题,郁闷
Originally posted by fujianabc at 2006-4-23 11:53:
The RAR under DOS does have a larger compression ratio than GZ, but the time to decompress a compressed package is much longer than that of GZ. There are hundreds of files to be decompressed in RAR, while GZ only decompresses an IMG file under GRUB.
GRUB 2, wait to delete...
Well, GZ is indeed much faster than RAR, but a MINI98 itself is not very large, generally less than 30MB after extraction. And for a compressed package of a comparable size, whether there are 1 file or 10 files inside generally has little impact on the speed, except in extreme cases, such as having ten million files inside... That's a stress test on the file system ^_^.
Moreover, directly using the IMG virtual file system is not feasible for 98. When 98 starts, it must be on a non-read-only media. I haven't seen a boot loader that supports writing to IMG. Win32 started supporting booting from read-only media from XP onwards (WinPE).
Do you have any good articles on using GRUB for CD booting? I always have problems following the official documentation, which is frustrating.
|
|
2006-4-24 00:14 |
|
|
272922032
禁止访问
积分 97
发帖 41
注册 2005-10-6
状态 离线
|
『第 10 楼』:
使用 LLM 解释/回答一下
我只希望能找到一个WINDOWS系列的光盘系统,能运行普通软件的那种,是什么内核不重要,要是没驱动我还要它干什么,拿光盘系统上网聊QQ,是我的梦想
I just hope to find a Windows series disc - based system that can run ordinary software. It doesn't matter what the kernel is. If there are no drivers, why do I want it? Using a disc - based system to chat on QQ online is my dream
|
|
2006-4-24 07:32 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 11 楼』:
使用 LLM 解释/回答一下
Originally posted by asbai at 2006-4-24 12:14 AM:
嗯,gz确实比rar快不少,但是一个MINI98本身并不大,一般解开后在30MB以内。而且对一个尺寸相当的压缩包来说,里面放1个文件还是10个文件一般对造...
我做的img启动win98是用grub的map --mem命令把img文件影射成一个ramdisk来进行的,ramdisk时可读写的,当然不存在只读的问题。
至于grub做光盘启动,没看到过什么很好的文章,很多都是靠自己平时摸索的。
Originally posted by asbai at 2006-4-24 12:14 AM:
Well, gz is indeed much faster than rar, but a MINI98 itself is not very large, generally less than 30MB after decompression. And for a compressed package of相当 size, whether there are 1 file or 10 files inside generally affects...
The img I made to boot Win98 is done by using the grub map --mem command to map the img file as a ramdisk, and the ramdisk is readable and writable, so there is naturally no problem of read-only.
As for grub for CD boot, I haven't seen any very good articles, many are relying on their own usual exploration.
|
|
2006-4-24 11:31 |
|
|
272922032
禁止访问
积分 97
发帖 41
注册 2005-10-6
状态 离线
|
『第 12 楼』:
使用 LLM 解释/回答一下
其实,光盘的 瘟98 要不要压缩都没关系,700M的光盘空间足够了,还可以收集好多软件和驱动,关键就是 网卡和显卡的驱动程序,而且主板驱动也是推荐安装的,如果这些驱动少了,98就没有很大的使用价值了,如果是单纯的文件管理,WINPE就足够了,,我还要98干什么?
Last edited by 272922032 on 2006-4-24 at 12:38 ]
Actually, the Windows 98 on the CD doesn't need to be compressed. The 700M CD space is enough. I can still collect many software and drivers. The key is the network card and graphics card drivers. And the motherboard drivers are also recommended to install. If these drivers are missing, Windows 98 doesn't have much use value. If it's just for file management, WINPE is enough. Why do I still need Windows 98?
[[i] Last edited by 272922032 on 2006-4-24 at 12:38 [/i]]
|
|
2006-4-24 12:35 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 13 楼』:
使用 LLM 解释/回答一下
Originally posted by 272922032 at 2006-4-24 12:35 PM:
其实,光盘的 瘟98 要不要压缩都没关系,700M的光盘空间足够了,还可以收集好多软件和驱动,关键就是 网卡和显卡的驱动程序,而且主板驱动也是推荐安装 ...
压缩之后,启动可以快一点。
就实用性而言,光盘版win98是在winpe出现之前的热门话题,有了winpe之后,光盘版的98的确没有太大的意义了。
Originally posted by 272922032 at 2006-4-24 12:35 PM:
Actually, it doesn't matter whether the CD-ROM version of Windows 98 is compressed or not. The 700M CD space is enough, and you can collect many software and drivers. The key is the network card and graphics card drivers, and the motherboard drivers are also recommended to be installed...
After compression, the boot can be a bit faster.
In terms of practicality, the CD-ROM version of Windows 98 was a hot topic before the emergence of WinPE. After the appearance of WinPE, the CD-ROM version of 98 is indeed not of much significance.
|
|
2006-4-24 20:07 |
|
|
272922032
禁止访问
积分 97
发帖 41
注册 2005-10-6
状态 离线
|
『第 14 楼』:
使用 LLM 解释/回答一下
瘟酒吧 比 瘟PE好用,这个是事实!
Wenjiu Bar is better than WenPE, this is a fact!
|
|
2006-4-24 21:06 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 15 楼』:
使用 LLM 解释/回答一下
Originally posted by 272922032 at 2006-4-24 09:06 PM:
瘟酒吧 比 瘟PE好用,这个是事实!
何以见得?具体体现在什么方面?
Originally posted by 272922032 at 2006-4-24 09:06 PM:
Wengjiu Bar is better than WengPE, this is a fact!
Why do you say so? In what specific aspects is it reflected?
|
|
2006-4-24 21:32 |
|