|
 |
 |
 |
 |
Microsoft Knowledge Base Article
This article contents is Microsoft Copyrighted material.
©2005-©2007 Microsoft Corporation. All rights reserved. Terms
of Use |
Trademarks
Article ID: 975954 - Last Review: February 14, 2010 - Revision: 2.2 FIX: When you run a .NET Framework 2.0-based application, a System.AccessViolationException exception occurs, or a dead-lock occurs on two threads in an application domainYou
encounter one of the following problems when you run an application in the
Microsoft .NET Framework 2.0. Problem 1 Either
a data
corruption occurs or you receive a System.AccessViolationException exception. If
you receive the exception, you also receive the
following error message: Attempted to read or write protected memory. This is often an
indication that other memory is corrupt. This
problem occurs when all the following conditions are true:
- An assembly is shared across multiple domains.
- A
Lightweight Code Gen (LCG) method is attached to a type that is inside the
shared assembly.
- The LCG method is collected in several domains. Then, the code in the assembly is compiled by a just-in-time
(JIT) compiler.
- Both the JIT code and the LCG method perform
an interface call.
Problem 2When you run the
application on a computer that has high memory usage, the application stops
responding. If you debug the problem by using
the Windbg.exe tool, you find that
a dead-lock occurs on two
threads in an application
domain. Cause of problem 1The data corruption occurs
because a common
language runtime (CLR) stub function is
no longer in committed memory after an application domain is
recycled. The
function was dynamically generated. Cause of problem 2The
application stops responding because one thread
obtains a lock to
perform the m_prCachedMethodPermissionsLock function.
Then,
the thread is
suspended to
participate in garbage collection and does not release the lock. However, another thread that
is in cooperative mode in the same application domain continues to wait for the lock. Hotfix Information A supported
hotfix is available from Microsoft. However, this hotfix is intended to correct
only the problem that is described in this article. Apply this hotfix only to
systems that are experiencing the problem described in this article. This
hotfix might receive additional testing. Therefore, if you are not severely
affected by this problem, we recommend that you wait for the next software
update that contains this hotfix. To download this hotfix from the Microsoft Developer Network (MSDN) Code Gallery, visit the following Microsoft Web site:
Note The MSDN Code Gallery displays the languages for which the hotfix is available. If you do not see your language listed, it is because the Code Gallery resource page is not available for that language.
Alternatively, you can download this hotfix rollup from the following Microsoft Connect Web site:
Prerequisites You must have the
.NET Framework 2.0 Service Pack 2
(SP2) or the
.NET Framework 3.5 Service
Pack (SP1)
installed to apply this hotfix. Restart requirement You do not have to restart the computer after you apply this
hotfix if no instance of the
.NET Framework is being
used.
Hotfix replacement information This hotfix does not replace other hotfixes. File information The English version of this hotfix has the file
attributes (or later file attributes) that are listed in the following table.
The dates and times for these files are listed in Coordinated Universal Time
(UTC). When you view the file information, it is converted to local time. To
find the difference between UTC and local time, use the Time
Zone tab in the Date and Time item in Control
Panel. For all supported x86-based versions of Windows Vista SP2 and Windows Server 2008 SP2Collapse this tableExpand this table | File name | File version | File size | Date | Time |
|---|
| Mscorlib.dll | 2.0.50727.4408 | 4,550,656 | 21-Oct-2009 | 07:24 | | Mscordacwks.dll | 2.0.50727.4408 | 989,000 | 21-Oct-2009 | 07:24 | | Mscorwks.dll | 2.0.50727.4408 | 5,818,688 | 21-Oct-2009 | 07:24 | | Sos.dll | 2.0.50727.4408 | 388,920 | 21-Oct-2009 | 07:24 |
For all supported x64-based versions of Windows Vista SP2 and Windows Server 2008 SP2Collapse this tableExpand this table | File name | File version | File size | Date | Time |
|---|
| Mscorlib.dll | 2.0.50727.4408 | 4,567,040 | 21-Oct-2009 | 07:24 | | Mscordacwks.dll | 2.0.50727.4408 | 1,758,536 | 21-Oct-2009 | 07:24 | | Mscorwks.dll | 2.0.50727.4408 | 10,061,120 | 21-Oct-2009 | 07:24 | | Sos.dll | 2.0.50727.4408 | 485,176 | 21-Oct-2009 | 07:24 |
For all supported Itanium-based versions of Windows Server 2008 SP2Collapse this tableExpand this table | File name | File version | File size | Date | Time |
|---|
| Mscorlib.dll | 2.0.50727.4408 | 4,009,984 | 21-Oct-2009 | 07:26 | | Mscordacwks.dll | 2.0.50727.4408 | 3,085,128 | 21-Oct-2009 | 07:26 | | Mscorwks.dll | 2.0.50727.4408 | 20,173,120 | 21-Oct-2009 | 07:26 | | Sos.dll | 2.0.50727.4408 | 872,760 | 21-Oct-2009 | 07:27 |
For all supported x86-based versions of Windows 7.0Collapse this tableExpand this table | File name | File version | File size | Date | Time |
|---|
| Mscorlib.dll | 2.0.50727.4934 | 4,550,656 | 03-Nov-2009 | 23:27 | | Mscordacwks.dll | 2.0.50727.4934 | 995,160 | 03-Nov-2009 | 23:27 | | Mscorwks.dll | 2.0.50727.4934 | 5,816,656 | 03-Nov-2009 | 23:27 | | Sos.dll | 2.0.50727.4934 | 388,936 | 03-Nov-2009 | 23:28 |
For all supported x64-based versions of Windows 7.0 and Windows Server 2008 R2Collapse this tableExpand this table | File name | File version | File size | Date | Time |
|---|
| Mscorlib.dll | 2.0.50727.4934 | 4,567,040 | 03-Nov-2009 | 23:33 | | Mscordacwks.dll | 2.0.50727.4934 | 1,764,168 | 03-Nov-2009 | 23:33 | | Mscorwks.dll | 2.0.50727.4934 | 10,058,560 | 03-Nov-2009 | 23:33 | | Sos.dll | 2.0.50727.4934 | 485,192 | 03-Nov-2009 | 23:34 |
For all supported Itanium-based versions of Windows Server 2008 R2Collapse this tableExpand this table | File name | File version | File size | Date | Time |
|---|
| Mscorlib.dll | 2.0.50727.4934 | 4,009,984 | 03-Nov-2009 | 23:32 | | Mscordacwks.dll | 2.0.50727.4934 | 3,085,640 | 03-Nov-2009 | 23:32 | | Mscorwks.dll | 2.0.50727.4934 | 20,164,944 | 03-Nov-2009 | 23:32 | | Sos.dll | 2.0.50727.4934 | 872,760 | 03-Nov-2009 | 23:32 |
For all supported x86-based versions of Windows XP, of Windows Server 2000, and of Windows Server 2003Collapse this tableExpand this table | File name | File version | File
size | Date | Time | Platform |
|---|
| Mscordacwks.dll | 2.0.50727.4408 | 989,000 | 30-Sep-2009 | 05:12 | x86 | | Mscorlib.dll | 2.0.50727.4408 | 4,550,656 | 30-Sep-2009 | 05:12 | x86 | | Mscorwks.dll | 2.0.50727.4408 | 5,818,688 | 30-Sep-2009 | 05:12 | x86 | | Sos.dll | 2.0.50727.4408 | 388,920 | 30-Sep-2009 | 05:12 | x86 |
For all supported x64-based versions of Windows XP, of Windows Server 2000, and of Windows Server 2003Collapse this tableExpand this table | File name | File version | File
size | Date | Time | Platform |
|---|
| Mscordacwks.dll | 2.0.50727.4408 | 1,758,536 | 29-Sep-2009 | 23:57 | x64 | | Mscorlib.dll | 2.0.50727.4408 | 4,567,040 | 29-Sep-2009 | 23:51 | x64 | | Mscorwks.dll | 2.0.50727.4408 | 10,061,120 | 29-Sep-2009 | 23:55 | x64 | | Sos.dll | 2.0.50727.4408 | 485,176 | 29-Sep-2009 | 23:52 | x64 |
For all supported Itanium-based versions of Windows XP, of Windows Server 2000, and of Windows Server 2003Collapse this tableExpand this table | File name | File version | File
size | Date | Time | Platform |
|---|
| Mscordacwks.dll | 2.0.50727.4408 | 3,085,128 | 30-Sep-2009 | 01:05 | IA-64 | | Mscorlib.dll | 2.0.50727.4408 | 4,009,984 | 30-Sep-2009 | 01:03 | IA-64 | | Mscorwks.dll | 2.0.50727.4408 | 20,173,120 | 30-Sep-2009 | 00:58 | IA-64 | | Sos.dll | 2.0.50727.4408 | 872,760 | 30-Sep-2009 | 01:02 | IA-64 |
Microsoft
has confirmed that this is a problem in the Microsoft products that are listed
in the "Applies to" section.
APPLIES TO- Microsoft .NET Framework 2.0 Service Pack 2
- Microsoft .NET Framework 3.5 Service Pack 1
- Microsoft .NET Framework 2.0
| kbexpertiseadvanced kbsurveynew kbqfe kbhotfixserver KB975954 |
Community Feedback System
Very often, it takes hours to solve a problem. Very often, you've looked high
and low, and have tried a lot of solutions. When you finally found it, chances
are, it was because someone else helped you. Here's your chance to give back.
Use our community feedback tool to let others know what worked for you and what
didn't.
Please also understand that the community feedback system is not warranted to be
correct, it's simply a system that we've built to let people try and help each
other. If something in a feedback response doesn't make sense to you, or you're
not comfortable making changes that the feedback talks about (like registry
edits), please consult a professional.
Thank you for using kbAlertz.com Feedback System.
-- Scott Cate
|
 |
 |
 |
 |
 |
 |
 |
| |