Re: anyone interested in decompilation

Barry Kelly <barry.j.kelly@gmail.com>
15 Aug 2006 18:49:07 -0400

          From comp.compilers

Related articles
[5 earlier articles]
Re: anyone interested in decompilation kym@ukato.freeshell.org (russell kym horsell) (2006-08-11)
Re: anyone interested in decompilation chris.dollin@hp.com (Chris Dollin) (2006-08-12)
Re: anyone interested in decompilation Juergen.Kahrs@vr-web.de (=?ISO-8859-1?Q?J=FCrgen_Kahrs?=) (2006-08-13)
Re: anyone interested in decompilation gah@ugcs.caltech.edu (glen herrmannsfeldt) (2006-08-14)
Re: anyone interested in decompilation DrDiettrich1@aol.com (Hans-Peter Diettrich) (2006-08-14)
Re: anyone interested in decompilation chris.dollin@hp.com (Chris Dollin) (2006-08-14)
Re: anyone interested in decompilation barry.j.kelly@gmail.com (Barry Kelly) (2006-08-15)
Re: anyone interested in decompilation gah@ugcs.caltech.edu (glen herrmannsfeldt) (2006-08-15)
| List of all articles for this month |

From: Barry Kelly <barry.j.kelly@gmail.com>
Newsgroups: comp.compilers
Date: 15 Aug 2006 18:49:07 -0400
Organization: Compilers Central
References: <1154507032.629515.108580@m79g2000cwm.googlegroups.com> 06-08-017 06-08-037 06-08-047 06-08-060 06-08-065 06-08-075
Keywords: code

Chris Dollin <chris.dollin@hp.com> wrote:


> I don't wish to come over as a nit-picker ...


I'll risk it! DoDi also made the same CLI terminology slip-up.


> If I remember correctly -- and it's been a long time --
> .NET only allows address arithmetic in unmanaged (hence unsafe) code.


The "official" CLI nomenclature for this distinction is verifiable (i.e.
normal C#, Java) versus unverifiable (unsafe) code. Code that is written
in CIL and running on the CLI abstract machine is still managed, even if
it uses pointers, unsafe typecasts, or performs other unverifiable
operations. For more info on verifiability, see ECMA 335 3rd ed 8.8, and
throughout the spec.


The managed / unmanaged distinction is between code running on the CIL
versus code running on the underlying processor. One must use P/Invoke
(marshalling implemented by the CLI runtime) to escape to unmanaged code
(ECMA 335 3rd ed 15.5.2).


-- Barry


--
http://barrkel.blogspot.com/


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.