虚拟机中安装Win98

news2024/11/18 10:51:46

文章目录

  • 一、下载Win98
  • 二、制作可启动光盘
  • 三、VMware中安装Win98
  • 四、Qemu中安装Win98
    • 1. Qemu的安装
    • 2. 安装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简单、直观,上手难度还是非常大的,需要熟悉各参数的用法及意义。

首先,创建磁盘:

qemu-img create -f qcow2 win98 5G

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

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

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

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安装镜像进行安装了:

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文件,启动时加载成光驱:

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的过程中帮助到你,欢迎点赞收藏!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1506076.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

office办公软件太贵了 Microsoft的Word为什么要买 Microsoft365家庭版多少钱 Microsoft365密钥

Microsoft office是一个被广泛使用的办公软件,它包括了 Word、Excel、PowerPoint 等多种常用的应用程序,已成为许多企业、机构和个人必备的工具。 首先,要理解 Microsoft Office 的价格,我们需要考虑到它的功能和市场需求。Micro…

Pycharm使用教程

1.设置字体型号与大小 file->setting->editor->font(字型),size(大小) 2.设置背景颜色 file->setting->editor->color scheme->scheme 3.注释/取消注释 ctrl/ 选中需要注释的部分,双击ctrl/ 取消注释则选…

揭秘数据中心幕后:从电力消耗到温度调控的策略

建设并运营数据中心并非简单的连接硬盘、通电和联网就可以,而是涉及复杂的硬件集成、能源管理、散热设计以及适应不断增长的数据处理和存储需求等诸多挑战。随着全球互联网的普及和AI技术的快速发展,数据中心的规模和能耗需求都在急剧增加。尤其是在电力…

Vue.js计算属性:实现数据驱动的利器

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

新雀优化算法NOA求解机器人栅格地图最短路径规划,可以自定义地图(提供MATLAB代码)

