回 帖 发 新 帖 刷新版面

主题:[原创]Explorer到底是什么东西?—— 没那么简单,恳求解惑!

Explorer(Explorer.exe)到底是什么东西?

【系统背景】

Microsoft Windows 7  64位 旗舰版 简体中文版
(下简称“本Windows系统”)

【不止一个】

在本Winsows系统中,有叁个Explorer.exe,它们分别位于以下叁个不同的系统文件夹中:

C:\Windows
C:\Windows\System32
C:\Windows\SysWOW64

系统给出的上述三个Explorer.exe的版本号完全相同,均为6.1.7601.xxxx;但经过对文件的校验(Check)可知:分别位于 C:\Windows\System32与C:\Windows\SysWOW64这两个文件夹中的两个Explorer.exe文件,完全相同(虽然它们分别位于“xx32”和“xx64”两个不同的位置),而位于C:\Windows文件夹中的Explorer.exe文件,却与它们不同,文件大小略小。


【扮演Shell的角色】

我们知道,Microsoft官方为本Windows操作系统配备的Shell就是Explorer.exe。我的一些粗略的理解是:Shell这个角色,承担着实现用户与Windows操作系统之间某些最基本的对话的任务,具体地说,就是以文件操作为主要内容,比如打开(包括运行/执行)、复制、删除、移动文件,以及查看与修改文件属性等操作。

TaskInfo或类似的进程/线程监控软件给出的信息是:扮演这个Shell角色的Explorer.exe,是位于C:\Windows文件夹中的那个,它的默认(当前)目录环境(Curr Dir)是C:\Windows\system32\,它由C:\Windows\system32\winlogon.exe即“Windows Logon Application”来开启运行,即它的父进程是winlogon.exe —— 运行中的Explorer.exe的Parent PID字段的值印证了这一点。

那么,第一个问题就来了:

既然C:\Windows\Explorer.exe担当了Shell,那么,C:\Windows\System32和C:\Windows\SysWOW64文件夹中的Explorer.exe,又是做什么用的呢?


【Explorer.exe与winlogon.exe的亲密关系】

上面粗略地谈到了我对Explorer.exe身为Shell这个事实的理解,但是,如果要再深究一层的话,问题就又来了。

请注意我下面所描述的各个操作的详细而具体的步骤。

我们都知道,当登录本Windows系统之后,第一个出现在用户面前的界面,就是任务栏与桌面图标。我们有理由相信这个{任务栏+桌面图标}是Explorer.exe程序的一部分。此时的Explorer.exe的父进程是winlogon.exe。

就在这时,我利用“命令提示符”(Windows Command Processor)工具,运行“taskkill”命令来“终止(本程序官方使用的动词是‘Terminate’)”掉Explorer.exe程序,系统所反馈出的结果是“关闭Windows”的对话界面。

然而,此时我若利用“Windows 任务管理器(taskmgr.exe)”来“结束(E) (根据这个“E”猜想,本程序官方使用的动词很可能是‘End’)”掉Explorer.exe程序,结果却不同,{任务栏+桌面图标}一同消失了。

再然而,此时我若利用第三方进程管理软件TaskInfo程序,来“终结(本程序官方使用的动词是‘Terminate’)”掉Explorer.exe 程序,结果就又不同,{任务栏+桌面图标}消失后,又倏然重新“自动复活”。根据对此刻“复活”了的Explorer.exe的Parent PID的观察,可以知道:“自动复活”了Explorer.exe程序的,是winlogon.exe,即其父进程。而且,值得注意的是:当令{任务栏+桌面图标}消失之后,可以利用taskmgr.exe、cmd.exe(Windows Command Processor)将其“复活”,然后,再利用TaskInfo程序“Terminate”掉 Explorer.exe,Explorer.exe就又“自动复活”,而令其“自动复活”的父进程必定是winlogon.exe。

再再然而,此时我若利用第三方进程管理软件TaskInfo程序,来“关闭(本程序官方使用的动词是‘Close’)”掉Explorer.exe程序,那么,结果就与“taskkill”命令的“终止(本程序官方使用的动词是‘Terminate’)”行为的结果一致 ——系统所反馈出的结果是“关闭Windows”的对话界面。

那么,现在就又有三个问题:

(一)在第三方进程管理软件TaskInfo程序中,“Close”与“Terminate”操作的意义是完全不同的,而其中的“Close”又与 “taskkill”命令的“Terminate”的果效一致(如前段所述)。那么,就以TaskInfo程序中的操作名称来说,“Close”与 “Terminate”两种操作,实质的区别是什么?也就是说,当分别执行这两个操作时,TaskInfo程序到底令操作系统在幕后做了什么?

