Architecture of Unix Components with Diagram

Architecture of Unix Operating System, The Kernel, The Shell, Hardware, and Unix Command and Libraries discussed.


Architecture of Unix

What is UNIX?

Unix is a popular operating system that was developed in the 1970s by Bell Labs. Its architecture consists of several key components that work together to provide a stable and reliable computing environment.

Architecture of Unix

The components of the Unix architecture include the kernel, the shell, the file system, and various utilities and commands.

The kernel is the heart of the Unix system, responsible for managing system resources such as memory, CPU, and input/output operations.

The shell is the interface between the user and the operating system, allowing the user to enter commands and execute programs.

The file system provides a hierarchical structure for storing and organizing files and directories.

Unix also includes a wide range of utilities and commands that enable users to perform various tasks, such as copying files, printing documents, and editing text files.

Together, these components make Unix a powerful and versatile operating system used widely in the fields of scientific computing, web development, and software engineering.

Unix architecture diagram
Unix architecture diagram

The Kernel

The kernel is the core part of the operating system that manages system resources and provides a layer of abstraction between the hardware and software components.

Functions of Kernel

Process Management: The kernel manages the creation, scheduling, and termination of processes, and ensures that each process has sufficient resources to run.

Memory Management: The kernel allocates and deallocates memory for processes, and manages virtual memory to ensure that processes have access to the memory they need.

Device Management: The kernel handles communication between devices and processes, and provides a uniform interface for accessing different types of devices.

File System Management: The kernel manages the file system and provides a file system interface for applications to access files and directories.

Security Management: The kernel enforces security policies, controls access to system resources, and protects the system from unauthorized access.

Overall, the kernel is responsible for managing the fundamental resources of the operating system and providing a stable and secure environment for applications to run.

The Shell

In Unix-based operating systems, the shell is a command-line interface that acts as an interface between the user and the operating system. It provides a way for the user to interact with the system and execute various commands.

Functions of the shell

Command execution: The shell allows users to execute commands and launch applications by typing in specific commands or running scripts.

Environment customization: The shell provides mechanisms for customizing the user’s environment, such as setting environment variables, defining aliases, and creating shell functions.

File management: The shell provides a range of file management commands that allow users to navigate the file system, and create, copy, move, and delete files and directories.

Input/output redirection: The shell allows users to redirect input and output from one command to another or a file, enabling powerful data processing workflows.

Job control: The shell provides mechanisms for managing jobs, such as starting and stopping processes, and controlling their execution.

Overall, the shell is a powerful tool that provides users with the ability to interact with the Unix operating system and accomplish a wide range of tasks efficiently and effectively.


The hardware includes all the parts of a computer including clocks, timers, CPU, monitor, keyboard, devices, parts, etc. in the Unix OS Architecture.

File Systems

In the Unix architecture, a file system is responsible for organizing and managing files and directories on storage devices such as hard disks.

The file system provides a hierarchical structure for organizing files and directories, and it allows users and applications to access and manipulate files through a set of system calls.

Functions of a file system

File organization and management: The file system provides a hierarchical organization of files and directories, which allows for easy management and retrieval of files.

File access control: The file system allows the operating system to control access to files and directories by users and applications, and to enforce file permissions and security policies.

File storage management: The file system manages the allocation and deallocation of storage space for files and directories, and ensures that files are stored efficiently and reliably on the storage device.

File backup and recovery: The file system provides tools for backing up and restoring files and directories, which is important for data protection and disaster recovery.

File system maintenance: The file system provides tools for maintaining and optimizing the file system, such as disk defragmentation and error checking.

Unix Commands and Libraries

This layer of Unix architecture includes user-written applications, using shell programming languages, and libraries of UNIX.

In Unix architecture, utilities and commands are tools and programs provided by the operating system to interact with the system and perform various tasks. These commands can be invoked through the shell and are categorized into several types

File management commands: Used to create, delete, copy, move, and modify files and directories. Examples include cp, rm, mkdir, rmdir, mv, chmod, and chown.

Text processing commands: Used to manipulate and process text files. Examples include grep, awk, sed, cut, paste, and sort.

System administration commands: Used to perform system administration tasks, such as managing user accounts, changing system settings, and monitoring system performance. Examples include useradd, userdel, passwd, reboot, shutdown, top, ps, and df.

Network commands: Used to manage network settings and connectivity, including configuring network interfaces, checking network status, and transferring files over a network. Examples include ifconfig, ping, ssh, scp, and ftp.

Shell built-in commands: Built into the shell itself and used to control the behavior of the shell or perform operations related to the shell environment. Examples include cd, echo, export, alias, and source.

These utilities and commands are essential components of the Unix architecture, allowing users and administrators to interact with the system and perform various tasks efficiently and effectively.