Virtual processor
Encyclopedia
Tao Virtual Processor is a virtual machine
Virtual machine
A virtual machine is a "completely isolated guest operating system installation within a normal host operating system". Modern virtual machines are implemented with either software emulation or hardware virtualization or both together.-VM Definitions:A virtual machine is a software...

 from Tao Group
Tao Group
Tao Group was a software company headquartered in Reading, Berkshire, UK. It developed intent, a software platform. intent enabled content portability by delivering services in a platform independent format called Virtual Processor...

.

The first version, VP1, was the basis of its parallel processing
Parallel processing
Parallel processing is the ability to carry out multiple operations or tasks simultaneously. The term is used in the contexts of both human cognition, particularly in the ability of the brain to simultaneously process incoming stimuli, and in parallel computing by machines.-Parallel processing by...

 multimedia OS and platform, TAOS. VP1 supported a RISC-like instruction set with 16 32-bit registers
Processor register
In computer architecture, a processor register is a small amount of storage available as part of a CPU or other digital processor. Such registers are addressed by mechanisms other than main memory and can be accessed more quickly...

, and had data types of 32- and 64-bit integers and 32- and 64-bit IEEE floating point numbers in registers, and also supported 8- and 16-bit integers in memory.

The second version, VP2, was released in 1998 as the basis of a new version of the portable multimedia platform, first known as Elate and then as intent. VP2 supports the same data types and data processing operations as VP1, but has additional features for better support of high level languages such as demarcation of subroutines, by-value parameters, and a very large theoretical maximum number of registers local to the subroutine for use as local variables.

The structure of VPCode, the Virtual Processor's machine code
Machine code
Machine code or machine language is a system of impartible instructions executed directly by a computer's central processing unit. Each instruction performs a very specific task, typically either an operation on a unit of data Machine code or machine language is a system of impartible instructions...

, is intended to be able to represent the constructs required when compiling languages such as C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

, C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

 and Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

, and to allow efficient translation into the machine code of any real 32- or 64-bit CPU
Central processing unit
The central processing unit is the portion of a computer system that carries out the instructions of a computer program, to perform the basic arithmetical, logical, and input/output operations of the system. The CPU plays a role somewhat analogous to the brain in the computer. The term has been in...

.

VPcode is never interpreted; it is always translated into machine code.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK