CP/M
CP/M is an operating system created for Intel 8080/85 and Zilog Z80 based microcomputers by Gary Kildall of Digital Research, Inc.
Description: CCP, BDOS, BIOS
CP/M's command line interface, implemented in the CCP (Command Control Processor), was patterned after the operating systems from Digital Equipment, such as RSTS/E for the PDP-11.
Related Topics:
Command line interface - Digital Equipment - RSTS/E - PDP-11
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Commands generally took the form of a keyword followed by a list of parameters separated by spaces or special characters. If the command was not one of the internal commands built into the CCP, the currently-logged disk directory would be searched for a program file with the same name, and, if found, the program would be loaded and the rest of the command line passed to it.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
The commands themselves would sometimes be somewhat obscure; for instance, the command to duplicate files was named PIP (Peripheral-Interchange-Program), the name of the old DEC utility used for that purpose.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
One key innovation in CP/M was the use of an abstraction layer that separated the operating system into two main parts.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
The CCP translated user commands into a series of high-level instructions.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
These instructions were then fed into the BDOS (Basic Disk Operating System), which provided functionality like "open file". Application programs would likewise talk to the BDOS.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
The BDOS then translated these commands into a new series of lower-level instructions.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
These were then fed into the BIOS (Basic I/O System), which contained the hardware-specific code that carried out the instructions from BDOS.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
To illustrate the flow of commands, consider the PIP command mentioned earlier. When a PIP command was entered into the CCP it was broken down into a series of instructions for the BDOS, which would be similar to "locate the file named foo.txt, open it, create a new file named bar.txt...". The BDOS commands in turn were sent to the BIOS as a string of even simpler instructions, like "move the disk head to this sector, read raw data from sector..." etc. The BIOS would then do the actual controlling of the hardware, such as sending pulses to the stepper motor of the drive.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
The vast majority of the complexity in CP/M was isolated in the BDOS, and to a lesser extent, the CCP.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
This meant that by porting the limited number of simple commands in the BIOS to a particular hardware platform, the entire OS would work.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
This significantly reduced the development time needed to support new machines, and was one of the main reasons for CP/M's widespread use.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Today this sort of abstraction is common to most OSs, but at the time of CP/M's birth, OSs were typically intended to run on only one machine platform, and multilayer designs were considered unnecessary.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
~ Table of Content ~
| ► | Introduction |
| ► | Description: CCP, BDOS, BIOS |
| ► | History |
| ► | See also |
| ► | References |
| ► | External links |
~ What's Hot ~
~ Community ~
| ► | History Forum Come and discuss about History, Civilizations, Historical Events and Figures |
| ► | History Web-Ring A community of sites, blogs and forums dedicated to History. Do not hesitate to submit your site. |
and are licensed under the GNU Free Documentation License.
Lexicon - Privacy Policy - Spiritus-Temporis.com ©2005.