Linux virtualization methods, architecture, and implementation

Source: Internet
Author: User
Article Title: Linux virtualization methods, architecture, and implementation. Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedded systems, and open source.

Virtualization has rich meanings and is widely used. Server virtualization is currently a major virtualization technology. It provides multiple independent operating systems on a host computer. This article will explore the ideas behind virtualization and discuss some technologies for virtualization. We will also learn about other existing Virtualization Technologies, such as operating system virtualization on Linux.

Virtualization is to present something in another form. To virtualize a computer is to present the computer in the form of multiple computers or a completely different computer.

Virtualization can also combine multiple computers into one computer. This is usually called server aggregation or grid computing.

Next, let's first look at the origin of virtualization.

  Virtualization history

Virtualization is not a new theme. In fact, it has been around for more than 40 years. Some of the earliest uses of virtualization technology include IBM? 7044. The CTSS (Compatible Time Sharing System) developed by MIT at IBM 704 and the Atlas project of the University of Manchester (one of the world's first supercomputers ), these are pioneers in request page scheduling and supervision of process calls.

 Hardware Virtualization

IBM developed System/1960s as early as 360? The importance of virtualization was recognized in Model 67 mainframe. Model 67 virtualizes all hardware interfaces through Virtual Machine Monitor. In early computing, the operating system is called a supervisor. The operating system that can run on other operating systems is called hypervisor (this term was introduced in 1970s ).

VMM can run directly on the underlying hardware and allow multiple virtual machines (VMS) to run ). Each VM can run an instance of its own private operating System, which was called CMS (or Conversational Monitor System) earlier ). After that, the VM continues to develop. Now you can go to System z9? VM is found on the mainframe. This provides good backward compatibility, and even compatibility with the System/360 product line.

  Processor Virtualization

Another early use of Virtualization (in this example, the simulation of the processor) is a P-code (or pseudo code) machine. P-code is a machine language that runs on virtual machines rather than hardware. As early as 1970s, P-code was well known in the Pascal System of the University of California, San Diego (UCSD). It compiled the Pascal program into P-code, then run on a P-code virtual machine. This makes the P-code program highly portable, and the P-code program can run as long as there is an available P-code virtual machine.

In 1960s, the design of BCPL (Basic Combined Programming Language) also adopted the same concept. The C Language was developed by BCPL. In this usage, the compiler will compile BCPL code into intermediate machine code called O-code. The second step is to compile the O-code into the original language of the target machine. The model used by modern compilers provides great flexibility for porting the compiler to the new target architecture (separating the frontend and backend using an intermediate language ).

 Instruction Set Virtualization

The latest development in virtualization is Instruction Set virtualization or binary conversion. In this model, the virtual instruction set is converted to the Physical Instruction Set of the underlying hardware, which is usually dynamic. When the code is executed, a segment of the Code is converted. If a branch occurs, a new code set is imported and converted. This makes it very similar to the cache operation. The latter moves the instruction block from the memory to the local cache for execution.

This model was recently used in the Crusoe Central Processing Unit (CPU) designed by Transmeta. Binary Conversion is implemented by the patented Code Morphing technology. A similar example is the full virtualization solution that uses runtime code scanning to find and redirect privileged commands (to solve some problems with specific processor instruction sets ).

[1] [2] [3] [4] Next page

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.