What is a Terminal?
A terminal is part of an operating system known as an interface, which enables you to input commands for executing a specific task. The terminal allows you to interact with the computer systems. It is also called an electronic or electromechanical hardware device to enter data into and transcribe data from a computer system. Teletype is an example of an early hardware terminal.
In other words, a terminal is a collection of hardware devices, including a keyboard and a monitor. It's a Command Line Interface where users input commands to execute various tasks such as running programs, managing files, configuring settings and many other operations. It is mainly used to input the command, transmit it to another device, receive the output and display it to the end users. In older terminals, a scanner and camera were used for input, and a monitor and printer were used to provide the output. The terminal is called a command prompt or a shell in other Operating Systems, such as Linux, MacOS, and Unix. Here, you can input commands in the shell or command prompt, and the computer will display the output in text form after executing those commands.
How to Access Terminal?
Follow the steps below to access the terminal in different operating systems like Windows, Linux, and macOS.
Windows
Method 1:
- Press the Windows+R buttons together.
- A Run dialogue box will open. Here, type cmd and hit Enter.
- Now, type the command that you want to execute.
Method 2:
- Click on the Start Menu.
- Here, type cmd in the search box.
- Now, select Command Prompt and hit Enter.
Linux
- Press Ctrl+Alt+T to access the terminal.
- Or, click on the Application menu.
- Here, search for the Terminal or GNMOE Terminal.
- Click on the Terminal to open.
macOS
- Press the Command+Space buttons to open Spotlight Search.
- Here, type Terminal and click on the Terminal option.
Functions of a Terminal
The terminal permits users to perform several tasks, from simple file management to complex programs. Almost every operation can be executed through the terminal described below.
File Manipulation
There are various commands for managing files through the terminal of Unix-based OS like Linux or macOS. The commands are provided below.
Command | Function |
cd directory_name | This command changes the directory to directory_name. |
cd .. | It is used to move one directory up. |
cd | Used to return to the home directory. |
ls | This command provides a list of files and directories in the current directory. |
ls -l | This command lists available files and directories with additional details (shows permissions, ownership, size, etc). |
mkdir directory_name | This Linux command is used to create a new directory. |
touch file_name | It is used to create a new file. |
rm file_name | Used to remove a file. |
rm -r directory_name | This command removes a directory and its contents. |
rmdir directory_name | This command allows you to remove an empty directory. |
cp source_file destination_file | This command is used to copy a file. |
cp -r source_directory destination_directory | You can use this command to copy a directory and its contents. |
mv source_destination | This command permits you to move or rename a file or directory. |
cat file_name | Used for displaying file contents. |
less file_name | With the help of this command, you can view file content page by page. |
head file_name | It is used to get the first few lines of a file. |
tail file_name | This command is used to get the last few lines of a file. |
nano file_name or vim file_name | This command opens a text editor to edit the file. To modify or edit the text, use arrow keys or shortcuts. |
chmod permissions file_name | Used to change the file permission. |
chown new_owner file_name | By using this command, you can change file ownership. |
find path_name "filename" | This command allows you to search a file by name within a specific path. |
grep "pattern" file_name | This command enables you to search for a specific pattern in a file. |
Throughout the commands mentioned above, you can implement the task of file manipulation in Linux and macOS. Using the terminal, you can perform other operations like software installation, network configuration, process management, system monitoring, etc.
Different Types of Terminals
The terminals come in different forms, each used for specific purposes according to various operating systems.
Hard Copy Terminals
Electromechanical teleprinters/teletypewriters (such as the Teletype Model 33), initially used for telegraphy, were among the first user terminals connected to computers. Early Teletypes, including a paper tape reader and punch, were typically configured as Keyboard Send-Receive (KSR) or Automatic Send-Receive (ASR). This resulted in the current loop interface, already used in telegraphy, and a thriving computer surplus machine market.
personalized designs. Later, keyboard/printer terminals included the DECwriter and the IBM 2741. The top speeds of the LA30 (an early DECwriter), IBM 2741, and teletypes were 10, 15, and 30 characters per second, respectively.
Intelligent Terminals
The term intelligent terminal first appeared in 1969. A microprocessor is typically built into an intelligent terminal, but not all terminals with microprocessors actually process input; instead, the primary computer to which the terminal was connected had to react swiftly to each keystroke.
Intelligent terminals are equipped with some processing power as compared to dumb terminals. They can send data to the main computer after completing some tasks locally. Their limited memory and processing capacity might enable some degree of local data manipulation.
Graphical Terminals
A graphical terminal displays text as well as images. The graphical terminal was developed in the 1960s and gained popularity in the 1970s and 1980s. This graphical terminal was used to run GUI, such as the Apple Macintosh and the X Window system. However, with the invention of personal computers with built-in graphical capabilities, graphical terminals became less popular. Despite that, they are still used in CAD/CAM scientific computing. The graphical terminal is divided into two modes: 1. vector mode and 2. raster mode. Let's understand both modes in detail.
Vector Terminals
Direct line drawings on the cathode-ray tube face are made possible by vector-mode displays managed by the host computer system. Although the lines are continuously formed, the number of concurrent lines that can be displayed at once is limited due to the speed limitations of electronics. Despite their historical significance, vector-mode displays are no longer in use.
Raster Terminals
Almost all modern graphics displays come in raster mode. These terminals show graphics on a Cathode Ray Tube (CRT). An electron beam scans the CRT to paint the image onto the screen. Compared to vector-scan terminals, raster-scan terminals are more prevalent. They are also more versatile because they can display a greater variety of graphics.
Advantages
Usually, a network or serial port links graphical terminals to computers. The terminal receives commands from the computer telling it what to display. The graphical terminal has various advantages and disadvantages that are pointed out below:
- The graphical terminal displays various data like images, texts, charts and diagrams.
- It enables users to view complex data or information.
- It may have more visual compatibility.
Disadvantages
- These types of terminals are more typical than text-only terminals.
- It requires more processing power from the computer.
- It may not be compatible with older software.
Block-Oriented Terminal
A block-oriented terminal is a computer terminal that communicates with its host in data blocks. It is also known as a block mode terminal. On the other hand, a character-oriented terminal communicates with its host one character at a time.
Block-oriented terminals generally have a buffer that holds one or more screens of data in addition to data attributes, including the underlying data structure of the displayed information (heading, paragraph, list item, etc.) and appearance indicators (colour, brightness, blinking, etc.). As a result, the terminal can handle some data manipulation tasks on its own, like scrolling and cursor movement, without requiring the host to send requests. This can lessen the quantity of processing that the host computer needs to do, particularly when handling big data sets.
The IBM 3270, a block-oriented terminal used with mainframe computers, is the most well-known example. Additional block-oriented terminals are the DEC VT220 and the VT340.
Benefits / Advantages
Unlike character-oriented terminals, block-oriented terminals frequently support a greater variety of features, like scrolling, cursor movement, and multiple fonts.
- Lower processing load on the host computer: As previously indicated, block-oriented terminals have the ability to handle some data manipulation tasks on their own, which can lower the processing load on the host computer.
- Improved Performance: When working with big volumes of data, block-oriented terminals can frequently offer faster performance than character-oriented terminals.
Disadvantages
- Higher Cost: Block-oriented terminals are typically more expensive than character-oriented terminals.
- Complex Hardware: Block-oriented terminals require more sophisticated hardware than character-oriented terminals.
- Less Compatibility: Not all software programs are compatible with block-oriented terminals.
With the increasing power and sophistication of computer software, block-oriented terminals are becoming less common; that said, they are still in use in certain specialized applications, such as industrial automation and mainframe computing.
Character-Oriented Terminal
A Character-Oriented Terminal (COT) is a computer terminal communicating with its host one character at a time. This contrasts with a Block-Oriented Terminal (BOT), which communicates with its host in data blocks.
Key Attributes
- COTs send every character, including any control characters required for formatting or other purposes, to the host one at a time.
- Compared to BOTs, this enables simpler hardware and software.
- COTs do not natively support graphics but are primarily intended for text-based applications.
- They usually don't have many features besides simple text display, like scrolling and cursor movement.
Examples of Character-oriented Terminals
- Early teletypewriters
- Dumb Terminals
- VT100 Terminals
Advantages
- Software applications widely support the character-oriented terminal.
- Simple and lower-cost to implement.
- Reliable and efficient for text-based applications.
Disadvantages
- It has limited functionalities as compared to the Block-Oriented Terminals.
- It is not suitable for graphical applications.
- Needs more processing power from the host computer to perform complex tasks.
Use Cases of Character-Oriented Terminal
- Provides Command Line Interfaces.
- It has Legacy Systems and applications.
- Text Editors and Coding Environment.
- It provides Remote server access.
Text Terminals
Text terminals are interfaces for communicating with computers using plain text. They are also referred to as text consoles or just terminals. Despite their apparent simplicity, they are still adaptable tools for various applications and have clear benefits over graphical user interfaces.
Types of Text Terminals
- Physical terminals: Specific hardware for one-on-one communication includes a keyboard and screen.
- Network terminals: Provide remote access and centralized management by connecting to PCs via a network.
- Serial terminals: Usually used for industrial applications or legacy systems, serial ports allow computers to communicate.
- Virtual terminals: Computer programs that simulate an actual terminal, frequently in a graphical user interface.
Benefits
- Automation: Batch processing and scripting are simpler in text environments.
- Troubleshooting: Text-based error logs and messages offer more detailed information for system diagnosis.
- Accessibility: Those with vision impairments may find text terminals compatible with screen readers.
- Learning Stages: It can be quicker to pick up primary navigation and command skills than to learn intricate GUI interactions.
Text Terminals Used By
- Software Developers
- Security Professionals
- Power Users
- System Administrators
- Network Engineers
Video Display Units (VDUs)
VDUs, also known as monitors or displays, are electronic devices that show visual data produced by computers or other devices. They are now indispensable parts of our everyday existence, utilized for everything from communication and education to work and amusement.
Types of Video Display Units
- CRT (Cathode Ray Tube) Display
- LCD (Liquid Crystal Display)
- Organic Light-Emitting Diode (OLED)
Key Features
- The pixel count, expressed in terms of 1920x1080, defines the image's sharpness and level of detail.
- The frequency of image updates per second is measured in Hertz (Hz). Smoother motion is achieved with higher refresh rates, particularly in gaming and fast-paced content.
- DUs can be connected to PCs and other devices via several ports, including USB-C, HDMI, and DisplayPort.
- Vertical display units (VDUs) are available in multiple dimensions, usually expressed as diagonal inches (e.g., 24 inches) and aspect ratios (e.g., 16:9, 21:9), which establish the screen's width and height proportions.
- It defines the colour scale the display can produce and is measured in bits (for example, 8-bit, 10-bit).
Where Used VDUs?
- For Personal computers
- In Televisions
- In Mobile Devices
- Digital Signage
- Virtual and Augmented Reality
Conclusion
The computer terminal plays a vital role in the context of commanding and viewing the outputs. We have also provided the techniques for accessing the Windows, macOS and Linux terminals.