Features of Unix
UNIX is no longer a small system, it is a rather very powerful one. Unlike Windows & DOS, UNIX can be used concurrently by several users. You can interact with a UNIX system through a command-line interpreter called the shell. UNIX is a computer operating system that was first developed on 3 November 1971 and has been constantly updated since then.
Features of UNIX
Unix is an operating system, so it has all the features that the OS must-have. UNIX also looks at a few things in a different way than other OS. Features of UNIX are listed below :
1. Multiuser System :
Unix provides multiple programs to run and compete for the attention of the CPU. This happens in 2 ways :
- Multiple users running multiple jobs
- Single user running multiple jobs
In UNIX, resources are actually shared between all the users, so-called a multi-user system. For doing so, computer give a time slice (breaking unit of time into several segments ) to each user. So, at any instant of time, only one user is served but the switching is so fast that it gives an illusion that all the users are served simultaneously.
2. Multitask System :
A single user may run multiple tasks concurrently. Example : Editing a file, printing another on the printer & sending email to a person, and browsing the net too at the same time. The Kernel is designed to handle user’s multiple needs.
The important thing here is that only one job can be seen running in the foreground, the rest all seems to run in the background. Users can switch between them, terminate/suspend any of the jobs.
3. The Building-Block Approach :
The Unix developers thought about keeping small commands for every kind of work. So Unix has so many commands, each of which performs one simple job only. You can use 2 commands by using pipes (‘|’). Example : $ ls | wc Here, | (pipe) connects 2 commands to create a pipeline. This command counts the number of files in the directory. These types of connected commands that can filter/manipulate data in other ways are called filters.
Nowadays, many UNIX tools are designed in a way that the output of 1 can be used as an input for the others.. We can create a large number of combinations by connecting a number of tools.
4. The UNIX Toolkit :
Unix has a kernel but the kernel alone can’t do much that could help the user. So, we need to use the host of applications that usually come along with the UNIX systems. The applications are quite diversified. General-purpose tools, text manipulation utilities (called filters), compilers and interpreters, networked programs, and system administration tools are all included. With every UNIX release, new tools are being added and the older ones are modified/ removed.
5. Pattern Matching :
Unix provides very sophisticated pattern matching features. The meta-char ‘*’ is a special character used by the system to match a number of file names. There are several other meta-char in UNIX. The matching is not confined to only filename. Advanced tools use a regular expression that is framed with the characters from this set.
6. Programming Facility :
Unix provides shell which is also a programming language designed for programmers, not for casual end-users. It has all the control structures, loops, and variables required for programming purposes. These features are used to design the shell scripts ( programs that can invoke the UNIX commands).
Many functions of the system can be controlled and managed by these shell scripts.
7. Documentation :
It has a ‘man’ command that stands for the manual, which is the most important reference for any commands and their configuration files. Apart from the offline documentation, there is a vast amount of resources available on the Internet. If you’re stuck with a problem, there are various UNIX newsgroups where you can post your concerns. You can also go through the FAQ(Frequently Asked Questions) – a document that addresses several problems is widely used & available on the Net.