Executable Format: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 4: Line 4:
=Internal=
=Internal=
* [[Multi-Architecture_Container_Images#Overview|Multi-Architecture Container Images]]
* [[Multi-Architecture_Container_Images#Overview|Multi-Architecture Container Images]]
* [[Machine Architecture]]


=Overview=
=Overview=

Revision as of 01:32, 9 December 2023

External

Internal

Overview

An executable file (or program) is a file that contains instructions, or machine code, directly executable by the CPU. The alternative is a file that contains higher level instructions or code to be interpreted by an interpreter. The executable files are usually created by assembling object files, which are created by compiling a higher level language.

Linux operating systems use Executable and Linkable Format (ELF).

MacOS uses Mach-O.

One can tell the format by executing the file command on the executable file.

On Linux:

On Mac:

file yunikorn-scheduler
yunikorn-scheduler: Mach-O 64-bit executable x86_64

The format of the machine code stored in an executable file depends on the machine architecture.