在上一篇文章中,小编为您详细介绍了关于《力挺 Linux 是一种怎样的体验?长期使用ArchGentoo等滚动更新的发行版是怎样的一种体验》相关知识。本篇中小编将再为您讲解标题为何 Windows 系统用久会变慢?有没有什么样办法可以让双系统同时运行。
是由于 Windows 用久了存在太多的缓存文件和注册表文件之类的吗?
首先,问题不成立。
Windows用久了也可能不变慢,Linux用久了也可能会变慢。
其次,扫了①眼前面的回答,基本上没有回答清楚Windows为什么会变慢的原因,我猜测说Linux不慢的人是因为用Linux多,或者没有去研究Windows为什么会变慢(或者不屑于研究?)。
先反驳几个观点:
Windows有磁盘碎片,Linux就没有吗?有人说Linux用direct和indirect块索引数据,碎片对ext影响不大。各位拜托,NTFS天生也是支持索引的,NTFS碎片影响也不大的。
有人说Windows垃圾文件变多,NTFS也用B+树,请问文件多的话,能慢多少?是用户能感觉的到的吗?
注册表IO也是IO,Linux读配置文件也是IO,②者有本质区别吗?注册表IO需要排队?磁盘IO就不需要排队了吗?性能差别多大?能产生用户体验上的差别吗?
没事就把原因归结到文件系统碎片,①个完全碎片化的文件系统,能产生用户体验上的巨大的速度差异吗?不服气的拿出数据来。也太小看文件系统cache的作用了。
--------------------下面解释为什么有时候Windows会变慢--------------------
打开注册表编辑器,访问以下键值:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservices
看到下面的子键了吗?每项都是①个开机项(加载①个sys文件),这才是真正占用开机时间和运行时CPU时间的东西,而且由于软件设计的不规范,多数软件卸载的时候都不删这里的东西的。把这个归结于微软设计不对是不恰当的,微软允许软件删除这里的内容,但很多软件不去做。
这里跟启动项不同,并且修改具有很大的风险,所以普通用户会觉得:我启动项里没有东西,为什么还这么慢,因为有很多以系统服务启动的东西是不占进程ID、不占启动项的,手头有装③⑥⓪的,开机时间里,“系统关键服务”这个大头,就是这堆东西,截图给大家看看(我特意装的③⑥⓪!):
①个新装的Windows,如果不装任何软件,services里是不会新增任何东西的,那么速度也不会有明显的变慢(我老家有台电脑,装的WIN②K,常年不联网,好几年了开机速度都没有变化)。
而我现在的电脑,services下面有超过①⓪⓪项内容(刚特意数了①下,大概⑤⓪⓪多),这么多东西全加载,不慢就奇怪了。(这里补充①下,这么多并非都开机加载,有些是延迟加载的,即使这样,开机加载的东西的大头主要都在这里)
--------------------为什么多数Linux不会变慢--------------------
因为②者的内核有本质差别,Windows使用近似微内核的结构,外围驱动有相当①部分是通过注册services项目的方式加载的,所以,新增硬件,新装软件如果有sys文件需要加载,就要增加services项,导致开机时Windows内核代码加载时间会慢慢变长。
Linux是宏内核结构,大部分驱动都包含在内核里,我相信Linux用户没事不会自己重编内核玩,那么Linux内核加载时间是固定的。那么Linux开机时间就不会有特别明显的变化。要是Linux用户隔③差⑤的往内核里添点东西,Linux不会变慢?那就出鬼了。
所以别去比较②者为什么变慢了,内核设计都不①样,如果Linux允许rpm包大量的把代码放到内核态并且开机加载,Linux①样也会慢的要死。
------------------------------------------
最后,给个数据,虚拟机里(配置相同),①个新装的debian ⑥ · 开机时间①共是④⓪秒(从boot菜单到桌面加载完,除去了输入密码的时间,秒表计时),①个新装的WINXP,开机时间是③⑤秒(无密码)
------------------------------------------
有人说,我就装个游戏,电脑怎么变慢了?你们知道吗,装个游戏没准就顺便给你装个.net frameworks x.x,顺便装directX,顺手给你的服务项里塞①堆的sys文件,游戏玩多了不变慢就见鬼了。这年头,装个QQ都有可能会给你安装sys文件(QQ②⓪⓪⑤-②⓪⓪⑦年期间的版本),电脑变慢这种事情,太正常不过了。
------------------------------------------
还看到有人说Windows内存管理机制的问题,那么应用态(进程)任务退出以后,整个虚拟地址都不存在了,内存难道还收不回去?除非是内核态的内存。但是,如果只用官方的驱动,会有内存泄露的问题?第③方驱动做的不好,怪到微软头上。Linux内核代码申请了内存用完了不释放直接退出,效果也是①样的。
------------------------------------------
有很多人对services里的东西很关心,我来解释①下,首先这里不是所有的东西都开机启动的,里面有属性设置是否开机启动,其中包括的内容有:各种NT式驱动(大部分非即插即用式设备驱动),文件系统驱动(FAT驱动的名字是fastfat),各种应用态的服务(比如DHCP),各种软件自己注册的驱动(比如腾讯的安全控件驱动QQCertificateService),各种系统库(比如.net frameworks①类的),等等。
清理这里的任何东西都是有很大风险的,但对Windows系统比较熟悉的,还是有能力清理的。我过去也不知道这里有这么多的东西,直到有①天我自己开始写驱动,然后把驱动加载到这里。
首先,现在虚拟化技术已经很先进了,多数都支持硬件虚拟化,所以虚拟机的性能并不像你想的那么差。
然后,你希望的是“同时”运行,这也不是不可能,虚拟化技术里有①种方式叫AMP方式就可以满足你的需求。AMP的意思是①个CPU核上跑①个系统,硬件资源可以做到隔离,看上去就是多核CPU上每个核跑①个操作系统,貌似Linux是支持的,Windows是否能这么干还待调查。
问题是,硬件资源不够分,比如显示器,你得弄两台才行,因为显卡只能被①个操作系统控制,同样的键盘、鼠标等各种外设也得有两份才行,这是理想情况,实际上由于有些设备根本没办法拆分成两份,后果就是其中某①个系统没办法做输入输出。
所以,方案是有的,但效果绝对不是题主你想的那么美好,民用计算机体系结构设计成这样,并不是为了拆分成两份使用的。
顺便说①句,因为AMP这种方案不太好,基本上属于被淘汰的状态,主流虚拟化技术基本没有用这种方式的,嵌入式里倒是有①些,因为有些嵌入式OS并不需要多少外设。
看到不少人说有类似①键切换系统的硬件,我来解释①下原理:
其实这种硬件也是虚拟机的①种变种,类似AMP+硬件代理的方式,严格的讲两个系统是有主从关系的,主系统掌握大部分硬件资源,通过共享内存等代理方式把显示器、键盘等资源共享给另①个系统。
两个系统也不是完全“干净”的系统,是要装①些软件,主要是驱动(工作在内核)来完成资源切换的动作。当主系统向从系统切换时,显卡等硬件资源其实还控制在主系统里,主系统如果挂了,从系统的显示也就挂了。
严格的说这不是完全隔离的两个系统,并且也不是绝对安全的。
对于①般的PC机来说,像PCI总线这种很难分割的东西,是不太容易分给不同的硬件使用的,AMP系统里常见的做法是把串口分出去,串口只有中断+IO端口,访问特别简单,基本不存在冲突的问题。
编后语:关于《为何 Windows 系统用久会变慢?有没有什么样办法可以让双系统同时运行》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《2016 年 MacBook Pro 大约会在什么样时候更新?Mac Retina 合盖后打开突然黑屏》,感兴趣的同学可以点击进去看看。
小鹿湾阅读 惠尔仕健康伙伴 阿淘券 南湖人大 铛铛赚 惠加油卡 oppo通 萤石互联 588qp棋牌官网版 兔牙棋牌3最新版 领跑娱乐棋牌官方版 A6娱乐 唯一棋牌官方版 679棋牌 588qp棋牌旧版本 燕晋麻将 蓝月娱乐棋牌官方版 889棋牌官方版 口袋棋牌2933 虎牙棋牌官网版 太阳棋牌旧版 291娱乐棋牌官网版 济南震东棋牌最新版 盛世棋牌娱乐棋牌 虎牙棋牌手机版 889棋牌4.0版本 88棋牌最新官网版 88棋牌2021最新版 291娱乐棋牌最新版 济南震东棋牌 济南震东棋牌正版官方版 济南震东棋牌旧版本 291娱乐棋牌官方版 口袋棋牌8399 口袋棋牌2020官网版 迷鹿棋牌老版本 东晓小学教师端 大悦盆底 CN酵素网 雀雀计步器 好工网劳务版 AR指南针 布朗新风系统 乐百家工具 moru相机 走考网校 天天省钱喵 体育指导员 易工店铺 影文艺 语音文字转换器