Ex.No: STUDY OF UNIX OS
Date:
INTRODUCTION
An operating system is software that acts as an interface between the user and the computer hardware. It is considered as the brain of the computer. It controls and co-ordinates the internal activities of the computer and provides user interface.
The computer system is built with the following general components
i) Hardware
ii) Application Software
iii) Operating System
(i) Hardware: This includes the physical components such as CPU, Keyboard, Hard disk and Printer.
(ii) Application Software: These are the programs that are used to accomplish specific tasks.
(iii)Operating System: It is the component or the set of programs to manage and control the hardware as well as co-ordinate the applications. Each system must have at least have the hardware and the OS.
Functions of an Operating System
· Command interpretation: The CPU can’t understand the commands keyed in by a user. It is the function of the OS to make it understand.
· Peripheral Interfaces: The OS also has to take care of the devices attached to the system. The OS oversees communication between these devices and the CPU.
· Memory management: The OS handles the extremely important job of allocating memory for various processes running on the system.
· Process management: This is required if several programs must run concurrently. CPU time would then have to be rationed out by the OS to ensure that no programs get more than its fair share of the processor time.
Services of an OS:
- Process Management
- File Management
- I/O Management
- Scheduling
- Security Management
UNIX OPERARTING SYSTEM:
In the mid-1960s, AT &T Bell Laboratories developed a new OS called Multics. Multics was intended to supply large scale computing services as a utility; much like electrical power. In 1969 Ken Thompson, Dennis Ritchie and others developed and simulated an initial design for a file system that later evolved into the UNIX file system. The whole UNIX was rewritten in „C‟ language in 1973.Today, UNIX is a giant OS and is much powerful than most of its counter parts.
UNIX operating System is like a layer between the hardware and the applications that run on the computer .It has functions that run on the computer. It has functions that manage the executing applications.
UNIX system is an OS, which includes the traditional system components. UNIX system includes a set of libraries and a set of applications.
KERNEL is the heart of UNIX OS that manages the hardware and the executing process. The UNIX system views each device as a file called a device file. It implements security controls to protect the safety and privacy of information. The Unix System allocates resources including use of the CPU and mediates accesses to the hardware.
Application portability is the ability of a single application to be executed on various types of computer hardware without being modified. This is one of the important advantages of UNIX.
FEATURES OF UNIX:
1. Multitasking
Multitasking is the capability of the OS to perform various tasks simultaneously. i.e. A single user can run multiple programs concurrently.
2. Multiuser Capability
Multiuser capability allows several users to use the same computer to perform their tasks. Several terminals are connected to a single powerful computer and each user can work with their terminals.
3. Security
Unix allows sharing of data. Every user must have a Login name and a password. So, accessing another user’s data is impossible without permission.
4. Portability
Unix is a portable because it is written in high level languages so it can run on different computers.
5. Communication
Unix supports communication between different terminals connected to the Unix server and also between the users of one computer to the users of another computer located elsewhere in the network.
6. Programming Facility
UNIX is highly programmable; the UNIX shell programming language has the conditional statements and control structures and variables.
UNIX ARCHITECTURE
The functioning of Unix OS is handled in 3 ways. The closest layer is the hardware, which provides the services to the OS. The Unix OS referred to Unix as the kernel, is the heart of the Unix. The other layer is the shell, which acts as the mediator that translates the commands given by the application programs.
Kernel
It is the core of the OS. It controls all the tasks and carries out all the functions of an OS such as memory and file management etc., and it keep track of the programs that are executing. It also handles the information exchange between the terminals such as tape drives and printers etc.
Functions of Kernel
- Allocating and deallocating memory to each and every process.
- Receiving instructions from the shell and carrying them out.
- Managing files that held on various storage devices.
- Scheduling, Coordinating and assigning various input/output devices simultaneously.
- Enforcing security measures.
- Providing Network services.
- Providing Utility services.
- Coordinating each and every process with signal handling.
- Providing administrative functions or utilities.
Shell
It is the command interpreter of the OS. The commands given from the user are moved to the shell. The shell analyses and interprets these commands into the machine understandable form. The commands can be either typed in through the command line or contained in a file called shell script. Hence, Shell acts as an interface between the user and the kernel.
UNIX has a variety of shells, they are:
(i) Bourne Shell: It is developed by Steve Bourne and it is the most popular shell and widely used. This shell comes bundled with almost every UNIX system.
(ii) Korn shell: It is developed by David G.Korn. This is superset of Bourne shell and it has more capabilities.
(iii) C Shell: It is developed by Bil Joy. It is similar to C Programming language.
Features of Shell
- All communications between user and Kernel takes place through the shell.
- It allows the tasks to run on background.
- It also enables us to construct scripts like a programming language.
- A group of files can be executed using a single command.
Starting a UNIX session – Logging In
A user of UNIX based system works as a user terminal. After the boot procedure is completed, that is the operating system is loaded in memory, the following message appears at each user terminal:
Logging
Each user has an identification called the user name is the login name which has to be entered when the login: message appears. The user is then asked to enter the password. UNIX keeps track of all the UNIX user names and the information about identity in a special file. If the login name entered does not match with any of the user names it displays the login message again. This ensures that, only authorized people use the system. When a valid user name is entered at the terminal the dollar symbol is displayed on the screen this is the UNIX prompt.
Ending a UNIX session –Logging Out
Once a user has logged into the system the users’ works session continues until the user instructs the shell to terminate the session. This is done by pressing the ctrl and d keys together or typing exit at the dollar prompt. Then the systems display the login: Prompt on the screen.
Ex.No: BASIC UNIX COMMANDS
Date:
1. cat command
This command is used to create a file in unix.
Syntax:
$ cat >filename
This command is also used for displaying contents in a file.
Syntax:
$ cat filename
2. ls command
It displays the list of files in the current working directory.
Syntax:
$ ls
3. rm command
This command is used to remove an existing file .
Syntax:
$ rm filename
4. wc commad
This command is used to count the number of lines characters & words in a file.
Syntax:
$ wc filename
5. pwd command
This command is used to know the current working directory.
Syntax:
$ pwd
6. date command
This command is used to display the current date ,year ,month ,day &time.
Syntax:
$ date
7. echo command
This command is used to print the message on the display .
Syntax:
$ echo text
8. cal command
This command is used to display the specified month or year calendar.
Syntax:
$ cal month
9. who command
This command is used to display the date & terminal type of all the users who are currently logged into a system
Syntax:
$ who
10. who am I command
This command is used to display the logging details of the user who worked in that terminal.
Syntax:
$ who am i
11. bc command
This command is used to perform mathematical calculations.
Syntax:
$ bc operation
12. tputclear command
This command is used to clear the screen & place the $ prompt at the top most of the screen.
Syntax:
$ tput clear
13. tty command
This command is used to display the device type of the terminal.
Syntax:
$ tty
14. mkdir command
This command is used to create a new directory.
Syntax:
$ mkdir filename
15. man command
If we get stuck on something, and cannot find an expert to help, we can print any manual page on our terminal with the command ’man’ command-name.
Syntax:
$ man who
16. head and tail command
The head command is used to display the initial part of a text file. This can be thought of aa a complement command to the tail command. which displays the last part of a text file. By default head command displays first 10 lines of a file and tail command the last lines. $ head [-count] filename.
Syntax:
$ head -4 friends
jude
jacob
raju
prem
will display the first four lines of a file called friends.
$ tail [+|- number] filename
Syntax:
$ tail +5 friend
will display from the 5th line from the beginning of the file.
$ tail -5 friend
will display from the 5th line from the end of the file.
17. cd command
It is used to change the current directory to the other directory specified.
Syntax:
$ cd jac
18. rmdir command
It is used to remove the directory. It requires the directory to be empty.
Syntax:
$ rmdir directoryname
19. cp command
It is used to create duplicate copies of ordinary files.
Syntax:
$ cp source destination
20. ln – link command
It is used to establish an additional filename for the same ordinary file.
Syntax:
$ ln ordinary_filename additional_filename
Ex:
$ ln red rose
Advantage of this command is that several users can have access to a common data file.Any modification in the additional file or ordinary file reflects in both of them.
21. mv command
It is used to rename and move ordinary and directory files. To do this we need both execute and write permissions.
Syntax:
$mv source destination
Ex:
Renaming, $ mv aaa bbb
To move the contents of the file old to the new, the syntax is: Ex: $ mv old new
22. To concatenate several files and display:
The above cat command will concatenate the two files (file1.txt and file2.txt) and it will display the output in the screen.
Syntax:
catfile1.txtfile2.txt
Sometimes the output may not fit the monitor screen. In such situation you can print those files in a new file or display the file using less command.
Syntax:
catfile1.txtfile2.txt|less
To concatenate several files and to transfer the output to another file.
catfile1.txtfile2.txtfile3.txt
In the above example the output is redirected to new file file3.txt. The cat command will create new file file3.txt and store the concatenated output into file3.txt.
23. To view the files page by page
More command is used to view one page of a file at a time.
Syntax:
cat filename | more
Or
Less command is also used to view the file page by page.
Syntax:
cat filename | less
24. To list files and directories, recursively on a single line
ls -R gives a recursive listing, including the contents of all subdirectories and their subdirectories and so on.
25.To append more than one file
To append data into the same file use append operator > to write into the file, else the file will be overwritten (i.e., all of its contents will be erased).
Syntax:
catfile1.txt
26.To change the password
The passwd command changes the password for the user.
Syntax:
passwd tech
27. To view the commands which was executed
History command is used to view the commands which were executed.
Syntax :
History
28. List all filenames which has dot at the end
Syntax:
find ./ -type f -name '*[.].*'
29. List all filenames which has an extension
Syntax:
find ./ -type f -name '*.*'
30. Display all files, sub directories and files in subdirectories including their sizes
Syntax:
du –sk * | sort -n
31. Store the output of date command in a file called date. out
Syntax:
date > date.out
32. To display the file attributes
Syntax:
stat filename
33. Change the mode of the file, where the changed file should possess all the permission
Syntax:
chmod 777
34. List all files in current directory whose second character is a digit
Syntax:
find ./ -type f -name ' ?[0-9]*'
35. Sort the files in alphabetical order
Syntax:
sort filename
36. Change the file to read only mode
Syntax:
chmod 0444
Ex.No: STUDY OF VI EDITOR AND BASIC SHELL COMMANDS
Date:
An editor is program that allows to see a portion of a file on the screen and to modify characters and lines by simply typing at the cursor position. There are number of editors that may be included with the UNIX system, including ED, EX, VI and EMACS.
The vi Editor
VI - vi stands for visual.
VI is a full screen editor and is widely acknowledged as one of the most powerful editors available .It is a full screen editor that allows the user to view and edit the entire document at the same time.
The VI editor was written in the University of California at Berkeley by Bill Joy, who is one of the co-founder of Sun Microsystems.