No subject
Fri Feb 8 08:55:55 EST 2008
Performance: Strong name signature verification. All shared
assemblies must have strong name signatures. These signature are
verified when the assembly is installed into the gac. Once verified the
signatures are not verified each time the assembly is referenced. In
contrast, shared assemblies deployed outside the assembly have their
signatures verified each time the assembly is loaded. Performance:
Working set. If a large number of applications will be referencing a
particular shared assembly, overall working set can be improved by using
the gac. Because all applications will be loading the assembly from the
same file path, the operating system will share the assemblys code pages
among all callers. A commonly used WebForm control is a good example of
an assembly where this benefit may apply. Management: Deploying bug
fixes. Administrators can use the gac to deploy bug fixes intended to be
picked up by all applications. By deploying the fix to the gac and
stating the appropriate version policy in the machine configuration
file, an admin can ensure that all applications on the machine will
begin to use the fix.
*********************************
more stuff related and only somewhat related.
http://www.codeproject.com/dotnet/demystifygac.asp
http://www.aspalliance.com/articleViewer.aspx?aId=76&vId=1&pId=-1
http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=%2B%22Global+Assembly+Cache%22+%2Bassembly&btnG=Google+Search
**************************************************************************************************
The contents of this email and any attachments are confidential.
It is intended for the named recipient(s) only.
If you have received this email in error please notify the system manager or the
sender immediately and do not disclose the contents to anyone or make copies.
**************************************************************************************************
--=__Part5709FDEC.0__=
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Content-Description: HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=windows-1252">
<META content="MSHTML 6.00.2800.1264" name=GENERATOR></HEAD>
<BODY
style="FONT-WEIGHT: normal; FONT-SIZE: 12pt; MARGIN: 4px 4px 1px; LINE-HEIGHT: normal; FONT-FAMILY: Arial">
<DIV>Well I would say this (after reading everyone's comments), what is being
missed here is the fact that the strong mane is the "final" key to tell one
assembly from another.<BR><BR>Say I am a developer and I create assembly
"system.dll". another developer creates another assembly "system.dll" what tells
these two apart, not to mention the system.dll that comes with the runtime?
Version number you say? OK. What if we are both version 2?<BR><BR>See how
omiting the strong name breaks things down?<BR><BR>Next let's look at the
multiple assemblies issue. By definition, the runtime should look in the local
folders first, then the GAC. In the case of ASP.NET, the only way to have custom
controls available across webs is to install them into the GAC unless you plan
to copy them to each bin directory. Then you must be sure to update each one if
you do.<BR><BR>With a single assembly in the GAC, you only have to wory about
the one. And if you look at the GAC itself, you have to differentiate it with
the Strong name as the final key. </DIV>
<DIV> </DIV>
<DIV>Again, the runtime looks for a file named "system.dll" with a particular
strong name not system.2.dll.</DIV>
<DIV> </DIV>
<DIV>In short, I think the directory method is the way to go.</DIV>
<DIV> </DIV>
<DIV>I may be way off base, but to me it keeps all the pieces in one place as
organized more easily.<BR></DIV>
<DIV>************************************************<BR>From the GotDotNet Site
(http://www.gotdotnet.com/team/clr/when_to_use_the_gac.aspx)...<BR></DIV>
<P class=Text
style="MARGIN-LEFT: 0.25in; TEXT-INDENT: -9pt; mso-list: l3 level1 lfo14; tab-stops: list 22.5pt"><SPAN
style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN
style="mso-list: Ignore"><SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><B style="mso-bidi-font-weight: normal">Performance:<SPAN
style="mso-spacerun: yes"> </SPAN>Strong name signature verification.</B> All
shared assemblies must have strong name signatures.<SPAN
style="mso-spacerun: yes"> </SPAN>These signature are verified when the assembly
is installed into the <SPAN class=SpellE>gac</SPAN>.<SPAN
style="mso-spacerun: yes"> </SPAN>Once verified the signatures are not verified
each time the assembly is referenced.<SPAN style="mso-spacerun: yes"> </SPAN>In
contrast, shared assemblies deployed outside the assembly have their signatures
verified each time the assembly is loaded.</P>
<P class=Text
style="MARGIN-LEFT: 0.25in; TEXT-INDENT: -9pt; mso-list: l3 level1 lfo14; tab-stops: list 22.5pt"><SPAN
style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN
style="mso-list: Ignore"><SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><B style="mso-bidi-font-weight: normal">Performance:
Working set.</B> If a large number of applications will be referencing a
particular shared assembly, overall working set can be improved by using the
<SPAN class=SpellE>gac</SPAN>.<SPAN style="mso-spacerun: yes"> </SPAN>Because
all applications will be loading the assembly from the same file path, the
operating system will share the assemblys code pages among all callers.<SPAN
style="mso-spacerun: yes"> </SPAN>A commonly used <SPAN
class=SpellE>WebForm</SPAN> control is a good example of an assembly where this
benefit may apply.</P>
<P class=Text
style="MARGIN-LEFT: 0.25in; TEXT-INDENT: -9pt; mso-list: l3 level1 lfo14; tab-stops: list 22.5pt"><SPAN
style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN
style="mso-list: Ignore"><SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><B style="mso-bidi-font-weight: normal">Management:
Deploying bug fixes.</B> Administrators can use the <SPAN
class=SpellE>gac</SPAN> to deploy bug fixes intended to be picked up by all
applications.<SPAN style="mso-spacerun: yes"> </SPAN>By deploying the fix to the
<SPAN class=SpellE>gac</SPAN> and stating the appropriate version policy in the
machine configuration file, an admin can ensure that all applications on the
machine will begin to use the fix.</P>
<DIV><BR><BR>*********************************</DIV>
<DIV> </DIV>
<DIV>more stuff related and only somewhat related.</DIV>
<DIV> </DIV>
<DIV><A
href="http://www.codeproject.com/dotnet/demystifygac.asp">http://www.codeproject.com/dotnet/demystifygac.asp</A></DIV>
<DIV> </DIV>
<DIV><A
href="http://www.aspalliance.com/articleViewer.aspx?aId=76&vId=1&pId=-1">http://www.aspalliance.com/articleViewer.aspx?aId=76&vId=1&pId=-1</A></DIV>
<DIV> </DIV>
<DIV><A
href="http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=%2B%22Global+Assembly+Cache%22+%2Bassembly&btnG=Google+Search">http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=%2B%22Global+Assembly+Cache%22+%2Bassembly&btnG=Google+Search</A></DIV><FONT SIZE=3 COLOR=BLUE><PRE>**************************************************************************************************
The contents of this email and any attachments are confidential.
It is intended for the named recipient(s) only.
If you have received this email in error please notify the system manager or the
sender immediately and do not disclose the contents to anyone or make copies.
**************************************************************************************************
</PRE></FONT>
</BODY></HTML>
--=__Part5709FDEC.0__=--
More information about the Mono-devel-list
mailing list