Computer Program Execution
Jump to navigation
Jump to search
A Computer Program Execution is a performed computation act in which a computing system carries out the instructions of a computer program, beginning when the program's own instructions start to run and lasting until the program terminates or is stopped, if it ever is.
- AKA: Program Execution, Program Run.
- Context:
- It can (typically) begin after a program loader has loaded the program and transferred control to its entry point.
- It can (typically) end at program termination, either normally or abnormally.
- It can (typically) be carried out by one or more Running Software Instances, which are the running entities whose activity the execution is.
- It can (typically) pass through a sequence of Program Runtime States, each a momentary state of the execution rather than the execution itself.
- It can (typically) be distinguished from the computer program it executes: the program is a static artifact that can be executed many times, and each run is a separate execution.
- It can (often) be recorded in a program execution trace or an execution log.
- It can (often) be measured by its execution time and its resource consumption.
- ...
- It can range from being a Successful Computer Program Execution to being a Failed Computer Program Execution, depending on its termination status.
- It can range from being a Short-Lived Computer Program Execution to being a Long-Running Computer Program Execution, depending on its duration.
- It can range from being a Single-Threaded Computer Program Execution to being a Multi-Threaded Computer Program Execution, depending on its number of threads of execution.
- ...
- Example(s):
- a Java Program Execution, in which, as Java SE 25 specifies, the Java Virtual Machine loads, links and initializes a specified class or interface and then invokes its
mainmethod; the program's own code can first run during that initialization, and the execution ends at program exit. - a single run of a command-line program that reads one input file, writes its output and exits.
- a batch job run that executes a scheduled program to completion.
- ...
- a Java Program Execution, in which, as Java SE 25 specifies, the Java Virtual Machine loads, links and initializes a specified class or interface and then invokes its
- Counter-Example(s):
- an executable program, which is the static artifact that is executed rather than an execution of it.
- a Running Software Instance, which is the running entity rather than the occurrence of its execution.
- a Program Runtime State, which is one momentary state within an execution.
- a program launch attempt that fails during loading or linking, before any of the program's own instructions run.
- a program compilation, which translates a program rather than executing it.
- ...
- See: Execution, Computing System Process, Performed Task, Run-Time Environment.
References
2025
- Oracle. (2025). The Java Language Specification, Java SE 25 Edition, Chapter 12: Execution. Retrieved 2026-10-15. Supports the Java example only, not a general classification rule: the chapter "specifies activities that occur during execution of a program" and "is organized around the life cycle of the Java Virtual Machine and of the classes, interfaces, and objects that form a program"; "The Java Virtual Machine starts up by loading a specified class or interface, then invoking a main method in this specified class or interface", and §12.1 "outlines the loading, linking, and initialization steps involved in executing this method".