Unix case-study

4,785 views 32 slides May 08, 2020
Slide 1
Slide 1 of 32
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32

About This Presentation

CASE STUDY OF UNIX/LINUX OPERATING SYSTEM


Slide Content

UNIX OPERATING SYSTEM

SUBMITTED BY TEAM MEMBERS CLASS ROLL. NUMBER NISHANT MISHRA IT 2A 1803013059 PIYUSH BANSAL IT 2A 1803013059 MAYANK BANSAL IT 2A 1803013059 ISHA GOEL IT 2A 1803013059

In-order to introduce concept of UNIX O.S we should go through certain topics : > C O M PON E N T S OF C O M P U TER S Y S TEM. > WHAT IS AN OPERATING SYSTEM ?

End U s er Programmer O pera t in g - System Designer Computer Hardware Operating-System Utilities Application Programs

Hardware – provides basic computing resources (CPU, memory, I/O devices). Operating system – controls and coordinates the use of the hardware among the various application programs for the various users. Utilities – Programs that assist in system management and software development. Applications programs – define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, video games, business programs).

An Operating System is a program that acts as an interface between the user of a computer and the computer hardware. Operating system goals: Control/execute application programs. Make the computer system convenient to use. Make solving user problems easier. Use the computer hardware in an efficient manner.

The Unix operating system found its beginnings in MULTICS which stands for Multiplexed Operating and Computing system. The MULTICS project began in the mid 1960s as a joint effort by General Electric, Massachusetts Institute for Technology and Bell Laboratories. In 1969 Bell Laboratories pulled out of the project.

One of Bell Laboratories people involved in the project was “ Ken Thompson ” . He liked the potential MULTICS had, but felt it was too complex and that the same thing could be done in simpler way. IN 1969 he wrote first version of UNIX called as UNIC. UNICS stood for “UNI-PLEXED” operating system And eventually shortened to UNIX.

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.

1. Multi-user system : Multi-user capability of UNIX allows several users to use the same computer to perform their tasks. Multi-tasking : Multitasking is the capability of the operating system to perform various task simultaneously, i.e. a user can run multiple tasks concurrently. Programming Facility : UNIX is highly programmable, the UNIX shell \ has all the necessary ingredients like conditional and control structures, etc.

4 . 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. 5 . Portability : UNIX is portable because it is written in a high level language. So , UNIX can be run on different computers.

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…….. NIC – 3Com, Novell, HP, Intel - Clones are NOT recommended.

UNIX is a multitasking system. Multiple programs can be executed at the same time. Ultimately, a program needs to be executed by a CPU. If there is only one CPU, how multiple programs can be executed at the same time? By time sharing That is, all programs are claimed to be executing. In fact, most of them are waiting for the CPU.

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 :

Ready state All processes that are ready to execute but without the CPU are at the ready state If there is only 1 CPU in the system, all processes except one are at the ready state Running state The process that actually possesses the CPU is at the running state If there is only 1 CPU in the system, at most there is only one process is at the running state Sleeping state The process that is waiting for other resources , e.g. I/O, is at the sleeping state

Processes will alternatively get into the CPU one after the other (called the round robin scheme ) A process will be “in” a CPU for a very short time ( quantum ) For Linux, each quantum is about 100msec 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

WHAT IS MEMORY ? Primary memory is a precious resource that frequently cannot contain all active processes in the system. WHAT IS MEMORY MANAGEMENT ? The memory management system decides which processes should reside (at least partially) in main memory It monitors the amount of available primary memory and may periodically write processes to a secondary device called the swap device to provide more space in primary memory.

FIG : Typical internal memory layout for single user- memory part UNIX

MEMORY MANAGEMENT CONCEPTS OF UNIX 1.SWAPPING . The swap device is a block device in a configurable section of a disk Kernel allocates contiguous space on the swap device without fragmentation It maintains free space of the swap device in an in-core table, called map The kernel treats each unit of the swap map as group of disk blocks As kernel allocates and frees resources, it updates the map accordingly

