SOS(罢工之子)调试器扩展名称背后的故事是什么?

时间:2010-08-26 07:40:29

标签: .net debugging sos

“罢工之子”这个名字有什么意义?它有什么意义,还是听起来很酷?

3 个答案:

答案 0 :(得分:53)

Jason Zander的blog post完美地解释了这一点:

  

CLR团队的原始名称   (由团队创始人和前任选择   微软杰出工程师迈克   Toutonghi)是“照明”。拉里   沙利文的开发团队创建了一个ntsd   扩展dll以帮助促进   引导v1.0。我们打电话给它   strike.dll(搞定了?“闪电   罢工“?是的,我知道,ba'dump bum)。   PSS真的需要这个才能   将信息反馈给团队   什么时候调试令人讨厌的压力   失败,几乎总是完成   使用Windows调试器堆栈。但   我们不想全力以赴   strike.dll,因为它包含一些   “危险”命令,如果你   真的没有我们的源代码   可能会引起你的困惑和痛苦   (甚至是其他微软团队)。所以我   推动团队创造“儿子之王”   罢工“(来自我们开发人员的西蒙   信用/责备这个),我们发货   它以产品开头   埃弗雷特(又名V1.1)。

另外,我之前听说CLR被称为“COM + 2.0”,但显然它的时间里有一些名字(来自here):

  

CLR运行时存在于名为MSCOREE.DLL的DLL中,该DLL代表Microsoft公共对象运行时执行引擎。 “公共对象运行时”或COR是该技术在其生命周期中拥有的众多名称之一。其他包括下一代Windows服务(NGWS)通用运行时(URT)闪电 COM + ,以及 COM + 2.0

答案 1 :(得分:5)

史密斯汉塞尔曼与Tess Ferrandez的播客讨论了这个问题。它源自.NET平台早期使用的内部代号。 show transcript

中的更多信息

答案 2 :(得分:1)

微软的

Mario Hewardt 详细解释:

<块引用>

当微软最初开发 .NET 1.0 时,他们需要 用于类似于 SOS 的扩展,以便他们可以在内部调试故障 CLR 本身,他们使用了他们开发的扩展,称为 罢工。 Strike 的用处非常明显,正如微软 支持工程师将使用该扩展来确定客户的 问题,客户想得到这个特殊的 扩展名。

不幸的是,Strike 暴露了太多的信息 关于 CLR 的内部结构,所以他们最终创建了一个稍微 被称为 SOS 的精简版,这就是公开的内容 在您的 .NET Framework 安装中可用。

.NET sos extension for Windbg

真的很酷。