Does Parallels use OS threads?

Discussion in 'Parallels Desktop for Mac' started by unused_user_name, Sep 28, 2006.

  1. unused_user_name

    unused_user_name Pro

    Messages:
    495
    Hello,

    I've got a question that probably only the devolopers can answer: Does Parallels use system-level threads for the processes running inside the VM, or is the entire machine run in a single thread?

    I can see that Parallels is a single process, but it could be using multiple CPU threads in that process and I'm not sure how to get the Mac to tell me if it is.

    It would be really cool if a process under XP equates directly to a thread under MacOS, then potentially the Mac could handle running those threads as many CPUs as the host system has without the guest needing to know about it.

    With the "hypervisor" (from my reading of the XEN paper) they could do it.

    Any thoughts?
     
  2. Pleiades

    Pleiades Member

    Messages:
    79
    Looking under Activity Monitor, Parallels spins up 18 threads, uses up almost 120% of the CPU (thank goodness all Intel Macs are at least dual core or Parallels would grind the system to a halt), and takes up over 2GB of virtual memory.
     
  3. unused_user_name

    unused_user_name Pro

    Messages:
    495
    Bump back to top so the Devels can see it....
     
  4. joem

    joem Forum Maven

    Messages:
    1,247
    AFAIK, the guest runs on one core, using whatever thread model it likes. When the guest has control, it's effectively running on the bare hardware, but with some limitations on off-CPU hardware access. For example, it can't change physical memory allocation. OSX doesn't get involved in guest process scheduling at all.

    If you google Intel VT-X, you can read Intel's description of how it works.
     

Share This Page