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:

  1. Process Management
  1. File Management
  1. I/O Management
  1. Scheduling
  1. 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

  1. Allocating and deallocating memory to each and every process.
  2. Receiving instructions from the shell and carrying them out.
  3. Managing files that held on various storage devices.
  4. Scheduling, Coordinating and assigning various input/output devices simultaneously.
  5. Enforcing security measures.
  6. Providing Network services.
  7. Providing Utility services.
  8. Coordinating each and every process with signal handling.
  9. 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

  1. All communications between user and Kernel takes place through the shell.
  2. It allows the tasks to run on background.
  3. It also enables us to construct scripts like a programming language.
  4. 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.