2. 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. OTHER TECHNIQUES USED ARE AS FOLLOWS 1.Allocating swap space . 2.Free space swap. 3.Page table entry. 4.Disk block description..

A file system is a logical collection of files on a partition or disk. A partition is a container for information and can span an entire hard drive if desired. Everything in Unix is considered to be a file, including physical devices such as DVD-ROMs, USB devices, floppy drives, and so forth.

Unix uses a hierarchical file system structure, much like an upside- down tree, with root (/) at the base of the file system and all other directories spreading from there. It has a root directory (/) that contains other files and directories. Each file or directory is uniquely identified by its name, the directory in which it resides, and a unique identifier ,typically called an inode. It is self contained. There are no dependencies between one file system and any other. The directories have specific purposes and generally hold the same types of information for easily locating files. Following are the directories that exist on the major versions of Unix:

The directories have specific purposes and generally hold the same types of information for easily locating files. It has a root directory (/) that contains other files and directories. The inode type field distinguishes between plain files and directories Directory entries are of variable length; each entry contains first the length of the entry, then the file name and the inode number

(/ m nt) Used to mount other temporary file systems, such as cd rom and floppy for the CD-ROM drive and floppy disks (/proc) Contains all processes marked as a file by process number or other information that is dynamic tot he system. (/tmp) (/usr) (/var ) (/s b in) Holds temporary files used between system boots. Used for miscellaneous purposes, or can be used by many users. Includes administrative commands, shared files , library files. Typically contains variable-length files such as log and print files any other type of file that may contain a variable amount of Contains binary (executable) files, usually for system administration. For example f-disk and if-config utilities. (/kernel) Contains kernel files

Being a multi-user system - UNIX have a tremendous amount of security to offer; many being open source, which can be validated and modified to meet anyone’s needs. UNIX system security can be divided into three main areas of concern. Two of these areas, account security , file system security , Network security.

Before , any advanced system we should provide physical security to system by keeping it in a secure and protected area to avoid unauthorized access. ACCOUNT SECRITY: using authorized (UID) & UNIX user community haves no. of user who are given acces to system (GID). The access codes (passwords) to (UID) & (GID) are stored in system as stored in encrypted format SALTED PASSWORDS to avoid cracking of pswd. EX: UID : syslog 56 Password :********** The same information is stored in system files in following format: UID:SaltID:Saltedhash:EncrypedPassword:UserID:GroupID:Complete_Name:home_dir:shell_bin

FILE SYSTEM SECURITY. File system security is about making sure your users can only do what you want them to be able to do. This means that you want system programs to be secure and users to only be able to write where you want them to be able to. To impliment this uses tecn. OF ACLs PERMISSIONS. only Almost modern files systems, include ACLs to give unprivileged access to certain users.  Permissions are separated by owner, group, and others. On UNIX systems permissions are displayed as rwxrwxrwx With a few more special settings, Desktop environments also provide GUI settings for easy modifying

NETWORK SECURITY Once you put a computer on a network, you allow many more people potential access to the machine. The key to network security is to allow only those functions that the users actually need. By disabling non-used functions, you have much less monitoring/securing. Telnet Security : Using SSH (secure shell). SSH provides encrypted traffic to prevent snooping. FTP Security : As with other services, if you do not need this functionality, turn it off. You can turn off incoming FTP or simply certain users. If you need full FTP functionality, be certain to enable logging and monitor syslog.

TO GET A CONCLUSION TO OUR PRESENTATION WE ARE PUTTING FORWARD A COMAPRISON OF WINDOWS OS & UNIX OS. 1.As far as operating systems go, to some it would seem as if UNIX has a clear advantage over Windows. UNIX offers greater flexibility than Windows operating systems and it is more stable . FEW AREAS OF COMPARISON :- BETTER MULTIUSER APPROACH . BETTER PROCESS HEIRARCHY. USE OF DAEMONS . BETTER PROGRAMMING ENVIORMENT.

OTHER PRACTICAL COMPARISON WOULD BE : Cost User Security Processors Multiprocessing Open source File system supported So we can say UNIX far more better Than WINDOWS .