Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The first milliseconds...

The first milliseconds...

What happens when I run my application

Cristian Prieto

August 31, 2015
Tweet

More Decks by Cristian Prieto

Other Decks in Programming

Transcript

  1. You will see… • Lot’s of unrelated cat pictures (and

    maybe unicorns) • Hexadecimal notation • Debugger commands • A little of .NET code • ASSEMBLER!!!
  2. • Compiler: Compiles the code into assembler code • Assembler:

    assemble the code into object format • Linker: Links the code with libraries • Loader: Loads the program for execution
  3. • Compiler/assembler produce an object file • Object files are

    consumed by the linker • The linker produces image files • An image file can be an executable, a static library or a shared (dynamic) library • The loader consumes image files
  4. • Windows uses PE+ (which is a variant of COFF)

    • MacOSX and iOS use Mach-O • Almost everything else (Linux, BSDs, Android, blah blah blah) use ELF