Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Xerox Alto
(section)
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!
==Architecture== The following description is based mostly on the August 1976 Alto Hardware Manual by Xerox PARC.<ref name="AltoHardwareManual">{{cite web |title=Alto Hardware Manual |url=http://bitsavers.org/pdf/xerox/alto/Alto_Hardware_Manual_Aug76.pdf |website=bitsavers.org |publisher=Xerox |access-date=July 17, 2019 |archive-date=September 4, 2017 |archive-url=https://web.archive.org/web/20170904111228/http://bitsavers.org/pdf/xerox/alto/Alto_Hardware_Manual_Aug76.pdf |url-status=live }}</ref> Alto uses a microcoded design, but unlike many computers, the [[microcode]] engine is not hidden from the programmer in a layered design. Applications such as Pinball take advantage of this to accelerate performance. The Alto has a [[bit slicing|bit-slice]] [[arithmetic logic unit]] (ALU) based on the [[Texas Instruments]] [[74181]] chip, a ROM control store with a [[writable control store]] extension and has 128 (expandable to 512) [[kilobyte|KB]] of [[Computer data storage#Primary storage|main memory]] organized in 16-bit words. Mass storage is provided by a [[hard disk drive]] that uses a removable 2.5 [[megabyte|MB]] one-platter cartridge ([[Diablo Systems]], a company Xerox later bought) similar to those used by the [[IBM 2310]]. The base machine and one disk drive are housed in a cabinet about the size of a small [[refrigerator]]; one more disk drive can be added via [[daisy chain (electrical engineering)|daisy-chaining]]. Alto both blurs and ignores the distinction between functional elements. Rather than a distinct [[central processing unit]] with a well-defined electrical interface (such as a [[system bus]]) to storage and peripherals, the Alto ALU interacts directly with hardware interfaces to memory and peripherals, driven by [[microinstruction]]s that are output from the control store. The microcode machine supports up to 16 [[cooperative multitasking]] tasks, each with [[Scheduling (computing)|fixed priority]]. The emulator task executes the normal instruction set to which most applications are written; that instruction set is similar to a [[Data General Nova]].<ref>{{cite report |last1=Thacker |first1=Charles P. |author1-link=Charles P. Thacker |last2=McCreight |first2=Edward M. |date=December 1974 |url=http://www.bitsavers.org/pdf/xerox/alto/memos_1974/Alto_A_Personal_Computer_Dec74.pdf |title=Alto: A Personal Computer System |page=13 |access-date=December 11, 2019 |archive-date=August 14, 2011 |archive-url=https://web.archive.org/web/20110814232255/http://www.bitsavers.org/pdf/xerox/alto/memos_1974/Alto_A_Personal_Computer_Dec74.pdf |url-status=live }}</ref> Other tasks serve the display, memory refresh, disk, network, and other I/O functions. For example, the bitmap display controller is little more than a 16-[[bit]] [[shift register]]; microcode moves display refresh data from main memory to the shift register, which serializes it into a display of pixels corresponding to the ones and zeros of the memory data. Ethernet is likewise supported by minimal hardware, with a shift register that acts bidirectionally to serialize output words and deserialize input words. Its speed was designed to be 3 Mbit/s because the microcode engine can not go faster and continue to support the video display, disk activity, and memory refresh. Unlike most [[minicomputer]]s of the era, Alto does not support a [[computer terminal|serial terminal]] for user interface. Apart from an [[Ethernet]] connection, the Alto's only common output device is a bi-level (black and white) [[cathode-ray tube]] (CRT) [[computer monitor|display]] with a tilt-and-swivel base, mounted in [[page orientation|portrait orientation]] rather than the more common "landscape" orientation. Its input devices are a custom detachable [[Computer keyboard|keyboard]], a three-button [[computer mouse|mouse]], and an optional 5-key [[chorded keyboard]] (chord keyset). The last two items had been introduced by SRI's On-Line System and the mouse was an instant success among Alto users, but the chord keyset never became popular. In the early mice, the buttons are three narrow bars, arranged top to bottom rather than side to side; they were named after their colors in the documentation. The motion is sensed by two perpendicular wheels. These were soon replaced with a ball-type mouse, which was invented by Ronald E. Rider and developed by [[Bill English (computer engineer)|Bill English]]. These are photo-mechanical mice, first using white light, and then [[infrared]] (IR), to count the rotations of wheels inside the mouse. Each key on the Alto keyboard is represented as a separate bit in a set of memory locations. As a result, it is possible to read [[Rollover (key)#n-key rollover|multiple key presses concurrently]]. This trait can be used to alter from where on the disk the Alto boots. The keyboard value is used as the sector address on the disk to boot from, and by holding specific keys down while pressing the boot button, different microcode and operating systems can be loaded. This gave rise to the expression "nose boot" where the keys needed to boot for a test OS release requires more fingers than the user can articulate. Nose boots were obsoleted by the <code>move2keys</code> program that shifts files on the disk so that a specified key sequence can be used. Several other I/O devices were developed for the Alto, including a television camera, the Hy-Type daisywheel printer and a parallel port, although these were quite rare. The Alto could also control external disk drives to act as a [[file server]]. This was a common application for the machine.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)