Blog coding and discussion of coding about JavaScript, PHP, CGI, general web building etc.

Wednesday, June 1, 2016

What is

What is "runtime"?


I have heard about things like "C Runtime", "Visual C++ 2008 Runtime", ".NET Common Language Runtime", etc.

  • What is "runtime" exactly?
  • What is it made of?
  • How does it interact with my code? Or maybe more precisely, how is my code controlled by it?

When coding assembly language on Linux, I could use the INT instruction to make the system call. So, is the runtime nothing but a bunch of pre-fabricated functions that wrap the low level function into more abstract and high level functions? But doesn't this seem more like the definition for the library, not for the runtime?

Are "runtime" and "runtime library" two different things?

ADD 1

These days, I am thinking maybe Runtime has something in common with the so called Virtual Machine, such as JVM. Here's the quotation that leads to such thought:

This compilation process is sufficiently complex to be broken into several layers of abstraction, and these usually involve three translators: a compiler, a virtual machine implementation, and an assembler. --- The Elements of Computing Systems (Introduction, The Road Down To Hardware Land)

Answer by SLaks for What is "runtime"?


Runtime is a general term that refers to any library, framework, or platform that your code runs on.

The C and C++ runtimes are collections of functions.

The .Net runtime contains an IL interpreter, a garbage collector, and more.

Answer by Damian Schenkelman for What is "runtime"?


These sections of the MSDN documentation deal with most of your questions: http://msdn.microsoft.com/en-us/library/8bs2ecf4(VS.71).aspx

I hope this helps.

Thanks, Damian

Answer by Matt Ball for What is "runtime"?


As per Wikipedia: runtime library/run-time system.

In computer programming, a runtime library is a special program library used by a compiler, to implement functions built into a programming language, during the runtime (execution) of a computer program. This often includes functions for input and output, or for memory management.


A run-time system (also called runtime system or just runtime) is software designed to support the execution of computer programs written in some computer language. The run-time system contains implementations of basic low-level commands and may also implement higher-level commands and may support type checking, debugging, and even code generation and optimization. Some services of the run-time system are accessible to the programmer through an application programming interface, but other services (such as task scheduling and resource management) may be inaccessible.


Re: your edit, "runtime" and "runtime library" are two different names for the same thing.

Answer by Micha Trybus for What is "runtime"?


In my understanding runtime is exactly what it means - the time when the program is run. You can say something happens at runtime / run time or at compile time.

I think runtime and runtime library should be (if they aren't) two separate things. "C runtime" doesn't seem right to me. I call it "C runtime library".

Answers to your other questions: I think the term runtime can be extended to include also the environment and the context of the program when it is run, so:

  • it consists of everything that can be called "environment" during the time when the program is run, for example other processes, state of the operating system and used libraries, state of other processes, etc
  • it doesn't interact with your code in a general sense, it just defines in what circumstances your code works, what is available to it during execution.

This answer is to some extend just my opinion, not a fact or definition.

Answer by e.James for What is "runtime"?


Runtime describes software/instructions that are executed while your program is running, especially those instructions that you did not write explicitly, but are necessary for the proper execution of your code.

Low-level languages like C have very small (if any) runtime. More complex languages like Objective-C, which allows for dynamic message passing, have a much more extensive runtime.

You are correct that runtime code is library code, but library code is a more general term, describing the code produced by any library. Runtime code is specifically the code required to implement the features of the language itself.

Answer by TalentTuner for What is "runtime"?


Run time exactly where your code comes into life and you can see lot of important thing your code do.

Runtime has a responsibility of allocating memory , freeing memory , using operating system's sub system like (File Services, IO Services.. Network Services etc.)

Your code will be called "WORKING IN THEORY" until you practically run your code. and Runtime is a friend which helps in achiving this.

Answer by Christoph for What is "runtime"?


The runtime or execution environment is the part of a language implementation which executes code and is present at run-time; the compile-time part of the implementation is called the translation environment in the C standard.

Examples:

  • the Java runtime consists of the virtual machine and the standard library

  • a common C runtime consists of the loader (which is part of the operating system) and the runtime library, which implements the parts of the C language which are not built into the executable by the compiler; in hosted environments, this includes most parts of the standard library

Answer by RIPUNJAY TRIPATHI for What is "runtime"?


Matt Ball answered it correctly.

I would say about it with examples.

Consider running a program compiled in Turbo-Borland C/C++( version 3.1 year 1991) compiler and let it run under a 32-bit version of windows like Win 98/2000 etc.

Its a 16 bit compiler. And you will see all your programs have 16 bit pointers. Why is it so when your OS is 32bit ? Yeah!! it is because your compiler has setup the execution environment of 16 bit and the 32 bit version of OS supported it.

What is commonly called as JRE (Java Runtime Environment) provides a Java program with all the resources it may need to execute.

Actually runtime environment is brain product of idea of Virtual Machines. A virtual machine implements the "raw" interface between hardware and what a program may need to execute. The runtime environment adopts these interfaces and presents them for the use of programmer. A compiler developer would need these facilities to provide an execution environment for its programs.

Answer by user215054 for What is "runtime"?


Runtime is somewhat opposite to design-time and compile-time/link-time. Historically it comes from slow mainframe environment where machine-time was expensive.

Answer by alvin for What is "runtime"?


a runtime could denote the current phase of program life (runtime / compile time / load time / link time) or it could mean a runtime library, which form the basic low level actions that interface with the execution environment. or it could mean a runtime system, which is the same as an execution environment.

in the case of C programs, the runtime is the code that sets up the stack, the heap etc. which a requirement expected by the C environment. it essentially sets up the environment that is promised by the language. (it could have a runtime library component, crt0.lib or something like that in case of C)

Answer by n611x007 for What is "runtime"?


I found that the following folder structure makes a very insightful context for understanding what runtime is:

Runtimes of Mozilla XulRunner

You can see that there is the 'source', there is the 'SDK' or 'Software Development Kit' and then there is the Runtime, eg. the stuff that gets run - at runtime. It's contents are like:

runtimes' folder contents

The win32 zip contains .exe -s and .dll -s.

So eg. the C runtime would be the files like this -- C runtime libraries, .so-s or .dll -s -- you run at runtime, made special by their (or their contents' or purposes') inclusion in the definition of the C language (on 'paper'), then implemented by your C implementation of choice. And then you get the runtime of that implementation, to use it and to build upon it.

That is, with a little polarisation, the runnable files that the users of your new C-based program will need. As a developer of a C-based program, so do you, but you need the C compiler and the C library headers, too; the users don't need those.


Fatal error: Call to a member function getElementsByTagName() on a non-object in D:\XAMPP INSTALLASTION\xampp\htdocs\endunpratama9i\www-stackoverflow-info-proses.php on line 72

0 comments:

Post a Comment

Popular Posts

Powered by Blogger.