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