雪飘落无涯吧 关注:49贴子:3,607
  • 6回复贴,共1

“我不是垃圾”—— 为“系统垃圾”正名

只看楼主收藏回复

一楼喂度娘,度娘我爱你。
全文系转载。


1楼2012-02-11 14:54回复
    一.前言
    随着国人电脑水平普遍提高,越来越多的人在能够胜任日常操作以后,总会尝试进行一些“手到擒来”的优化,其中清理系统垃圾便成了一些人每天必做的功课。试想一个情景: A:“老公,我的电脑又慢了,怎么办啊?”
    B:“没关系,我给你清理一下垃圾就快了,特别有用!”
    A:“么啊,你真好!”
    B:“么啊,我可是电脑高手!”
    ……
    然后,此处省略一万字,此处绵绵无绝期。
    于是乎,一个3XX,或者一个腾X电脑管家,再如一个X山卫士,便成了一些人装X利器,需要时只需点开软件,一个操作后电脑即可“箭步如飞”,然后下次开电脑似乎看到开始时间快了那么一两秒,击败了全国百分之XX的电脑,心里便无比喜悦,原来XXX真的有用啊!……


    2楼2012-02-11 14:54
    回复
      二.不识庐山真面目
      时下,借助各大软件公司的公关的炒作,越来越多的人心里都会有一个这样的意识:电脑会越用越慢,C盘会越来越大,这些都是垃圾惹的祸。只要清理了系统垃 圾,系统就会飞快。在他们心里,微软的操作系统就是一个巨大的垃圾制造厂,每天会有无数的垃圾产生,因为每天必须要清理垃圾,否则吃饭也不香了,一口气也 上不了5楼了。
      但,真的是这样吗? 谈到系统垃圾,我觉得很有必要在文章的开始,谈一下什么是“垃圾”。“垃圾”,新华词典中的解释为:“废弃无用或肮脏破烂之物”。显然,解释中的关键词为 “无用”。所以,个人看来,所谓的“系统垃圾”,应该定义为“不再被使用的文件”比较恰当。 既然已经有了一个明确的定义,那么,究竟有哪些是真正的垃圾?哪些不是?如果不是垃圾,它们有什么用?为什么会躺在我的硬盘里?接下来我一一简述。
      百度百科对“系统垃圾”的解释是:“系统垃圾,就是系统不再需要的文件的统称。当你浏览过网页,安装后又卸载掉的程序残留文件及注册表的键 值。这些都是对系统毫无作用的文件。只能给系统增加负担。所以叫垃圾。”后面却又引申到windows的临时文件夹,比如Temporary Internet Files文件夹和各种cache文件夹。我个人表示完全无法理解这种系统垃圾的定义,到底什么样的文件才能够得上“系统不再需要”这个条件?按某些优化 软件的定义,估计系统还原也该算“垃圾文件”里面了。
      “系统垃圾”这个名词,来源已不可考,然而在早期大体逃不过各类的优化软件的宣扬


      4楼2012-02-11 14:55
      回复
        三.“我不是垃圾”
        作为一个电脑使用者之一,我比较关注操作系统的三个指标,其中的一个或者若干条我想也是大多数人所关注的:1.是否快速,比如开机速度,程序执行速 度;2.是否稳定,隔三差五溢出或者报错不是我们想要的;3.系统盘所占容量是否过大,如果C盘一直处于爆满的边缘,许多工作都会无法进行。现在的清理软 件旨在宣传第1条和第3条,因为这些是用户看得见摸得着的,尤其是3,可以瞬间看到C盘多出了若干MB可用空间,但是如果使用不善,则会引起1和2的全面 崩盘。
        那么,所谓的“垃圾”究竟有哪些?我觉得可以分为以下几类:
        1.缓存类
        缓存可以说是如今计算机体系里必不可少的一个环节。不止硬件有缓存,OS同样有缓存。 windows系统缓存:
        系统缓存是一个很泛泛的概念,它包含许多路径,用来保证操作系统和一些应用程序的正常使用,最常见的非TEMP莫属,绝大多数系统组件的运行依赖此目录。此外,prefetch等预读机制所在的文件夹也可以归至这一类。
        应用程序数据缓存:
        应用程序目录主要是%TEMP%目录,在NT6以上的核心对应用户文件夹中的\AppData\Local\Temp文件夹,这里主要存放一些应用程序的缓存,比如:遨游、PotPlayer等程序的Cache都在这里。
        IE缓存:
        之 所以把IE单独拿出来是因为它比较特殊,IE对应的一些缓存有自己独立的位置,比如网页临时文件在Temporary Internet Files文件夹中,历史在Recent文件夹中,而cookie等也有专门的文件夹2.注册表类 注册表是windows管理机制中的核心部分,随着系统使用时间的增长,注册表的冗余在所难免。再加上一些不负责任的程序员开发的程序在安装时写入的键值 不能卸载干净,也增加了数据的冗余。因而,清理注册表的主要原理就是删除冗余键值对。而危害和优点稍候再述。3.系统遗留文件类 也许这样起名字并不算科学,但姑且这么叫吧。
        这一类文件(文件夹)的特点,就是占用空间极大,以我半个月前新装的系统为例:\Windows\Installer文件夹已经达到6G, \Windows\winsxs已经达到了将近7G,这两个文件夹加起来将近14G,占我C盘总共使用容量的少一半,可见其占用空间之大。而这一类文件也 是目前的软件不敢跨越的雷池,因为任何一个地方清理不当,可能会导致系统崩盘或者出现异常。同理,Windows更新的反安装文件也存在于C盘,清理之后 可以节省客观的空间,但同样会带来潜在的危害(比如,某些还原点无法回滚)。
        4.其他
        其余我没提到的或者我没想到的,就暂且归结为“其他”吧。ActiveX、系统还原等等,都是目前垃圾清理软件清理的对象。
        好了,这一章节说了这么多,最后只想替那些被披上“垃圾”名号的文件们说一句:“我不是垃圾”。


        5楼2012-02-11 14:55
        回复
          五.我的电脑我做主
          看到这里,我想读者应该对全剧有了一个大致的了解。我个人的做法是不推荐使用任何第三方垃圾清理工具,尤其是为了清理垃圾而清理垃圾的一些软件。国外的著 名的清理软件CCleaner尚有一些可取之处,至于某些天朝的刷分软件,我不想做过多评论。如果觉得系统慢了,不要第一反应即使清理垃圾,因为清理后由 于缓存的删除,你可能会觉得更慢。尝试从进程管理器里判断电脑的健康状况,当然,这需要经验。
          那,如果C盘大了怎么办?windows自带了一个清理工具,100%安全。在开始菜单里输入cleanmgr(中文系统输入“清”字)即可,可以清理一些简单 的缓存。其次,运行TEMP和%TEMP%,把这里边的文件删掉,理论上也是安全的。再不行,看看是不是迅雷、快播之类的软件把你的文件下载到C盘了。
          我这样做了,我的C盘还没空间,怎么办?我告诉你空间被谁吃了。
          hiberfil.sys 休眠文件,pagefile.sys页面文件,现在的电脑配置,这两个文件加起来会很大,动辄大几个G。前者通过关闭休眠功能可以删除,后者你真的删不掉 (如果没关闭分页文件就会一直正在使用),除非你用PE引导。然后再开机你等着报错吧。
          在安装Office 、visual studio、以及Adobe公司的一些软件后,C盘也会迅速膨胀,因为即使你不装在C盘,它们也会向你的系统分区写入大量公共组件或者系统库文件——而这些,我们真的无能为力(link到其他盘?这个算作弊)。


          7楼2012-02-11 14:56
          回复
            六.附录:
            大多数人对计算机的认识是来自各种优化文,教程,杂志,这种认知从来就是断章取义,谈不上任何的系统性。久而久之就形成了各种偏离本意的操作行为,事实上 当我们仔细看一下操作系统的发展史,包括mac linux,windows等其实很多设计思路都有相同的影子在背后,比如多帐户对home文件夹的多层级权限分配,对应到windows是\user \username\,类似的单分区部署方案,快照备份与映像备份,没有任何技术文档提倡只分一个很小的C盘留给操作系统和程序文件,没有任何人在 linux和mac上大肆清理所谓的“系统垃圾”,就算是windows,也只是在国内形成了这么一套整治计算机的方法,或者说是偏执,将系统文件精简到 剩下4~5G,然后在不间断的干掉一些文件。不去管administrator管理员权限的危险性,而不停地纠结于如何把C盘弄得更小以实现ghost文 件的短小精悍。
            C盘可用空间减少有很多原因,实际上即使你把所有软件都放在D盘,C盘也不会干净,软件会在C盘的appdata或其他文件夹创建一些自己运行需要的文 件。这些文件是程序运行所需的,现在软件的设计思路很明确,即使你把程序装到G盘,应该呆在C盘的那一部分还是会在C盘自动创建,而且这种删除工作是有害 无益的。比如QQ的聊天记录,默认保存在我的文档,即使你一周ghost一次,也意味着,ghost完系统至少要丢好几天的聊天记录,此外还有 firefox的配置文件,各种各样的配置,比如我的appdata/Roaming/sogouExplorer,大小已经接近700M,webkit 核心的缓存也是放在这里。chrome更绝,直接把程序都装到appdata下了,很多人觉得不舒服,但google那帮技术员是傻子么?请看下图 appdata\roaming列表。是不是看到了很多熟悉的软件?
            我认为,appdata是整个操作系统基于“个人那一部分”的灵魂!你的当前账号对系统做的设置,包括主题,鼠标速度,输入法等,软件配置,基本都是保存 在这个地方,可以说你的电脑之所以是你的,区别于别人的电脑,不是你的硬盘容量有多大,CPU频率有多高。而是在数据层面凝结了你的个人努力最终形成的属 于你自己的计算机风格。
            roaming文件夹是软件的灵魂,任何软件在它被安装到计算机里面那一天,都只能算是白板程序,而在我们慢慢的使用过程中,我们会发现这个软件越来越顺 手,可能你改了软件的主题,可能你改了布局,也可能你改了相应的快捷键,等等,特别是一些可定制性强的软件。这些软件用的越久,就会越带上属于你个人的风 格。你所使用的软件的这种与白板软件的不同,体现在数据层面,就是各种各样的,保存在roaming下面的配置文件。各位可曾想过,从一个白板计算机,到 最终形成这种极具个人风格的特点。期间要经过多久的配置过程?每个人的计算机都处于不断地变化过程,这种风格也在不断地变化,但始终是区别于白板程序的。 (你用自己的photoshop很顺手,用别人的就会觉得不顺,你想过原因吗?)


            8楼2012-02-11 14:56
            回复

              七.写在结尾的话
              写到这里已经有点不清醒了,晚饭在召唤我。
              总之,都是一些个人看法,因为只停留在一些应用层面上,所以这篇文章只能叫“浅谈”。至于windows的深处运行机制以及制造垃圾的方式是什么,或者怎么修改系统架构可以避免垃圾的产生,我目前没这个能力。
              如有不同看法欢迎指出,如有错别字也请委婉指出……
              最后,祝大家小年快乐。


              9楼2012-02-11 15:05
              回复