Hardware Reference
In-Depth Information
Multicore processors are designed for users who run multiple programs at the same time or who use
multithreaded applications, which pretty much describes all users these days. A multithreaded
application can run different parts of the program, known as threads, at the same time in the same
address space, sharing code and data. A multithreaded program runs faster on a multicore processor
or a processor with HT Technology enabled than on a single-core or non-HT processor.
Figure 3.5 illustrates how a dual-core processor handles multiple applications for faster
performance.
Figure 3.5. How a single-core processor (left) and a dual-core processor (right) handle
multitasking.
It's important to realize that multicore processors don't improve single-task performance much. If you
play non-multithreaded games on your PC, it's likely that you would see little advantage in a
multicore or hyperthreaded CPU. Fortunately, more and more software (including games) is designed
to be multithreaded to take advantage of multicore processors. The program is broken into multiple
threads, all of which can be divided among the available CPU cores.
Hardware-Assisted Virtualization Support
The ability to run multiple operating systems on a single computer, a technology known as
virtualization , was originally developed for IBM mainframe computers in 1965. However, it has
also been available in PCs for over a decade. By running multiple operating systems and applications
on a single computer, a single computer can be used for multiple tasks, can support legacy
applications that no longer run on a current operating system, and makes technical support of a wide
range of operating systems, utilities, applications, and web browser versions from a single system
feasible.
Virtualization can take two forms:
• Hypervisor/client
• Host/guest
With either type of virtualization, a program called a virtual machine manager (VMM) is used to
 
 
 
Search WWH ::




Custom Search