multiprocessors

huda's Avatar, Join Date: Jan 2009
Go4Expert Member
hi,
in multiprocessors , espicially in distributed memory machine:
each processor has a local memory and local bus . that is good and easy to understand .
but each has I\o devices !!!!!!!!!!
i can't understand that.
is it meaning , in a computer there are multi processors and each of one there are i\o devices ( H.d, monitor, printer , ....etc)
that is meaning , there are multi printers, monitors, H.ds,....etc.

thanks,
huda
xpi0t0s's Avatar, Join Date: Aug 2004
Mentor
Hi Huda

I think it depends on the architecture the system designers had in mind. If each processor has its own memory, HD, monitor etc then all you've really got there is a bunch of single processor computers that are distinct from each other, but the essence of multiprocessing is that you get rid of, or at least reduce, the CPU bottleneck in a system where it can't keep up with everything that is requested of it.

So each processor will have its own I/O ports so what will need to happen is that those IO ports are multiplexed over shared devices and arbitration will be necessary. So all processors will share the same hard disk, for example, and this will mean that the HD requests need to be funnelled into the HD architecture.
huda's Avatar, Join Date: Jan 2009
Go4Expert Member
[quote=xpi0t0s;46885]Hi Huda

So each processor will have its own I/O ports so what will need to happen is that those IO ports are multiplexed over shared devices and arbitration will be necessary.

thanks for reply.
I understood that ports from all processors will be multiplexed over one device .
right?
if so, what if there are two processors need to communicate with same device?
well, if there is a priority ,that is meaning that one of those processors must wait.

or you may mean that all ports from one processor will be multiplexed over shared device . if so , I don't understand what are you meaning .
may because my native language isn't english, so I find some difficulty to understand.
please, i need a more clarifying , i do appreciate your help.

thanks in advance
xpi0t0s's Avatar, Join Date: Aug 2004
Mentor
Yes, if processor A is using, for example, the hard disk, then processor B must wait, because the read head can only be in one place at a time. In more complex setups where cache is involved this will help speed the whole thing up but fundamentally two processors can't be sharing a resource at the same time.