Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Multiprocessing
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Processor symmetry=== In a '''multiprocessing''' system, all CPUs may be equal, or some may be reserved for special purposes. A combination of hardware and [[operating system]] software design considerations determine the symmetry (or lack thereof) in a given system. For example, hardware or software considerations may require that only one particular CPU respond to all hardware interrupts, whereas all other work in the system may be distributed equally among CPUs; or execution of kernel-mode code may be restricted to only one particular CPU, whereas user-mode code may be executed in any combination of processors. Multiprocessing systems are often easier to design if such restrictions are imposed, but they tend to be less efficient than systems in which all CPUs are utilized. Systems that treat all CPUs equally are called [[symmetric multiprocessing]] (SMP) systems. In systems where all CPUs are not equal, system resources may be divided in a number of ways, including [[asymmetric multiprocessing]] (ASMP), [[non-uniform memory access]] (NUMA) multiprocessing, and [[computer cluster|clustered]] multiprocessing. ====Master/slave multiprocessor system==== In a master/slave multiprocessor system, the master CPU is in control of the computer and the slave CPU(s) performs assigned tasks. The CPUs can be completely different in terms of speed and architecture. Some (or all) of the CPUs can share a common bus, each can also have a private bus (for private resources), or they may be isolated except for a common communications pathway. Likewise, the CPUs can share common RAM and/or have private RAM that the other processor(s) cannot access. The roles of master and slave can change from one CPU to another. Two early examples of a mainframe master/slave multiprocessor are the [[Bull Gamma 60]] and the [[Burroughs Large Systems#B5000, B5500, and B5700|Burroughs B5000]].<ref>{{cite manual |title = The Operational Characteristics of the Processors for the Burroughs B5000 |id = 5000-21005A |version = Revision A |year = 1963 |url = http://www.bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/5000-21005_B5000_operChar.pdf |publisher = [[Burroughs Corporation|Burroughs]] |access-date = June 27, 2023 |archive-date = 30 May 2023 |archive-url = https://web.archive.org/web/20230530061204/http://www.bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/5000-21005_B5000_operChar.pdf |url-status = live }}</ref> An early example of a master/slave multiprocessor system of microprocessors is the Tandy/Radio Shack [[TRS-80 Model 16]] desktop computer which came out in February 1982 and ran the multi-user/multi-tasking [[Xenix]] operating system, Microsoft's version of UNIX (called TRS-XENIX). The Model 16 has two microprocessors: an 8-bit [[Zilog Z80]] CPU running at 4 MHz, and a 16-bit [[Motorola 68000]] CPU running at 6 MHz. When the system is booted, the Z-80 is the master and the Xenix boot process initializes the slave 68000, and then transfers control to the 68000, whereupon the CPUs change roles and the Z-80 becomes a slave processor responsible for all I/O operations including disk, communications, printer and network, as well as the keyboard and integrated monitor, while the operating system and applications run on the 68000 CPU. The Z-80 can be used to do other tasks. The earlier [[TRS-80 Model II]], which was released in 1979, could also be considered a multiprocessor system as it had both a Z-80 CPU and an Intel 8021<ref>{{cite book |title=TRS-80 Model II Technical Reference Manual |date=1980 |publisher=Radio Shack |page=135}}</ref> microcontroller in the keyboard. The 8021 made the Model II the first desktop computer system with a separate detachable lightweight keyboard connected with by a single thin flexible wire, and likely the first keyboard to use a dedicated microcontroller, both attributes that would later be copied years later by Apple and IBM.
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Multiprocessing
(section)
Add topic