Difference between revisions of "Command processor"
(Add some hisroy, a 'further eading') |
m (Avoid redir) |
||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | A '''command processor''' (or '''command line interpreter''') is a [[program]] to which a [[user]] of a computer gives commands, which the command processor [[parser|parses]], and then takes the appropriate action to make happen. | + | A '''command processor''' (or '''command line interpreter''') is a [[program]] to which a [[user]] of a computer gives commands, usually by typing strings of [[character]]s, which the command processor [[parser|parses]], and then takes the appropriate action to make happen. |
That appropriate action may be something performed internally to the command processor, or the command processor may load another program (e.g. a [[compiler]]), or it may cause the creation of a whole new [[process]] which is then set to execute some program. | That appropriate action may be something performed internally to the command processor, or the command processor may load another program (e.g. a [[compiler]]), or it may cause the creation of a whole new [[process]] which is then set to execute some program. | ||
Line 5: | Line 5: | ||
==History== | ==History== | ||
− | In early [[operating system]]s, such as [[CTSS]] and [[TOPS-10]], the command processor was built into the OS itself. It soon became apparent (from experience on CTSS) that it could and should be a separate program, run in the user's top-level process, and [[Multics]] took this approach. Other [[time-sharing]] systems (such as [[TENEX]] and [[Incompatible | + | In early [[operating system]]s, such as [[CTSS]] and [[TOPS-10]], the command processor was built into the OS itself. It soon became apparent (from experience on CTSS) that it could and should be a separate program, run in the user's top-level process, and [[Multics]] took this approach. Other [[time-sharing]] systems (such as [[TENEX]] and [[Incompatible Timesharing System|ITS]]) followed this example. |
Even early [[personal computer]] operating systems such as [[MS-DOS]] made the command interpreter a separate program, although they did not provide processes. | Even early [[personal computer]] operating systems such as [[MS-DOS]] made the command interpreter a separate program, although they did not provide processes. | ||
− | Originally, all input to the command processor was typed by the user on | + | Originally, all input to the command processor was typed by the user on an [[asynchronous serial line]] terminal; with the advent of the [[mouse]], and the [[graphical user interface]], the user may instead click on an [[icon]]. |
The most well-known command interpreter at this point is the '''shell''' of [[UNIX]], which is also based on the similar program of Multics. | The most well-known command interpreter at this point is the '''shell''' of [[UNIX]], which is also based on the similar program of Multics. | ||
Line 17: | Line 17: | ||
* Neal Stephenson, ''In the Beginning ... was the Command Line'', Avon, New York, 1999 | * Neal Stephenson, ''In the Beginning ... was the Command Line'', Avon, New York, 1999 | ||
− | {{stub}} | + | {{semi-stub}} |
+ | |||
+ | [[Category: OS Basics]] |
Latest revision as of 21:40, 11 October 2022
A command processor (or command line interpreter) is a program to which a user of a computer gives commands, usually by typing strings of characters, which the command processor parses, and then takes the appropriate action to make happen.
That appropriate action may be something performed internally to the command processor, or the command processor may load another program (e.g. a compiler), or it may cause the creation of a whole new process which is then set to execute some program.
History
In early operating systems, such as CTSS and TOPS-10, the command processor was built into the OS itself. It soon became apparent (from experience on CTSS) that it could and should be a separate program, run in the user's top-level process, and Multics took this approach. Other time-sharing systems (such as TENEX and ITS) followed this example.
Even early personal computer operating systems such as MS-DOS made the command interpreter a separate program, although they did not provide processes.
Originally, all input to the command processor was typed by the user on an asynchronous serial line terminal; with the advent of the mouse, and the graphical user interface, the user may instead click on an icon.
The most well-known command interpreter at this point is the shell of UNIX, which is also based on the similar program of Multics.
Further reading
- Neal Stephenson, In the Beginning ... was the Command Line, Avon, New York, 1999