Re: Difference between Portable Executable (PE) file and a Assembl
- From: Scott Allen <scott@xxxxxxxxxxxxxxxxxxxx>
- Date: Mon, 02 May 2005 09:55:22 -0400
ILASM is more of a repackaging tool. It takes IL code and packages the
code into a file in the PE format. If you wrote your own compiler that
generated MSIL, then you could use ILASM to put the MSIL into a
managed executable. ILASM doesn't generate native code.
NGEN.EXE can be used to generate native code for an assembly. I'd only
recommend using NGEN if you have a good reason to avoid JIT compiling.
--
Scott
http://www.OdeToCode.com/blogs/scott/
On Sun, 1 May 2005 15:11:14 -0700, suresh_C#
<sureshC@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>
>Thanks Ben. This is clear to me now.
>
>I would be grateful if you answer to this question also.
>
>I assume that JIT compiler and Ilasm.exe convert the IL code into machine
>dependent code.
>
>I knew that there are 2 tools ie JIT and one more tool [I forgot name] which
>do the above. Then in .NET who uses the Ilasm.exe tool.
>
>
>
>"Ben Fidge" wrote:
>
>> Yes you are right, a PE executable is created from the IL. PE is the file
>> format used to define 32bit Windows Executables. This is the native format
>> used by Windows. As mentioned, your .NET assembly is first compiled to IL
>> which is a platform independant assembly language. This is then compiled
>> into the platform specific binary, which for us Windows developers is called
>> PE.
>>
>> PE has been around since the first versions of Windows NT and all versions
>> of Windows since Win95 have also been made to expect that particular format
>> to store binary executables. Obviously, as no current processors know how to
>> execute IL, it needs recompiling for the processor and platform it's running
>> on.
>>
>> For more info on the format have a look here:
>>
>> http://www.wotsit.org/search.asp?page=2&s=binary
>>
>>
>>
>> "suresh_C#" <sureshC@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
>> news:47968DF1-825C-4B55-99C6-DC71841B5417@xxxxxxxxxxxxxxxx
>> >
>> > Thanks Ben, Thanks Scott.
>> >
>> > But, following is definition of Ilasm.exe
>> > --
>> > When you compile managed code, the compiler converts the source code to
>> > MSIL
>> > code. MSIL is a CPU-independent language and its code can be converted to
>> > native code. ***You can use the Ilasm tool, Ilasm.exe, to generate a
>> > portable
>> > executable file from the MSIL code. *** You can then run the resulting
>> > executable file to determine the performance of your application. This
>> > enables you to generate the MSIL code and the metadata without emitting
>> > MSIL
>> > in the portable executable file format. In addition, Ilasm.exe does not
>> > create intermediate object files. It also does not have a linking stage to
>> > generate a portable executable file.
>> > --
>> >
>> > ***You can use the Ilasm tool, Ilasm.exe, to generate a portable
>> > executable
>> > file from the MSIL code. ***
>> >
>> > Considering this point, I think it generates a portable executable file (
>> > ??? different file ) from the MSIL code (Assembly ???)
>> >
>> > Am I right? If right please I don't understand what is PE and why it is
>> > used
>> > then.
>> >
>> >
>> >
>> > "Scott Allen" wrote:
>> >
>> >> Hi Mahesh:
>> >>
>> >> PE is a file format.
>> >>
>> >> An assembly is the smallest unit of deployment for .NET applications
>> >> and consist of one or more modules. These modules use the PE file
>> >> format.
>> >>
>> >> --
>> >> Scott
>> >> http://www.OdeToCode.com/blogs/scott/
>> >>
>> >> On Sun, 1 May 2005 12:17:05 -0700, suresh_C#
>> >> <sureshC@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>> >>
>> >> >Dear All,
>> >> >
>> >> >What is difference between Portable Executable (PE) file and a Assembly?
>> >> >
>> >> >Thanks,
>> >> >Mahesh
>> >> >
>> >> >
>> >>
>> >>
>> >
>>
>>
>>
.
- Follow-Ups:
- Re: Difference between Portable Executable (PE) file and a Assembl
- From: Mahesh Nimbalkar
- Re: Difference between Portable Executable (PE) file and a Assembl
- References:
- Difference between Portable Executable (PE) file and a Assembly
- From: suresh_C#
- Re: Difference between Portable Executable (PE) file and a Assembly
- From: Scott Allen
- Re: Difference between Portable Executable (PE) file and a Assembl
- From: suresh_C#
- Re: Difference between Portable Executable (PE) file and a Assembl
- From: Ben Fidge
- Re: Difference between Portable Executable (PE) file and a Assembl
- From: suresh_C#
- Difference between Portable Executable (PE) file and a Assembly
- Prev by Date: Re: ASP.NET data binding slow?
- Next by Date: Re: ASP.NET data binding slow?
- Previous by thread: Re: Difference between Portable Executable (PE) file and a Assembl
- Next by thread: Re: Difference between Portable Executable (PE) file and a Assembl
- Index(es):
Relevant Pages
|