虚拟机中安装Win98

文章目录

Win98是微软于1998年发布的16位与32位混合的操作系统,也是一代经典的操作系统,期间出现了不少经典的软件与游戏,还是值得怀念的。

本文笔者就介绍一下在VMWare中以及Qemu中安装Win98。

一、下载Win98

可以去https://msdn.itellyou.cn/下载,这里把Win98中文版的下载链接复制过来:
ed2k://|file|SC_WIN98SE.exe|278540368|939909E688963174901F822123E55F7E|/

这是一个自解压EXE文件,运行即解压出两个文件夹:WIN98WIN98SE,前者为第一版,后者为第二版。

二、制作可启动光盘

由于下载的不是可启动光盘,所以只适用于硬盘安装,比较麻烦。为了支持光盘安装,需要将之制作为可启动的光盘镜像,ISO文件,方便后面虚拟机中安装使用。

  1. 下载win98.bif

由于前面下载win98文件不包括光盘启动信息,所以需要一个win98的光盘引导文件,网上有资源,可以去网上搜索win98.bif,也可以去下载笔者使用过的win98.bif

  1. 制作光盘

在另一个目录新建一个目录win98se,然后将之前解压出来的WIN98SE复制到新建的目录中,并将之改名为WIN98。然后打开UltraISO,使用添加目录win98se目录添加进来,或者在win98se目录右键,在UltraISO菜单中执行添加到win98se.iso

使用UltraISO打开ISO可以看到光盘是不可引导的光盘:

在启动中执行加载引导文件...

把之前下载的win98.bif文件添加进来,此时变为"可引导光盘"了,最后记得保存,Win98的可启动光盘镜像就制作好了。

三、VMware中安装Win98

在新建虚拟机时一定要选择自定义配置,不能使用推荐配置,因为推荐配置中硬盘是使用的IDE接口,在VMWare虚拟机中需要使用SATA接口,否则会报错:


由于前面已经制作好了Win98的可启动光盘镜像,这里直接使用,VMWare可以识别到是Windows 98系统。



如果宿主机的内存充裕,可以选择512M的内存,但不能选择太大的内存,Win98支持不了。

注意:这里一定要选择SATA类型的虚拟磁盘:



设置好虚拟硬件后,就可以启动虚拟机,安装Win98了:



安装程序会默认配置使用整个未分配的磁盘空间:

启用大磁盘支持:


安装程序会自动格式化C盘:


安装程序自动填充好产品密钥,可以不用修改:







这里需要设置计算机名工作组



安装完成后,第一次进入系统:

为了更好的体验,需要安装VMWare Tools


安装好VMWare Tools后,就可以设置更高的分辨率和色彩了:

此时还有一些设备没有安装好驱动,比如声卡与USB设备,这需要使用之前笔者上传的windows 98驱动.7z,它也是一个ISO文件,使用VMWare虚拟机加载光盘为该ISO文件即可。

安装好驱动后,重启就可以看到音量图标和AudioPCI Mixer图标了:

至于USB,将硬件设置USB兼容性设置为USB 1.1即可:

强烈建议安装一下chip目录中setup安装程序,可以安装不少驱动:



至此,就可以怀念一下Win98的风采了。

Win98下可以安装的Firefox版本最高为2.0

可以安装Qt 4.4.3:

还可以安装C++ Builder 6以及Delphi 7,说到它们,可是当年风光无限的开发软件,想必如今还有不少使用它们开发的软件还在运行吧,或者还有公司在使用它们开发或者维护软件吧,可即便如此,还是挡不住Borland的没落,着实可惜了。

笔者也使用过C++ Builder 6以及Delphi 7,确实好用,为此笔者特意尝试了一下在Win98下使用C++ Builder 6编译一个程序然后在Win10下来运行:

可以看到运行得非常好,而且依赖是相当少,仅依赖3个文件,这三个文件还只有3.33M。

四、Qemu中安装Win98

VMWare对Win98的支持还是不错的,安装过程还是非常顺利的(唯一注意的点就是硬盘类型要选择SATA),各种驱动程序也比较容易找到,但是随着VMWare版本的提升,发现Win98在使用过程中会卡死,显示画面不同步等等情况。于是笔者想尝试使用Qemu来安装一下Win98。

1. Qemu的安装

可以去Qemu官网查看Windows的安装方法,可以直接下载编译好的安装包,也可以在MSYS2中安装:

由于笔者是安装了MSYS2,所以这里笔者选择在MSYS2中安装Qemu的最版本8.2.1

2. 安装Win98

由于Qemu是使用命令行的方式来执行的,就没VMWare简单、直观,上手难度还是非常大的,需要熟悉各参数的用法及意义。

首先,创建磁盘:

bash 复制代码
qemu-img create -f qcow2 win98 5G

-f qcow2是表示创建qcow2格式的磁盘,它支持创建的磁盘格式有:

  • raw
  • qcow2
  • vmdk
  • vdi
  • vhd(vpc)
  • vhdx
  • qcow1
  • QED

等等,可以使用qemu-img --help查看:

bash 复制代码
Supported formats: blkdebug blklogwrites blkverify bochs cloop compress copy-before-write copy-on-read dmg file ftp ft
ps host_device http https luks nbd nfs null-aio null-co parallels preallocate qcow qcow2 qed quorum raw replication sn
apshot-access ssh throttle vdi vhdx vmdk vpc vvfat