(二)由上述现象又可大致归纳得到:TaskInfo程序中的“Terminate”操作,与Windows 任务管理器(taskmgr.exe)的“结束(E)(可能是End)”操作,这两者的果效有相同之处,就是{任务栏+桌面图标}都消失了。而不同之处在于,taskmgr.exe的“结束(E)”操作让{任务栏+桌面图标}彻底消失不得“复活”,而第三方进程管理软件TaskInfo程序的 “Terminate”操作令{任务栏+桌面图标}消失后,winlogon.exe又令Explorer.exe迅速“自动复活”,{任务栏+桌面图标}随之重现。这样看来,Explorer.exe与winlogon.exe有着不一般的“亲密关系”,后者仿佛是前者的“守护天使”—— 一旦有第三方软件令前者消失,后者就立刻令前者“自动复活”。那么,问题就是:这前后二者的“亲密关系”,是怎样在操作系统中实现的呢?

(三)进一步地追问:到底还有没有其他什么第三方进程/线程监控软件,可以达到Windows 任务管理器(taskmgr.exe)的“效级(Power Level)”,一次性地彻底Terminate或End掉Explorer.exe,且不再能被winlogon.exe“自动复活”呢?


【Shell vs 任务栏+桌面图标vs 资源管理器】

接下来,我们继续做实验,在{任务栏+桌面图标}存有的情况下,利用taskmgr.exe、cmd.exe(Windows Command Processor)、Explorer.exe的“运行”等工具, “运行”或执行“explorer”—— 实际打开的就是C:\Windows\explorer.exe,那么,一个新窗口就被开启了,这个新窗口(所在的)程序,应该被叫做“Windows资源管理器”。那么,监视正在运行的程序的信息,也可以确定,Windows资源管理器这个程序也正是C:\Windows\explorer.exe。

那么,问题自然就来了:同样一个C:\Windows\explorer.exe,显然肩负了{任务栏+桌面图标}以及{Windows资源管理器}这两大人机对话界面任务。这前后两项不同的界面任务,在explorer.exe这同一个程序中,是如何被分配与激活的呢?其中的机制是怎样的呢?

更深一步地实验,可以揭示出上面这个问题的复杂性:

利用Windows 任务管理器(taskmgr.exe)“结束(E)”掉Explorer.exe,结果上面已经说过了,就是{任务栏+桌面图标}一同消失,此时,再利用 Windows 任务管理器(taskmgr.exe)、cmd.exe(Windows Command Processor)这些本Windows系统自带的工具,“运行”或执行“explorer”,结果是{任务栏+桌面图标}一同“复活”。

然而,如果此时(就是{任务栏+桌面图标}一同消失之后)利用第三方命令提示符工具如PowerCmd,来执行“explorer”,结果却不同,那就是{任务栏+桌面图标}不会“复活”,而是会开启一个Windows资源管理器窗口。

看似同样地运行或执行“explorer”,本Windows系统自带的工具与第三方工具,两者的果效就是不同,它们分别对应着Explorer.exe“里面”不同的两项功能 —— 这如何来解释?

【印象总结】

经历了上面所述的一切,我的意识中就有了这么一种印象:

本Windows系统自带的工具,其“效级(Power Level)”就是比第三方工具的更高。

而第三方工具软件,看似可以代替Windows系统自带的工具,如资源管理器、命令提示行、甚至是Shell,但实质与果效大相径庭。

在本Windows系统中,第三方工具软件似乎始终处于“二等公民”的地位。

那么,这样看来,利用第三方工具软件,彻底(尽最大可能地从系统底层)取代Windows系统自带的工具,还不是那么简单与容易。

对于本帖子中所提到的种种问题与疑惑,期盼各位大虾、高人,不吝赐教、指点迷津!

非常感谢!

回复列表 (共1个回复)

沙发

