文件security.config.cch与CLR有什么关系?

6
我在我的计算机上使用VS2008, SP1进行调试时遇到了严重的锁死问题。我运行了ProcMon.exe来尝试确定发生了什么事情。我看到一个东西是对名为security.config.cch和security.config.cch.new的文件进行了数百或数千次重复读取+写入。
这些文件是什么?为什么我的应用程序需要反复读写此文件?
谢谢, 戴夫
示例:
2:18:14.1421944 PM  App.vshost.exe  1152    ReadFile    C:\Documents and Settings\myuser\Application Data\Microsoft\CLR Security Config\v2.0.50727.42\security.config.cch   SUCCESS Offset: 170,397, Length: 208
2:18:14.1422854 PM  App.vshost.exe  1152    ReadFile    C:\Documents and Settings\myuser\Application Data\Microsoft\CLR Security Config\v2.0.50727.42\security.config.cch   SUCCESS Offset: 170,605, Length: 224
2:18:14.1423824 PM  App.vshost.exe  1152    WriteFile   C:\Documents and Settings\myuser\Application Data\Microsoft\CLR Security Config\v2.0.50727.42\security.config.cch.new   SUCCESS Offset: 206,817, Length: 208
2:18:14.1424843 PM  App.vshost.exe  1152    WriteFile   C:\Documents and Settings\myuser\Application Data\Microsoft\CLR Security Config\v2.0.50727.42\security.config.cch.new   SUCCESS Offset: 207,025, Length: 224
2:18:14.1425788 PM  App.vshost.exe  1152    WriteFile   C:\Documents and Settings\myuser\Application Data\Microsoft\CLR Security Config\v2.0.50727.42\security.config.cch.new   SUCCESS Offset: 207,249, Length: 12
2:18:14.1426746 PM  App.vshost.exe  1152    ReadFile    C:\Documents and Settings\myuser\Application Data\Microsoft\CLR Security Config\v2.0.50727.42\security.config.cch   SUCCESS Offset: 170,841, Length: 220
2:18:14.1427679 PM  App.vshost.exe  1152    ReadFile    C:\Documents and Settings\myuser\Application Data\Microsoft\CLR Security Config\v2.0.50727.42\security.config.cch   SUCCESS Offset: 171,061, Length: 224
1个回答

7

security.config.cch文件及其变体(security.config.cch.newsecurity.config.cch.[随机数字]等)是安全解析缓存文件

这些文件本质上是您应用程序代码的CAS(代码访问安全性)需求的缓存。它们允许CLR内置的安全系统更快地解析您的代码的安全需求。

您可以安全地删除这些文件,这将导致下一次运行应用程序时的初始性能稍慢,但是CLR安全子系统最终会重新生成这些文件。

这个过程可能会出现一个已知问题,“FIX:使用.NET Framework 2.0构建Web应用程序时尝试运行Web应用程序时出现错误消息:“发生了压倒性的更改”,但是,这适用于.NET Framework 2.0,可能仍然适用于.NET Framework 3.5 SP1(您正在使用VS2008 SP1)。

有很多对这些文件的读写操作是完全正常的,但是,如果读写操作过度并且导致死机,我建议您检查代码(假设您有许多对特定安全操作的需求或等效操作的调用)或者检查您在运行时安全策略的配置,如在.NET Framework配置工具(Mscorcfg.msc)中设置


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接