这里选择qcow2 可以尽量减少宿主的磁盘占用。

创建好磁盘后就可以使用前面的ISO安装镜像进行安装了:

bash 复制代码
qemu-system-i386 -m 512 -smp 1 -boot c -k -rtc base=localtime,clock=host --accel tcg,thread=multi -cpu pentium3 -device sb16 -vga std -hda "win98" -cdrom "vmware_win98.iso" -drive file="win98se.iso",if=ide,media=cdrom

全部是命令行参数,这里做一个简单说明:

  • -m 512 设定内存大小为512M
  • smp 1 设置SMP的CPU个数为1
  • -boot c 设置设备启动顺序:a为软件;c为硬盘;d为光盘;n为网络
  • -rtc base=localtime,clock=host 设置虚拟机使用宿主机器的本地时间
  • --accel tcg,thread=multi 设置加速方式,这里是设置多线程TCG的方式。可以使用qemu-system-i386 -accel help查看可使用的加速方式,笔者的为tcgwhpx,前者为默认;后者为Win10的Hyper-V。Hyper-V需要在Win10中安装启用,但是与VMWare有冲突,启用后,会导致VMWare中的虚拟机很卡,很慢。
  • -cpu pentium3 设置cpu为奔腾3,可以使用qemu-system-i386 -cpu help查看可用的CPU列表。
  • -device sb16 设置声卡设备,sb16为Creative Sound Blaster 16声卡,win98有相应的驱动程序。想要添加更多设备,可以使用qemu-system-i386 -device help查看各种支持的设备列表。
  • -vga std 设置显卡为标准显卡。
  • -hda "win98" 设置硬盘,可以设置4个硬盘分别为hda,hdb,hdc,hdd,分别代表0、1、2、3号硬盘。fda、fdb代表0、1号软盘。
  • -drive file="win98se.iso",if=ide,media=cdrom 设置驱动器,包括镜像文件,驱动接口类型以及驱动媒介类型,该方式的挂载优先级高于使用-cdrom的方式。
  • -cdrom "vmware_win98.iso" 设置光驱镜像文件。



后面就与VMWare中安装一样了。

使用Qemu安装要比VMWare慢得多,需要耐心等待。由于前面直接设置了声卡为SB16,Win98在安装时自动安装好了驱动,第一次启动进入系统即可听到声音,看到音量图标:

安装好系统后就是安装驱动程序了,最主要的是显卡的驱动程序,不然只有16色的640*480分辨率。

-vga选项支持:std|cirrus|vmware|qxl|xenfb|tcx|cg3|virtio|none,可以看到支持vmware,是不是可以使用VMWare中的显卡驱动呢?笔者尝试了一下,不行。Win98原生支持cirrus显卡,有显卡驱动,但是分辨率与颜色最高只能是16位色的800*600了,再高就不支持了。

为了支持更高的色彩与分辨率,笔者从WIKI上查到一个非商业许可的VBE兼容的显卡驱动。可以下载:
140131.zip
140214.zip

然后把它解压出来使用UltraISO制作成ISO文件,启动时加载成光驱:

bash 复制代码
qemu-system-i386 -m 512 -smp 1 -boot c -k pci-ohci -rtc base=localtime,clock=host --accel tcg,thread=multi -cpu athlon -device sb16 -vga std -hda "win98" -cdrom "vmware_win98.iso" -drive file="win98se.iso",if=ide,media=cdrom -drive file="140131.iso",if=ide,media=cdrom

这里-vga选项可以选择所有支持VBE兼容的显卡,然后安装前面下载的驱动。

进入系统后按如下设置:







重启后就可以选择32位色,并且最高可达1920*1080的分辨率了,但不能再高,否则Win98支持不了:

在Qemu中如果不全屏的话,经常会出现鼠标不同步的情况。还有就是目前没有合适的网卡及驱动程序。

希望能在你怀念Win98的过程中帮助到你,欢迎点赞收藏!

相关推荐
huoxingwen1 天前
vmware在全屏模式下快速切换回win桌面的方法
vmware·window多桌面
昵称p2 天前
如何解决不能将开发板连接到虚拟机的问题(连接显示灰色,不能选中)
驱动·虚拟机无法连接开发板
DA02214 天前
VMWareTools安装及文件无法拖拽解决方案
运维·vmware
公西雒4 天前
关于在GitLab的CI/CD中用docker buildx本地化多架构打包dotnet应用的问题
ci/cd·docker·gitlab·qemu·dotnet
内核程序员kevin6 天前
Docker 容器网络模式详解
网络·docker·容器·vmware
小仇学长6 天前
Linux内核编程(十九)SPI子系统一驱动MCP2515(SPI转CAN模块)
linux·驱动·spi·mcp2515
陈晨辰熟稳重11 天前
20241102-Windows 10上安装虚拟机VMware10.0.2、Hadoop3.3.6与jdk1.8.0
大数据·hadoop·windows·jdk·vmware·虚拟机·文件配置
通俗_易懂15 天前
44-RK3588s调试 camera-engine-rkaiq(rkaiq_3A_server)
人工智能·计算机视觉·rk3588·驱动·camera·imx415
肖爱Kun15 天前
LINUX IIC总线驱动-设备框架
驱动
DCTANT16 天前
【问题记录】解决VMware虚拟机中鼠标侧键无法使用的问题
vmware·虚拟机·鼠标侧键