Execution (computing)
For other uses, see Execution (disambiguation).
execution begins and the program enters run time. The
program then runs until it ends, either normal termination
or a crash.
Execution in computer and software engineering is the
process by which a computer or a virtual machine performs the instructions of a computer program. The instructions in the program trigger sequences of simple ac- 3 Interpreter
tions on the executing machine. Those actions produce
eects according to the semantics of the instructions in A system that executes a program is called an interpreter
the program.
of the program. Loosely speaking, an interpreter actually
Programs for a computer may execute in a batch process does what the program says to do. This contrasts with
without human interaction, or a user may type commands a language translator that converts a program from one
in an interactive session of an interpreter. In this case language to another. The most common language transthe commands are simply programs, whose execution lators are compilers. Translators typically convert their
source from a high-level, human readable language into a
is chained together.
lower-level language (sometimes as low as native machine
The term run is used almost synonymously. A related code) that is simpler and faster for the processor to dimeaning of both to run and to execute refers to the rectly execute. The idea is that the ratio of executions to
specic action of a user starting (or launching or invoking) translations of a program will be large; that is, a program
a program, as in Please run the application.
need only be compiled once and can be run any number
of times. This can provide a large benet for translation
versus direct interpretation of the source language. One
1 Context of execution
trade-o is that development time is increased, because
of the compilation. In some cases, only the changed les
The context in which execution takes place is crucial. must be recompiled. Then the executable needs to be
Very few programs execute on a bare machine. Programs relinked. For some changes, the executable must be reusually contain implicit and explicit assumptions about built from scratch. As computers and compilers become
resources available at the time of execution. Most pro- faster, this fact becomes less of an obstacle. Also, the
grams execute with the support of an operating system speed of the end product is typically more important to
and run-time libraries specic to the source language that the user than the development time.
provide crucial services not supplied directly by the com- Translators usually produce an abstract result that is not
puter itself. This supportive environment, for instance, completely ready to execute. Frequently, the operating
usually decouples a program from direct manipulation of system will convert the translators object code into the the computer peripherals, providing more general, ab- nal executable form just before execution of the program
stract services instead.
begins.
Process
4 See also
Further information: Program lifecycle phase
Executable
Run-time system
Prior to execution, a program must rst be written. This is
generally done in source code, which is then compiled at
compile time (and statically linked at link time) to an executable. This executable is then invoked, most often by
an operating system, which loads the program into memory (load time), possibly performs dynamic linking, and
then begins execution by moving control to the entry point
of the program; all these steps depend on the Application
Binary Interface of the operating system. At this point
Runtime program phase
5 TEXT AND IMAGE SOURCES, CONTRIBUTORS, AND LICENSES
Text and image sources, contributors, and licenses
5.1
Text
Execution (computing) Source: https://en.wikipedia.org/wiki/Execution_(computing)?oldid=750060450 Contributors: Michael Hardy,
Kku, SebastianHelm, RedWolf, Altenmann, Tea2min, Marius~enwiki, Everyking, AJim, Abdull, Slipstream, Alansohn, Diego Moya,
Akavel~enwiki, Waldir, Kbdank71, Koveras, RussBot, NawlinWiki, Pooryorick~enwiki, Arthur Rubin, Rwwww, Samwilson, SmackBot,
Nbarth, Can't sleep, clown will eat me, JonHarder, 16@r, Optakeover, Shyland, Green caterpillar, Thijs!bot, Greensburger, Magioladitis, Robin S, Maurice Carbonaro, Biscuittin, Flyer22 Reborn, ClueBot, Rilak, Excirial, Ykhwong, Frozen4322, AbstractBeliefs, Dsimic,
Addbot, Fluernutter, Isderion, Xqbot, J04n, Erik9bot, FrescoBot, Sae1962, Winterst, TomT0m, Super48paul, Wikipelli, ClueBot NG,
Neutral current, Franois Robere, Marciam66, Cndonovan, Milos996, AdrianLego and Anonymous: 33
5.2
Images
File:Question_book-new.svg Source: https://upload.wikimedia.org/wikipedia/en/9/99/Question_book-new.svg License: Cc-by-sa-3.0
Contributors:
Created from scratch in Adobe Illustrator. Based on Image:Question book.png created by User:Equazcion Original artist:
Tkgd2007
5.3
Content license
Creative Commons Attribution-Share Alike 3.0