Operating System
UNIX
UNIX The full name of UNIX is UNiplexed Information Computing System, commonly known as UNICS. UNIX is a strong operating system that has been around since 1969 and is quite well-liked. The high-level programming language C was used to rewrite Unix after it was initially created in assembly language.
The original version of UNIX was developed in 1969 on a PDP-7 minicomputer, which was selected mostly due to Thompson's familiarity with the system from his hobby work on it. The team was led by computer scientists Ken Thompson and Dennis Ritchie. The original AT&T Unix, whose development began in 1969 at the Bell Labs research facility by Ken Thompson, Dennis Ritchie, and others, is the ancestor of the Unix family of multitasking, multiuser computer operating systems.
UNIX was frequently used for Internet servers, workstations, and mainframe computers in the late 20th century. Simpleness, portability (ability to run on a variety of platforms), multitasking and multiuser capabilities, a sizable software library, and a hierarchical file system were among UNIX's key strengths. This was the first of many UNIX ports that would eventually result in the 1983 release of System V, a new version of UNIX. Later, versions of UNIX developed by firms like Silicon Graphics, Inc. and Sun Microsystems, Inc. joined these earlier versions, and ongoing development kept UNIX current with advancements in computer technology.
Many later free open-source operating systems, including FreeBSD and Linux (which mainly succeeded UNIX), were inspired by UNIX. It was also the inspiration for Apple Inc.'s Mac OS X. Users of UNIX can store and retrieve data using files in the file system, which is a hierarchical structure of files and directories. It was designed with programmers creating software in mind, not non-programmers.
The Kernel was the primary area of concentration for this operating system's creators. The kernel, the shell, and the software applications are the three components that make up the UNIX operating system. The operating system's beating heart was thought to be Unix. The Unix OS system structure is as follows:
Features of UNIX Operating System
Multitasking :
A UNIX operating system is a multitasking operating system that enables you to start many tasks from the same terminal, then that one task is performed as a foreground and the other task as a background process.
Multi-user :
Multiple users can access computer resources such main memory, hard discs, tape drives, etc. with the help of the UNIX operating system. Multiple users can log on to the system from various terminals and do various tasks using a command terminal's shared resources. It discusses the idea of time-sharing. A scheduler, also known as a time slice, splits the CPU time into numerous pieces, each of which is used for time-sharing. A scheduler, which divides the CPU time into many segments, also known as time slices, assigns each segment to each user on a scheduled basis in order to implement time-sharing. This moment in time is brief. Control is transferred to the next system user when this period of time expires. Within their time slice, each user puts their set of instructions into action.
Portability :
Because code can be transferred easily to any computer system, this capability enables UNIX to run on a variety of hardware and operating systems. Since the majority of UNIX is written in C and only a very small amount is written in assembly language for particular hardware.
File Security and Protection :
UNIX gives file and system security extra emphasis because it is a multi-user system. UNIX has various layers of security, including authentication using username and passwords assigned to specific users, read, write, and execute file access permissions, and file encryption to convert a file into an unreadable format.
Command Structure :
UNIX commands are straightforward to use and comprehend. Consider "cp," "mv," etc. The UNIX commands are case-sensitive and entered in lower case when used in a UNIX environment.
Communication :
A fantastic component of UNIX that permits global connection is communication. It supports a variety of communication features offered by the chat, mail, and write commands, among others.
Open Source :
Because the UNIX operating system is open source, it is a community-based development endeavour and is freely accessible to everybody.
Accounting :The user-created jobs are tracked by UNIX. System performance is improved by this function in terms of CPU monitoring and storage space checks. You may keep track of how much disc space each user has used and set individual disc space limits. Every user can have a different disc quota. These accounting duties can be carried out by the root user using a variety of programmes like quota, df, du, etc.
UNIX Tools and Utilities :
The UNIX operating system offers a variety of tools and utilities, including UNIX grep, sed, and awk. Compilers, interpreters, network programmes, and other general-purpose tools are a few examples. Additionally, it contains a number of server packages that offer remote and management services.
Types of UNIX Operating System
Although they all have certain commonalities, there are numerous UNIX versions. The most widely used UNIX variants are TRU64 UNIX, Sun Solaris, GNU/Linux, Darwin, FreeBSD, and MacOS X. A Linux distribution is the form in which Linux is packaged. There are numerous Linux distributions available, both free and paid.
ISU offers a campus site subscription to Red Hat Enterprise Linux (RHEL), which gives students, teachers, and staff both personal access and access to university-owned equipment. Running on each of our clusters is RHEL.
Sun Solaris :
Based on the BSD and AT&T System V operating systems, Solaris is one of the varieties of UNIX operating systems developed by Sun Microsystems. SunOS was the name of Sun Microsystems' prior operating system. The first SunOS iteration built on BSD principles was introduced in 1982. Launched by Sun, the scalable processing architecture (SPARC) microprocessor made it possible to build durable, dependable, and affordable computers. Sun replaced SunOS with Solaris after version 4.0, and this operating system was known as SunOS up until version 3.x. Based on the UNIX system V release 4, the Solaris 2.0 version (SunOS 5.0) was introduced in 1992. A Solaris-based open-source project called Open Solaris was abandoned by Oracle when Sun Microsystems was acquired by the company.
GNU/Linux Operating System :
A Unix-like operating system called GNU/Linux is made up of many Linux OS services and OS components. The term GNU is an acronym in which one of the letters stands for the acronym itself because it stands for GNU's not Unix. The majority of the GNU/Linux components and services were initially developed by the GNU Project, and the Linux kernel was eventually incorporated to produce the GNU/Linux operating system. GNU/main Linux's component is the Linux kernel, which manages OS resources and offers fundamental functions.
Darwin :
One of the UNIX operating systems built on open-source initiatives like NeXTSTEP, BSD, Mach, and others is Darwin. Apple invented it in 2000. XNU, the Darwin kernel, is largely responsible for the DNA of macOS. The Internet Systems Consortium made an effort to work with Apple to develop Open Darwin, a community-led OS based on Darwin. Due to Apple's lack of interest and Darwin's low utility outside of its macOS functions, the project, which had been launched in 2002, was abandoned after only four years.
Hardware :
All hardware-specific information in the UNIX environment is contained in this layer.
The Kernel :
The operating system's kernel, which controls hardware and software functions, is its essential component. In essence, it controls how memory and CPU time are used. It is an essential part of the operating system. The kernel serves as a link between software programmes and hardware-level data processing carried out through system calls and inter-process communication.
When an operating system is loaded, the kernel loads first and stays in memory until the operating system is shut down once more. It is in charge of many things, including memory management, task management, and disc management.
It chooses which processes should be kept in main memory for execution and which ones should be allocated to the processor for execution. In essence, it serves as a conduit between hardware and user programmes. The primary function of the kernel is to control communication between user-level applications and hardware components like the CPU and disc memory.
The kernel is the portion of the operating system that is responsible for ensuring its full functionality. On the specific computer hardware, the UNIX kernel executes and efficiently communicates with the hardware. Additionally, it serves as a device manager and completes important tasks for programmes that need access to peripheral devices that are attached to the computer. Device drivers allow the kernel to control certain devices.
The RAM is also managed by the kernel. Processes are programmes that are run and have human or automated owners who start them.
A few processes need a lot of memory, which the system must make available to all processes in a sufficient amount. to allot enough memory to each process and to utilise main memory efficiently. It makes use of fundamental methods including virtual storage, swapping, and paging.
Types of Kernel :
1. Monolithic Kernel :
It is one of the types of kernels in which the kernel space hosts all operating system services. The parts of the system are interdependent. It is really sophisticated and has a lot of code.
2. Micro Kernel :Kernel types are those with a simple design. It has thread scheduling and virtual memory. With fewer services in the kernel space, it is more stable. Rest is provided in user space.
3. Hybrid Kernel :Both the monolithic kernel and the microkernel are combined in it. It has the modularity and stability of a microkernel as well as the speed and design of a monolithic kernel.
4. Exo Kernel :It is a kernel that adheres to the end-to-end philosophy. The minimum number of hardware abstractions is used. Applications are given physical resources to use.
5. Nano Kernel :This particular kernel lacks system services but provides hardware abstraction. The Micro Kernel and Nano Kernel have become comparable since the Micro Kernel likewise lacks system services.
The Shell :
A shell is a specialised user programme that offers an interface for users to use the services of the operating system. Shell accepts user commands that are human readable and converts them into terms that the kernel can comprehend. It is a command language translator that carries out commands that are read from files or from input devices like keyboards. When a user logs in or opens a terminal, the shell launches. You have access to the UNIX system through the shell. You provide input, and it uses that input to run programmes. The output of a programme is shown once it has completed running.
We may execute our commands, applications, and shell scripts in a shell environment. Similar to how there are various operating systems, there are various shell flavours. Each type of shell has an own set of recognised functions and commands.
Types of Shells in UNIX Systems :
There are two main categories of shells in UNIX:
1. The Bourne shell, first. The default prompt when using a Bourne-type shell is the $ symbol.
2. The shell in C. The default prompt when using a C-type shell is the % symbol.
For Bourne Shell, there are once more a number of subcategories, which are stated as follows:
Bourne shell ( sh)
Korn shell ( ksh)
Bourne Again shell ( bash)
POSIX shell ( sh)
Bourne Shell :
The Shell is what is known as the Bourne Shell. It was the first UNIX OS Shell. On a UNIX system, it is still the Shell that is most extensively used.
C Shell :
Another well-liked shell that is typically accessible on a UNIX system is the C shell. The University of California at Berkeley created the C shell, which improved upon some of the Bourne shell's drawbacks.
Korn Shell :
David Korn developed the Korn Shell to solve the user-interaction problems with the Bourne Shell and the scripting challenges with the C shell.
Application Layer :
The outermost layer is where the specified external programmes are run. UNIX distributions frequently include a number of practical application programmes as standard equipment. XV image viewer, Star Office, the emacs editor, the g++ compiler, etc.
Files and Processes
In Unix, everything is either a process or a file. In Unix, a file simply serves as a source or destination for a stream of data. A screen and a printer, for instance, are both examples of files.An active programme is referred to as a process. Consequently, a process may be linked to a file. The instructions that are carried out so that the process can run are stored in the file.A different perspective is that a file is a grouping of data that may be identified by name. Users can create files directly (by using text editors or running compilers) or indirectly (by doing other things) (by running some programme - like processing a text input file to produce a formatted file for printing).
Directory Structure
In computer science, the Unix directory structure is a pattern for a hierarchical organisation of computer files, especially in Unix-like operating systems. Multics had the first truly universal hierarchical file system. Microsoft's Disk Operating System offered a directory layout quite similar to this one in the early 1980s (DOS). A single directory, called the root, sits at the top of the tree-like Unix directory, from which subdirectories branch out. This structure is typically depicted as an inverted tree. A series of subdirectories may originate from each subsequent subdirectory.
UNIX System Calls
For file system control, process control, interprocess communication, etc., Unix uses system calls. These system calls are the only way to access the Unix kernel. System calls are, in general, comparable to function calls; the only distinction is that they take control away from the user process.
.png)



.png)




Comments
Post a Comment