Some multiprocessors have also some extra property, that every memory word can be read as fast as every other memory word. You can also call these machines as Uniform Memory Access (UMA) multiprocessors.
Now in contrast, the Non-Uniform Memory Access (NUMA) multiprocessors don't have this property.
Here are the list of some multiprocessors:
Now let's describe all the above multiprocessors hardware system in brief.
The UMA bus-based SMP architectures is the simplest multiprocessor as this is based on a single bus.
Multiple central processing units and one or more memory modules, all use the same bus for the communication purpose.
As the use of a single bus limits the size of a uniform memory access multiprocessor even with the best caching, therefore a different type of interconnection is needed.
And the simplest circuit for connecting n central processing units to k memories is crossbar switch.
Crossbar switches have been used for many years within the telephone switching exchanges to connect to a group of incoming lines to a set of outgoing lines in an arbitrary way.
In humble 2*2 switch multiprocessor design, the switch has two inputs and two outputs.
Message arriving on either input line can be switched to either output line.
2*2 switch can be arranged in too many way to build the larger multistage switching networks.
All the uniform memory access (UMA) programs will run without change on non-uniform memory access (NUMA) machines, but here the performance will be lower than on a UMA machine at the same clock speed.
Basically, NUMA machines have the following three characteristics:
As you have already learned about multiprocessor operating system earlier, therefore let's talk about multiprocessor synchronization in next tutorial.