[mythtv] clone_vm

Colin Cross colin at colincross.com
Mon Dec 6 17:44:14 UTC 2004


travis eddy wrote:

> all of the mythtv threads. every one is "locked" to the machine they 
> are run on. ( the openmosix won't move them if they have clone_vm 
> enabled)
>
> thanks
> -travis

As Issac has pointed out, you are missing the difference between threads 
and processes.  A thread is similar to a process, but by definition 
threads share their memory space with all other threads of the same 
process.  I don't know anything about openmosix, but as far as I can 
tell, it can only move processes, and even then, only processes that do 
not share memory (i.e. without clone_vm).

In MythTV, mythfrontend is a process.  mythbackend is a process.  All 
the different things that happen inside each of them are threads.  You 
cannot separate threads across multiple machines, because they share 
memory space.  There is no way to remove the shared memory from the 
threads, the entire design of thread locking and synchronization relies 
on shared memory.  Since your hardware requirements mean both the 
frontend and backend _processes_ have to run on the same computer, you 
are out of luck.  Openmosix could move the frontend process or the 
backend process to another computer if your hardware didn't require 
otherwise, but Myth already has this functionality with remote backends.



More information about the mythtv-dev mailing list