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

.net 什么';SOS(罢工之子)调试器扩展名背后的故事是什么?,.net,debugging,sos,.net,Debugging,Sos,“罢工之子”这个名字有什么意义?这有什么意义吗?还是听起来很酷?不久前,斯科特·汉塞尔曼(Scott Hanselman)在与苔丝·费兰德斯(Tess Ferrandez)的播客中讨论了这一点。它源自.NET平台早期使用的内部代码名。更多信息请参见。Jason Zander的文章,其中完美地解释了这一点: CLR团队的原始名称 (由团队创始人和前任 微软杰出工程师迈克 Toutonghi)是“照明”。拉里 沙利文的开发团队创建了一个ntsd 扩展dll以帮助 v1.0的引导。我们称之为 stri

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

不久前,斯科特·汉塞尔曼(Scott Hanselman)在与苔丝·费兰德斯(Tess Ferrandez)的播客中讨论了这一点。它源自.NET平台早期使用的内部代码名。更多信息请参见。

Jason Zander的文章,其中完美地解释了这一点:

CLR团队的原始名称 (由团队创始人和前任 微软杰出工程师迈克 Toutonghi)是“照明”。拉里 沙利文的开发团队创建了一个ntsd 扩展dll以帮助 v1.0的引导。我们称之为 strike.dll(明白吗?“Lightning 罢工?,是的,我知道,巴达姆流浪汉)。 PSS真的需要这样才能 将信息反馈给团队 是时候去调试那些讨厌的压力了 失败,几乎总是这样 使用Windows调试器堆栈。但是 我们不想把所有的钱都发出去 strike.dll,因为它包含一些 “危险”命令,如果你 真的没有我们的源代码 可能会给你带来困惑和痛苦 (甚至对其他微软团队也是如此)。所以我 推动团队创建“儿子” 罢工”(西蒙从我们的开发采取 信用/责任),我们发货了 它以产品开头 埃弗里特(又名V1.1)

此外,我以前也听说CLR被称为“COM+2.0”,但很明显,它在它的时代有几个名字(来自:

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


微软的Mario Hewardt详细解释如下:

当微软最初开发.NET1.0时,他们有这样的需求 用于类似于SOS的扩展,以便他们能够在内部调试故障 CLR本身,他们使用了他们开发的一个扩展名为 罢工Strike的作用是非常明显的,就像微软一样 支持工程师将使用该扩展来计算客户的 问题,客户希望得到他们的手在这个特定的 分机

不幸的是,罢工暴露了太多的信息 关于CLR的内部,所以他们最终创建了一个 它的精简版本称为SOS,这就是公开发布的版本 在.NET framework安装中提供


真的很酷。

深刻的历史。我总是想知道SOS.dll扩展名的缩写,它到底是什么意思。事实上,我一直认为MSCOREE.dll是微软的核心执行引擎。谢谢@chris让我免于尴尬。你能提供一个总结吗?如果没有其他原因的话,因为链接腐烂(在本例中已经发生了)。显然,CLR的代码名是“Lightning”,因此调试扩展名为“Strike”,那么“Strike之子”不知何故作为一个后代而出现。