Magnus Myrefors <tkv764x@tninet.se> [2003-07-15 15:07]: > I wonder if it is considered to be a multiprocessor-system in linux > if you install linux on two pc's and connect them with ethernet or > a bus ? If it is, how do you synchronize access to a memoryunit > also connected with the two pc's with semaphores ? Does this type > of programming lie within linux ? If it isn't I suppose you could > solve it something like this: I guess you cannot have the code for > the semaphore compiled on the memoryunit since the two pc's may have > different hardware-structures. So, instead I believe you can have > a memoryaddress on the memoryunit to protect some codearea. The > address initially set to 1 and decreased when one pc wants to access > the codearea and set back to 1 when finished. > as far as I understand your issue, you mix shared memory multiprocessor-systems with clustering. In your case, you refer to clustering, i.e. you build a cluster of computers connected via a high-speed networking technology. In this case, no memory is "physically" shared. Every node runs its own OS-instance and disposes of an own IO-unit, where the memory management unit is part of. Issues like process migrating and load balancing are dealt with in projects like beowulf, inter process communication can be transparently handled with the MPI library stuff; both are available for Linux. Feel free to ask if misunderstandings are pending.... wbr, Lukas -- Lukas Ruf | Wanna know anything about raw | <http://www.lpr.ch> | IP? <http://www.rawip.org> | -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/