Difference between revisions of "Xerox Alto"
m (→External links: +tfs.tty) |
m (link to later copy of Alto paper online, fix links) |
||
Line 1: | Line 1: | ||
The '''Alto''', built by [[Xerox]]' [[Xerox PARC]] laboratory, was a ground-breaking and extremely influential [[personal computer]] - in fact, all contemporary personal computers are effectively descendants of the Alto. | The '''Alto''', built by [[Xerox]]' [[Xerox PARC]] laboratory, was a ground-breaking and extremely influential [[personal computer]] - in fact, all contemporary personal computers are effectively descendants of the Alto. | ||
− | The Alto was novel, for its time, in that each machine had a [[bit-mapped display]], allowing the creation of a [[graphical user interface]], and was also attached to a high-speed [[ | + | The Alto was novel, for its time, in that each machine had a [[bit-mapped display]], allowing the creation of a [[graphical user interface]], and was also attached to a high-speed [[local area network|LAN]], the then-new [[Ethernet]], also invented at PARC. In addition to the [[keyboard]], users could use a [[mouse]] to interact with applications. |
Xerox attempted to commercialize the lessons of the Alto, in the [[Xerox Star]], but it was not a commercial success. Other companies, including [[International Business Machines|IBM]] ([[hardware]]), [[Microsoft]] ([[software]]) and [[Apple]] (both) did manage to produce succesful products along the lines pioneered by the Alto. | Xerox attempted to commercialize the lessons of the Alto, in the [[Xerox Star]], but it was not a commercial success. Other companies, including [[International Business Machines|IBM]] ([[hardware]]), [[Microsoft]] ([[software]]) and [[Apple]] (both) did manage to produce succesful products along the lines pioneered by the Alto. | ||
Line 7: | Line 7: | ||
==Details== | ==Details== | ||
− | The Alto's 16-bit-wide [[Central Processing Unit|CPU]] was [microcode]]d (which resulted in it being called the machine's [[microprocessor]], although that term did not at the time have the meaning that it does now). As a result; it could emulate several different CPUs. It was built out of [[Transistor-transistor logic|TTL]], and the microprocessor's clock rate was 170 nsec. The CPU was implemented as 5 [[printed circuit board|PCBs]] which plugged into a common [[backplane]], along with four PCBs for [[main memory]] (in a 64KW [[address space]] of 16-bit [[word]]s), and those for [[device controller]]s such as the [[disk]], display, and Ethernet. | + | The Alto's 16-bit-wide [[Central Processing Unit|CPU]] was [[microcode]]d (which resulted in it being called the machine's '[[microprocessor]]', although that term did not at the time have the meaning that it does now). As a result; it could emulate several different CPUs. It was built out of [[Transistor-transistor logic|TTL]], and the microprocessor's clock rate was 170 nsec. The CPU was implemented as 5 [[printed circuit board|PCBs]] which plugged into a common [[backplane]], along with four PCBs for [[main memory]] (in a 64KW [[address space]] of 16-bit [[word]]s), and those for [[device controller]]s such as the [[disk]], display, and Ethernet. |
There were two different versions, the Alto I and Alto II, which were almost identical; the latter was a re-engineered version of the former. The biggest difference was that the Alto II could have a maximum of 256 KW of memory, using [[bank switching]], compared to the 64KW of the Alto I (although in actuality, limited use was made of the extended memory). Data in the memory of an Alto I is protected with [[parity]]; the Alto II uses [[error-correcting code|ECC]], with 6 bits plus a parity bit per double-word. Also, all Altos had 1KW of [[Read-only memory|ROM]] microcode (microcode words were 32 bits wide), and eventually also 1KW of writeable [[Random Access Memory|RAM]] microcode memory. (The basic ROM microcode more or less emulated a [[Data General]] [[Nova]].) Some Alto IIs supported a second 1KW of PROM microcode; others had three 1KW banks of microcode RAM. | There were two different versions, the Alto I and Alto II, which were almost identical; the latter was a re-engineered version of the former. The biggest difference was that the Alto II could have a maximum of 256 KW of memory, using [[bank switching]], compared to the 64KW of the Alto I (although in actuality, limited use was made of the extended memory). Data in the memory of an Alto I is protected with [[parity]]; the Alto II uses [[error-correcting code|ECC]], with 6 bits plus a parity bit per double-word. Also, all Altos had 1KW of [[Read-only memory|ROM]] microcode (microcode words were 32 bits wide), and eventually also 1KW of writeable [[Random Access Memory|RAM]] microcode memory. (The basic ROM microcode more or less emulated a [[Data General]] [[Nova]].) Some Alto IIs supported a second 1KW of PROM microcode; others had three 1KW banks of microcode RAM. | ||
Line 13: | Line 13: | ||
The Alto provided several paths for [[input/output]]. For the highest speeds [[peripheral]]s, the CPU did not support [[Direct Memory Access|DMA]]; rather, such devices ([[disk]], display, LAN) connected to the CPU's main [[bus]]. The processor had provision for up to 16 prioritized microcode [[task]]s, some of which were dedicated to particular devices, and did bulk I/O; a timer task handled others, such as the mouse. Slower devices (keyboard, etc) could be attached to the machine's memory bus, allowing their [[register]]s to appear in the memory address space, for access by [[programmed I/O]]; the last two 'pages' (nothing to do with [[virtual memory]], which the Alto did not support) of memory address space, 512 words, were dedicated to this. Finally, a [[parallel interface|parallel port]], connected to the CPU's memory control board, allowed miscellaneous slow devices (e.g. slow [[printer]]s) to be connected. | The Alto provided several paths for [[input/output]]. For the highest speeds [[peripheral]]s, the CPU did not support [[Direct Memory Access|DMA]]; rather, such devices ([[disk]], display, LAN) connected to the CPU's main [[bus]]. The processor had provision for up to 16 prioritized microcode [[task]]s, some of which were dedicated to particular devices, and did bulk I/O; a timer task handled others, such as the mouse. Slower devices (keyboard, etc) could be attached to the machine's memory bus, allowing their [[register]]s to appear in the memory address space, for access by [[programmed I/O]]; the last two 'pages' (nothing to do with [[virtual memory]], which the Alto did not support) of memory address space, 512 words, were dedicated to this. Finally, a [[parallel interface|parallel port]], connected to the CPU's memory control board, allowed miscellaneous slow devices (e.g. slow [[printer]]s) to be connected. | ||
− | Altos all had a 1.25Mbyte cartridge disk drive from [[Diablo Systems]] (the same drive as in the [[RK02/03 disk drive|RK02 disk drive]]); the Alto-based Interim File System (IFS) [[file server]]s used [[Trident]] disk drives. | + | Altos all had a 1.25Mbyte cartridge [[disk]] [[drive]] from [[Diablo Systems]] (the same drive as in the [[RK02/03 disk drive|RK02 disk drive]]); the Alto-based Interim File System (IFS) [[file server]]s used [[Trident]] disk drives. |
==See also== | ==See also== | ||
Line 23: | Line 23: | ||
* [https://xeroxalto.computerhistory.org/xerox_alto_file_system_archive.html Xerox Alto file system archive] | * [https://xeroxalto.computerhistory.org/xerox_alto_file_system_archive.html Xerox Alto file system archive] | ||
* [http://www.bitsavers.org/pdf/xerox/alto/ Hardware documentation] - also contains some high-level software documentation | * [http://www.bitsavers.org/pdf/xerox/alto/ Hardware documentation] - also contains some high-level software documentation | ||
− | ** Charles P. Thacker, Edward M. McCreight, [http://www.bitsavers.org/pdf/xerox/alto/memos_1974/Alto_A_Personal_Computer_Dec74.pdf Alto - A Personal Computer System] December, 1974 - a later version was re-printed in ''Computer Structures: Principles and Examples'', second edition, editors Daniel P. Siewiorek, C. Gordon Bell and Allen Newell, McGraw-Hill, 1981, pp. 549-572 | + | ** Charles P. Thacker, Edward M. McCreight, [http://www.bitsavers.org/pdf/xerox/alto/memos_1974/Alto_A_Personal_Computer_Dec74.pdf Alto - A Personal Computer System] December, 1974 - a [http://gordonbell.azurewebsites.net/Computer_Structures_Principles_and_Examples/csp0565.htm later version] was re-printed in ''Computer Structures: Principles and Examples'', second edition, editors Daniel P. Siewiorek, C. Gordon Bell and Allen Newell, McGraw-Hill, 1981, pp. 549-572 |
** [http://www.bitsavers.org/pdf/xerox/alto/memos_1979/A_Field_Guide_to_Alto-Land_Apr79.pdf A Field Guide to Alto-Land] | ** [http://www.bitsavers.org/pdf/xerox/alto/memos_1979/A_Field_Guide_to_Alto-Land_Apr79.pdf A Field Guide to Alto-Land] | ||
** [http://www.bitsavers.org/pdf/xerox/alto/memos_1979/Alto_Hardware_Manual_May79.pdf Alto: A Personal Computer System Hardware Manual] May, 1979 | ** [http://www.bitsavers.org/pdf/xerox/alto/memos_1979/Alto_Hardware_Manual_May79.pdf Alto: A Personal Computer System Hardware Manual] May, 1979 |
Revision as of 14:33, 9 December 2021
The Alto, built by Xerox' Xerox PARC laboratory, was a ground-breaking and extremely influential personal computer - in fact, all contemporary personal computers are effectively descendants of the Alto.
The Alto was novel, for its time, in that each machine had a bit-mapped display, allowing the creation of a graphical user interface, and was also attached to a high-speed LAN, the then-new Ethernet, also invented at PARC. In addition to the keyboard, users could use a mouse to interact with applications.
Xerox attempted to commercialize the lessons of the Alto, in the Xerox Star, but it was not a commercial success. Other companies, including IBM (hardware), Microsoft (software) and Apple (both) did manage to produce succesful products along the lines pioneered by the Alto.
Details
The Alto's 16-bit-wide CPU was microcoded (which resulted in it being called the machine's 'microprocessor', although that term did not at the time have the meaning that it does now). As a result; it could emulate several different CPUs. It was built out of TTL, and the microprocessor's clock rate was 170 nsec. The CPU was implemented as 5 PCBs which plugged into a common backplane, along with four PCBs for main memory (in a 64KW address space of 16-bit words), and those for device controllers such as the disk, display, and Ethernet.
There were two different versions, the Alto I and Alto II, which were almost identical; the latter was a re-engineered version of the former. The biggest difference was that the Alto II could have a maximum of 256 KW of memory, using bank switching, compared to the 64KW of the Alto I (although in actuality, limited use was made of the extended memory). Data in the memory of an Alto I is protected with parity; the Alto II uses ECC, with 6 bits plus a parity bit per double-word. Also, all Altos had 1KW of ROM microcode (microcode words were 32 bits wide), and eventually also 1KW of writeable RAM microcode memory. (The basic ROM microcode more or less emulated a Data General Nova.) Some Alto IIs supported a second 1KW of PROM microcode; others had three 1KW banks of microcode RAM.
The Alto provided several paths for input/output. For the highest speeds peripherals, the CPU did not support DMA; rather, such devices (disk, display, LAN) connected to the CPU's main bus. The processor had provision for up to 16 prioritized microcode tasks, some of which were dedicated to particular devices, and did bulk I/O; a timer task handled others, such as the mouse. Slower devices (keyboard, etc) could be attached to the machine's memory bus, allowing their registers to appear in the memory address space, for access by programmed I/O; the last two 'pages' (nothing to do with virtual memory, which the Alto did not support) of memory address space, 512 words, were dedicated to this. Finally, a parallel port, connected to the CPU's memory control board, allowed miscellaneous slow devices (e.g. slow printers) to be connected.
Altos all had a 1.25Mbyte cartridge disk drive from Diablo Systems (the same drive as in the RK02 disk drive); the Alto-based Interim File System (IFS) file servers used Trident disk drives.
See also
External links
- Xerox Alto file system archive
- Hardware documentation - also contains some high-level software documentation
- Charles P. Thacker, Edward M. McCreight, Alto - A Personal Computer System December, 1974 - a later version was re-printed in Computer Structures: Principles and Examples, second edition, editors Daniel P. Siewiorek, C. Gordon Bell and Allen Newell, McGraw-Hill, 1981, pp. 549-572
- A Field Guide to Alto-Land
- Alto: A Personal Computer System Hardware Manual May, 1979
- IFS and the Trident disk controller