一、星雀优化算法 星雀优化算法(Nutcracker optimizer algorithm,NOA)由Mohamed Abdel-Basset等人于2023年提出,该算法模拟星雀的两种行为,即:在夏秋季节收集并储存食物,在春冬季节搜索食物的存储位置。CEC2005:星雀优化算法(Nut…

判断链表回文

题目&#xff1a; //方法一&#xff0c;空间复杂度O(n) class Solution { public:bool isPalindrome(ListNode* head) {vector<int> nums; //放进数组后用双指针判断ListNode* cur head;while(cur){nums.emplace_back(cur->val);cur cur->next;}for(int i0…

Spring MVC 全局异常处理器

如果不加以异常处理&#xff0c;错误信息肯定会抛在浏览器页面上&#xff0c;这样很不友好&#xff0c;所以必须进行异常处理。 1.异常处理思路 系统的dao、service、controller出现都通过throws Exception向上抛出&#xff0c;最后由springmvc前端控制器交由异常处理器进行异…

【玩转Linux】有关Linux权限

目录 一.Linux权限的概念 1. 权限的本质 2.Linux中的用户 3.Linux中的权限管理 (1)文件访问者的分类 (2)文件类型和访问权限&#xff08;事物属性&#xff09; ①文件基本权限 ②文件权限值的表示方法 (3)文件访问权限的相关设置方法 ① 用 户 表 示 符 / - 权 …

BIM技术趋势

随着 2024 年的到来&#xff0c;3D 建模和人工智能 (AI) 的集成将重新定义建筑信息模型 (BIM) 的格局。 人工智能驱动的解决方案将为设施管理、照明设计、工程和建筑等 BIM 相关领域树立新标准。 本文重点介绍 3D 建模和人工智能的这些趋势如何比更传统的方法提供竞争优势。 它…

Python 一步一步教你用pyglet制作汉诺塔游戏

目录 汉诺塔游戏 1. 抓取颜色 2. 绘制圆盘 3. 九层汉塔 4. 绘制塔架 5. 叠加圆盘 6. 游戏框架 汉诺塔游戏 汉诺塔&#xff08;Tower of Hanoi&#xff09;&#xff0c;是一个源于印度古老传说的益智玩具。这个传说讲述了大梵天创造世界的时候&#xff0c;他做了三根金刚…

【深度学习笔记】7_2 梯度下降和随机梯度下降

注&#xff1a;本文为《动手学深度学习》开源内容&#xff0c;部分标注了个人理解&#xff0c;仅为个人学习记录&#xff0c;无抄袭搬运意图 7.2 梯度下降和随机梯度下降 在本节中&#xff0c;我们将介绍梯度下降&#xff08;gradient descent&#xff09;的工作原理。虽然梯度…

Vue 监听器:让你的应用实时响应变化

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

Kibana二次开发环境搭建

1 kibana环境搭建 1.1 搭建后端服务 &#xff08;1&#xff09;java环境安装 ElasticSearch运行需要java jdk支持。所以要先安装JAVA环境。由于ElasticSearch 5.x 往后依赖于JDK 1.8的&#xff0c;所以现在我们下载JDK 1.8或者更高版本。下载JDK1.8,下载完成后安装&#xff…

计算机设计大赛 疲劳驾驶检测系统 python

文章目录 0 前言1 课题背景2 Dlib人脸识别2.1 简介2.2 Dlib优点2.3 相关代码2.4 人脸数据库2.5 人脸录入加识别效果 3 疲劳检测算法3.1 眼睛检测算法3.2 打哈欠检测算法3.3 点头检测算法 4 PyQt54.1 简介4.2相关界面代码 5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#x…

ai+模型选择+过拟合和欠拟合

ai模型选择过拟合和欠拟合 1模型选择1训练误差和泛化误差2验证数据集和测试数据集3k-折交叉验证4总结 2过拟合和欠拟合1模型容量2估计模型容量3VC维4数据复杂度5总结 3代码 1模型选择 1训练误差和泛化误差 训练误差&#xff08;Training Error&#xff09;和泛化误差&#xff…

STM32(19)I2C模块 主机发数据

发送数据&#xff1a; 等待空闲&#xff1a; 发送起始位&#xff1a; 发送地址&#xff1a; 发送数据&#xff1a;

day16_购物车(添加购物车,购物车列表查询,删除购物车商品,更新选中商品状态,完成购物车商品的全选,清空购物车)

文章目录 购物车模块1 需求说明2 环境搭建3 添加购物车3.1 需求说明3.2 远程调用接口开发3.2.1 ProductController3.2.2 ProductService 3.3 openFeign接口定义3.3.1 环境搭建3.3.2 接口定义3.3.3 降级类定义 3.4 业务后端接口开发3.4.1 添加依赖3.4.2 修改启动类3.4.3 CartInf…

Docker:部署微服务集群

1. 部署微服务集群 实现思路&#xff1a; ① 查看课前资料提供的cloud-demo文件夹&#xff0c;里面已经编写好了docker-compose文件 ② 修改自己的cloud-demo项目&#xff0c;将数据库、nacos地址都命名为docker-compose中的服务名 ③ 使用maven打包工具&#xff0c;将项目…

linux信号的概念

目录 1.预备 2.信号如何产生 1.引入 2.原理 3.总结 3.接口 1.singal函数 2.kill函数 3.raise函数&#xff08;给自己发信号&#xff09; 4.abort函数&#xff08;给自己发送6号信号&#xff09; 4.异常 1.现象 2.原理 5.core和term区别 6.由软件条件产生信号 3.…

P8661 [蓝桥杯 2018 省 B] 日志统计

[P8661 蓝桥杯 2018 省 B] 日志统计 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路&#xff1a;双指针&#xff0c;对日志按时间从小到大进行排序。快指针指向的 i d id id点赞数加一&#xff0c;快慢指针做差得到之间的时间间隔&#xff0c;大于等于 k k k将慢指针指向…