“后生可畏”一语,出自《论语·子罕》。子曰:“后生可畏,焉知来者之不如今也?”这句话的意思是:年轻人的前途是不可限量的,怎么知道他将来不如我们呢?孔子说这句话,主要的意思是告诫人们不要轻视那些学业未成的后生,同时也是勉励后生之辈要及时努力求学,激励年轻人青出于蓝而胜于蓝。
  所谓后生可畏,我想“畏”就“畏”在后生一辈占有年轻的优势。伟人毛泽东也曾说过:“世界是你们的,也是我们的,但是归根结底是你们的。你们青年人,朝气蓬勃,正在兴旺时期,好像早晨八、九点钟的太阳。希望[url=http://t.people.com.cn/bjywwh]阳痿的早期症状[/url]寄托在你们的身上。”是啊,年轻人正如初升的太阳,如四季中的春天,一切才刚刚起头,有的是时间,有的是希望。没有掌握好的知识,可以从从容容地去学习,不会有去日无多的紧迫感;没有练习好的技能,可以淡淡定定地去训练,不会有日薄西山的沮丧情绪。这[url=http://wjxqlxy.t.sohu.com/]男人早泄是怎么回事[/url]些都是老年人无法比拟的。
  但是,话说回头。如果年轻人占着自己的优势沾沾自喜,不抓紧时间学习,虚度光阴,[url=http://t.163.com/7452397506]导致前列腺囊肿的原因是什么[/url]碌碌无为,到头来也只能是应了那句“少壮不努力,老大徒伤悲”的老话。王安石在《伤仲永》一文里讲了这样一个故事:古代有一个叫方仲永的少年,天资聪颖过人,且有神童之称。小小的年纪就能够吟诗作文,而且思维敏捷到别人一出题他就能够“立就”的速度,诗文的内容也还不错,都是讲“感谢养恩”之类的。这令周围的人惊讶不已,认为此子将来一定大有出息,当个大官什么的。于是都来巴结他父亲,“稍稍宾客其父”,请他们父子俩吃[url=http://t.163.com/4825717105]治疗尿道炎[/url]饭,出钱买方仲永的诗作。他父亲觉得有利可图,于是每天就带着自己的儿子四处走动,到处炫耀方仲永的才华,以此博得人们的羡慕和馈赠,再也不让小仲永学习。少不更事的方仲永或许也觉得自己真是那么一会事,跟着父亲接受别人的奉承和夸耀不亦乐乎,把学习之事抛到九霄云外去了。就这样数年之后,方仲永已“泯然众人矣”!沦为普普通通的一个人,根本不再是什么神童了。须知业精于勤而荒于嬉,先天的聪颖还要后天的不断学习,才能成为真正的天才。
  这个教训很值得年轻人汲取。即使一个人先天的条件再好,后天不琢不学不勤不练,也会成为一事无成的凡夫俗子。“年轻”是年轻人的资本,但是资本不会好好利用,就会贬值,甚至于贬得一文不值。孔子在说完“后生可畏,焉知来者之不如今也”这句话之后,接着还有一句话是:“四十、五十而无闻焉,斯亦不足畏也已。”意思是说如果一个人到了四十、五十岁,他的学问和事业尚未听说有何成就,那他也就没有什么可畏的了。看看,老人家真不愧为一代宗师,说话就是有水平,还幽你一默呢,你不长进,鬼才怕你。“後生可畏”一語,出自《論語·子罕》。子曰:[url=http://t.sohu.com/u/1421826300]包皮过长如何治疗[/url]“後生可畏,焉知來者之不如今也?”這句話的意思是:年輕人的前途是不可限量的,怎麼知道他將來不如我們呢?孔子說這句話,主要的意思是告誡人們不要輕視那些學業未成的後生,同時也是勉勵後生之輩要及時努力求學,激勵年輕人青出於藍而勝於藍。
  所謂後生可畏,我想“畏”就“畏”在後生一輩占有年輕的優勢。偉人毛澤東也曾說過:“世界是你們的,也是我們的,但是歸根結底是你們的。你們青年人,朝氣蓬勃,正在興旺時期,好像早晨八、九點鐘的太陽。希望寄托在你們的身上。”是啊,年輕人正如初升的太陽,如四季中的春天,一切才剛剛起頭,有的是時間,有的是希望。沒有掌握好的知識,可以從從容容地去學習,不會有去日無多的緊迫感;沒有練習好的技能,可以淡淡定定地去訓練,不會有日薄西山的沮喪情緒。這些都是老年人無法比擬的。
  但是,話說回頭。如果年輕人占著自己的優勢沾沾自喜,不抓緊時間學習,虛度光陰,碌碌無為,到頭來也隻能是應瞭那句“少壯不努力,老大徒傷悲”的老話。王安石在《傷仲永》一文裡講瞭這樣一個故事:古代有一個叫方仲永的少年,天資聰穎過人,且有神童之稱。小小的年紀就能夠吟詩作文,而且思維敏捷到別人一出題他就能夠“立就”的速度,詩文的內容也還不錯,都是講“感謝[url=http://t.people.com.cn/gbpdsq]前列腺炎 症状[/url]養恩”之類的。這令周圍的人驚訝不已,認為此子將來一定大有出息,當個大官什麼的。於是都來巴結他父親,“稍稍賓客其父”,請他們父子倆吃飯,出錢買方仲永的詩作。他父親覺得有利可圖,於是每天就帶著自己的兒子四處走動,到處炫耀方仲永的才華,以此博得人們的羨慕和饋贈,再也不讓小仲永學習。少不更事的方仲永或許也覺得自己真是那麼一會事,跟著父親接受別人的奉承和誇耀不亦樂乎,把學習之事拋到九霄雲外去瞭。就這樣數年之後,方仲永已“泯然眾人矣”!淪為普普通通的一個人,根本不再是什麼神童瞭。須知[url=http://t.qq.com/zlywzxdsq]什么叫包皮包茎[/url]業精於勤而荒於嬉,先天的聰穎還要後天的不斷學習,才能成為真正的天才。
  這個教訓很值得年輕人汲取。即使一個人先天的條件再好,後天不琢不學不勤不練,也會成為一事無成的凡夫俗子。“年輕”是年輕人的資本,但是資本不會好好利用,就會貶值,甚至於貶得一文不值。孔子在說完“後生可畏,焉知來者之不如今也”這句話之後,接著還[url=http://t.qq.com/ljxndy]淋球菌性尿道炎[/url]有一句話是:“四十、五十而無聞焉,斯亦不足畏也已。”意思是說如果一個人到瞭四十、五十歲,他的學問和事業尚未聽說有何成就,那他也就沒有什麼可畏的瞭。看看,老人傢真不愧為一代宗師,說話就是有水平,還幽你一默呢,你不長進,鬼才怕你。

我来回复

您尚未登录,请登录后再回复。点此登录或注册