Command Line: Difference between revisions

From OSDev.wiki
Jump to navigation Jump to search
[unchecked revision][unchecked revision]
Content added Content deleted
m (style, deleted "no multitasking" part since its possible)
Line 9: Line 9:
* Some functions to execute on commands
* Some functions to execute on commands
Because of their ease of implementation, CLI's are popular in hobby OS projects.
Because of their ease of implementation, CLI's are popular in hobby OS projects.

Methods you can use:
* flex/bison generated code for simple command interpreter
* old-fashioned [[FORTH]] interactive system (very easy to implement)
* full-featured programming language interpreter (powerful way)


==Advantages==
==Advantages==

Revision as of 09:08, 24 September 2017

The Command Line Interface or CLI is an interface which accepts commands from the user, similar to Windows Command Prompt or Linux Terminal. Check also Text UI.

Implementation

To implement a minimal CLI, you need at least:

  • Access to video memory
  • Keyboard driver
  • String input and comparison
  • Some functions to execute on commands

Because of their ease of implementation, CLI's are popular in hobby OS projects.

Methods you can use:

  • flex/bison generated code for simple command interpreter
  • old-fashioned FORTH interactive system (very easy to implement)
  • full-featured programming language interpreter (powerful way)

Advantages

  • Speed and control
  • Less resources needed
  • Scripts to automate tasks
  • No need for mouse devices and drivers

Disadvantages

  • Hard for beginner users