Unix is a multi-user, multi-tasking operating system developed at Bell Labs in the 1960s using a command line interface and featuring security, portability, and efficient memory management through processes, files, and directories. It allows multiple users to access the system simultaneously running many programs through its kernel which separates processes and regulates hardware access. Key aspects of Unix include its graphical and command line interfaces, process management through states and system calls, memory management using swapping and demand paging, and file management with ordinary, special, and directory file types.
2. Introduction
• Unix is a
Multi-tasking
Multi-user operating system.
• Many users can be logged into a system simultaneously, each running
many programs.
• The kernel job is to
Separate each process and user
Regulate access to system hardware i.e. memory & I/O devices.
3. History
• First version was created in Bell labs in 1969
• By KenThompson, Denis Ritchie, Brian Kernighan & Joe Ossanna
• Implemented on PDP-7
• It was given the name UNIX by Brian Kernighan
• 1973 unix was rewritten in C language
• 1980 BSD 4.1 (Berkeley Software Development)
• 1988 AT&T and Sun Microsystems jointly develop SystemV Release 4
(SVR4).This later developed into UnixWare and Solaris 2
• 1991 Linux was originated.
5. UNIX Architecture
• Kernel:The kernel is the heart of the operating system. It interacts
with hardware and most of the tasks .
• Shell:The shell is the utility that processes your requests.When you
type in a command at your terminal, the shell interprets the
command and calls the program that you want
• Commands and Utilities: There are various command and utilities
which you would use in your day to day activities. cp, mv, cat and
grep.
• Files and Directories: All data in UNIX is organized into files. All files
are organized into directories.These directories are organized into a
tree-like structure called the file system. .
6. HARDWARE REQUIREMENT
• RAM – 256 MB .
• HARD DRIVE – 10 minimum and maximum depends on the user
• requirement.
• VIDEO– Minimum 800X600.
• MOUSE – Any.
• REMOVAL MEDIA – Most SCSI.
• PRINTER – Almost any parallel or serial port.
• MODEM– Most serial, if DOS can use it, Unix can too……..
7. FEATURES
• Security : UNIX allows sharing of data; every user must have a single
login name and password. So, accessing another user’s data is
impossible without his permission.
• Multi-user system : Multi-user capability of UNIX allows several users
to use the same computer to perform their tasks with security and
privacy of there data and information.
• Multi-tasking : Multitasking is the capability of the operating system
to perform various task simultaneously, i.e. a user can run multiple
tasks concurrently.
8. CONT…..
• Portability : UNIX is portable because it is written in a high level
language. So , UNIX can be run on different computers.
• Programming Facility : UNIX is highly programmable, the UNIX shell
has all the necessary ingredients like conditional and control
structures, etc.
9. INTERFFACES OF UNIX
Graphical User Interfaces (GUIs)
• When you logon locally, you are presented with
graphical environment.
Command Line Interface
• You also have access to some UNIX servers as well.
• You can logon from virtually any computer that has internet access
whether it isWindows, Mac, or UNIX itself.
12. Process Management
• Multi-tasking system
• Multiple programs can be executed simultaneously
• 3 types of processes are available
System processes (Execute OS code)
User processes (Execute user program code)
Daemons process
13. Process
• A program that is claimed to be executing is called a process.
• For a multitasking system, a process has at least the following three
states:
1.Ready state
2.Running state
3.Sleeping state
14. Process Management
• Processes will alternatively get into the CPU one after the other
(called the round robin scheme).
• At the time that a process is selected to be “in” the CPU
It goes from ready state to running state
• After that, it will be swapped out
It goes from running state back to ready state
• Or it may due to the waiting of an I/O device, e.g. mouse
It goes from running state to sleeping state
• When obtaining the required resource
It goes from sleeping state to ready state
15. System Calls in UNIX
• Fork(): -This system call create new process.
• Exec(): -This system call used after a fork to replace the process
memory space with a new program.
• Wait():-This system call moves a process off the ready queue until the
termination of the child.
16. MEMORY MANGMENT SYSTEM
• Primary memory is a precious resource that frequently cannot
contain all active processes in the system.
• The memory management system decides which processes should
reside in memory.
• It monitors the amount of available
memory.
17. UNIX Memory Management Policies
• Swapping
– Easy to implement
– Less system overhead
• Demand Paging
– Greater flexibility
18. Swapping
• The process of moving some pages out of main memory
and moving others in, is called swapping.
• The swap device is a block device in a configurable section of a disk
• For the best performance, we want each page to be accessible in
Main memory as it is needed by the CPU.
• A page fault occurs when the CPU tries to access a page that is not in
main memory.
• A page will swapped out will go in any of the following:
19. Demand Paging
• Not all page of process resides in memory Locality
• When a process accesses a page that is not part of its working set, it incurs a page
fault.
• The kernel suspends the execution of the process until it reads the page into
memory and makes it accessible to the process.
• Advantages
Less I/O needed
Less memory needed
Faster response
Increased degree of multi programming.
21. FILE MANAGEMENT SYSTEM
Types of files in UNIX
• Ordinary Files: A file on the system that contains data, text, or
program instructions.
• Special Files: Some special files provide access to hardware such as
hard drives, CD-ROM drives, modems, and Ethernet adapters.
• Directories: Directories store both special and ordinary files. For
users familiar with Windows or Mac OS, UNIX directories are
equivalent to folders.
23. ADVANTAGES
• Full multitasking with
protected memory.
• Multiple users can run multiple
programs each at the same
time..
• Portable.
• Machine independent.
• Efficient virtual memory.
• Access Control and security.
DISADVANTAGES
• Its command line shell interface
is not user-friendly.
• It has a lot of utilities(over 400
standard ones)
• To use UNIX well, the user
needs to understand some of
the main design features.
24. Conclusion
• Better multiuser approach.
• Better process hierarchy.
• Use of daemons.
• Better programming
environment.
• Cost
• User
• Processors
• Security
• Multiprocessing
• Open source
• File system supported
So we can say UNIX far more better than WINDOWS .