Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • Build your AI Agent
    • GfG 160
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Contests
    • Accenture Hackathon (Ending Soon!)
    • GfG Weekly [Rated Contest]
    • Job-A-Thon Hiring Challenge
    • All Contests and Events
  • Aptitude
  • Engineering Mathematics
  • Discrete Mathematics
  • Operating System
  • DBMS
  • Computer Networks
  • Digital Logic and Design
  • C Programming
  • Data Structures
  • Algorithms
  • Theory of Computation
  • Compiler Design
  • Computer Org and Architecture
Open In App
Next Article:
Users in Linux System Administration
Next article icon

Introduction to UNIX System

Last Updated : 27 Mar, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

UNIX is an innovative or groundbreaking operating system which was developed in the 1970s by Ken Thompson, Dennis Ritchie, and many others at AT&T Laboratories. It is like a backbone for many modern operating systems like Ubuntu, Solaris, Kali Linux, Arch Linux, and also POSIX. Originally, It was designed for developers only, UNIX played a most important role in the development and creation of the software and computing environments. Its distribution to government and academic institutions led to its widespread adoption across various types of hardware components. The core part of the UNIX system lies in its base Kernel, which is integral to its architecture, structure, and key functionality making it the heart of the operating system.

The basic design philosophy of UNIX is to provide simple, powerful tools that can be combined to perform complex tasks. It features a command-line interface that allows users to interact with the system through a series of commands, rather than through a graphical user interface (GUI).

Some of the Key Features of UNIX Include

  1. Multiuser support: UNIX allows multiple users to simultaneously access the same system and share resources.
  2. Multitasking: UNIX is capable of running multiple processes at the same time.
  3. Shell scripting: UNIX provides a powerful scripting language that allows users to automate tasks.
  4. Security: UNIX has a robust security model that includes file permissions, user accounts, and network security features.
  5. Portability: UNIX can run on a wide variety of hardware platforms, from small embedded systems to large mainframe computers.
  6. Communication: UNIX supports communication methods using the write command, mail command, etc.
  7. Process Tracking: UNIX maintains a record of the jobs that the user creates. This function improves system performance by monitoring CPU usage. It also allows you to keep track of how much disk space each user uses, and the use that information to regulate disk space.

Today, UNIX is widely used in enterprise-level computing, scientific research, and web servers. Many modern operating systems, including Linux and macOS, are based on UNIX or its variants.

System Structure

Figure – System Structure

  • Layer-1: Hardware: It consists of all hardware related information.
  • Layer-2: Kernel: This is the core of the Operating System. It is a software that acts as the interface between the hardware and the software. Most of the tasks like memory management, file management, network management, process management, etc., are done by the kernel.
  • Layer-3: Shell commands: This is the interface between the user and the kernel. Shell is the utility that processes your requests. When you type in a command at the terminal, the shell interprets the command and calls the program that you want. There are various commands like cp, mv, cat, grep, id, wc, nroff, a.out and more.
  • Layer-4: Application Layer: It is the outermost layer that executes the given external applications.

Kernel and Block Diagram

Figure – Kernel and its Block Diagram

This diagram shows three levels: user, kernel, and hardware.

  • The system call and library interface represent the border between user programs and the kernel. System calls look like ordinary function calls in C programs. Assembly language programs may invoke system calls directly without a system call library. The libraries are linked with the programs at compile time.
  • The set of system calls into those that interact with the file subsystem and some system calls interact with the process control subsystem. The file subsystem manages files, allocating file space, administering free space, controlling access to files, and retrieving data for users.
  • Processes interact with the file subsystem via a specific set of system calls, such as open (to open a file for reading or writing), close, read, write, stat (query the attributes of a file), chown (change the record of who owns the file), and chmod (change the access permissions of a file).
  • The file subsystem accesses file data using a buffering mechanism that regulates data flow between the kernel and secondary storage devices. The buffering mechanism interacts with block I/O device drivers to initiate data transfer to and from the kernel.
  • Device drivers are the kernel modules that control the operator of peripheral devices. The file subsystem also interacts directly with “raw” I/O device drivers without the intervention of the buffering mechanism. Finally, the hardware control is responsible for handling interrupts and for communicating with the machine. Devices such as disks or terminals may interrupt the CPU while a process is executing. If so, the kernel may resume execution of the interrupted process after servicing the interrupt.
  • Interrupts are not serviced by special processes but by special functions in the kernel, called in the context of the currently running process.

Difference Between Unix and Linux

Linux is essentially a clone of Unix. But, basic differences are shown below:

Linux Unix
The source code of Linux is freely available to its users The source code of Unix is not freely available general public
It has graphical user interface along with command line interface It only has command line interface
Linux OS is portable, flexible, and can be executed in different hard drives Unix OS is not portable
Different versions of Linux OS are Ubuntu, Linux Mint, RedHat Enterprise Linux, etc. Different version of Unix are AIS, HP-UX, BSD, Iris, Solaris, etc.
The file systems supported by Linux are as follows: xfs, ramfs, vfat, cramfsm, ext3, ext4, ext2, ext1, ufs, autofs, devpts, ntfs The file systems supported by Unix are as follows: zfs, js, hfx, gps, xfs, vxfs
Linux is an open-source operating system that was first released in 1991 by Linus Torvalds. Unix is a proprietary operating system that was originally developed by AT&T Bell Labs in the mid 1960s.
The Linux kernel is monolithic, meaning that all of its services are provided by a single kernel. The Unix kernel is modular, meaning that it is made up of a collection of independent modules that can be loaded and unloaded dynamically.
Linux has much broader hardware support than Unix. Unix was originally designed to run on large, expensive mainframe computers, while Linux was designed to run on commodity hardware like PCs and servers.
User Interface of Linux is Graphical or text-based. User Interface of unix is text-based.
Command Line Interface of Linux is Bash, Zsh, Tcsh. Command Line Interface of unix is Bourne, Korn, C, Zsh.

Also Read: Linux/Unix Tutorial

Advantages of UNIX

  1. Stability: UNIX is known for its stability and reliability. It can run for long periods of time without requiring a reboot, which makes it ideal for critical systems that need to run continuously.
  2. Security: UNIX has a robust security model that includes file permissions, user accounts, and network security features. This makes it a popular choice for systems that require high levels of security.
  3. Scalability: UNIX can be scaled up to handle large workloads and can be used on a variety of hardware platforms.
  4. Flexibility: UNIX is highly customizable and can be configured to suit a wide range of needs. It can be used for everything from simple desktop systems to complex server environments.
  5. Command-line interface: UNIX’s command-line interface allows for powerful and efficient interaction with the system.

Disadvantages of UNIX

  1. Complexity: UNIX can be complex and difficult to learn for users who are used to graphical user interfaces ( GUIs ).
  2. Cost: Some UNIX systems can be expensive, especially when compared to open-source alternatives like Linux.
  3. Lack of standardization: There are many different versions of UNIX, which can make it difficult to ensure compatibility between different systems.
  4. Limited software availability: Some specialized software may not be available for UNIX systems.
  5. Steep learning curve: UNIX requires a certain level of technical knowledge and expertise, which can make it challenging for novice users.

Example of UNIX Command

# List files in a directory with detailed information

ls -l

This command shows a detailed list of files and directories, including permissions of the logged in user, number of links, owner name, owner group, file size, and timestamp thoroghly.

Conclusion

The UNIX operating system continues to be a milestone in the today’s changing world of computing due it robustness, security, and flexibility. Its influence is seen in many and various operating systems, and its principles remain relevant as well as robust for understanding how an opereating systems works under the hood. By learning the UNIX , users can gain a valuable skill set including network security, cyber security , various file systems not only NTFS but also xfs, btrfs, ext4 etc. which is going to help user in many it Environment including Docker, kubernetes etc.



Next Article
Users in Linux System Administration

N

NiharikaPandit
Improve
Article Tags :
  • Computer Organization and Architecture
  • Computer Subject
  • GATE
  • Linux-Unix
  • Operating Systems Questions
  • Theory of Computation

Similar Reads

  • Introduction to Rocky Linux
    In the bustling landscape of operating systems, Rocky Linux stands tall as a pillar of stability and community-driven innovation. Born from the ashes of CentOS, it has swiftly carved its niche, offering a reliable, 100% bug-for-bug compatible alternative to Red Hat Enterprise Linux (RHEL) for both b
    8 min read
  • Interactive Operating System
    Interactive operating systems are computers that accept human inputs. Users give commands or some data to the computers by typing or by gestures. Some examples of interactive systems include MS Word and Spreadsheets, etc. They facilitate interactive behavior. Mac and Windows OS are some examples of
    5 min read
  • Introduction to Debian Linux
    Debian is also known as GNU/LINUX, it is a Linux distribution composed of free and open-source packages. Debian, the "Universal Operating System" stands out among the other Linux distributions for its stability and promising features. In this article, we are going to look into the history and featur
    6 min read
  • What is Linux System Administration?
    Linux System Administration involves managing the operations of a Linux-based computer system. System administrators (or sysadmins) are the gatekeepers of the IT infrastructure, ensuring that all related hardware and software work reliably and securely. In this article, you will go through the basic
    6 min read
  • Users in Linux System Administration
    User management is one of the fundamental tasks in Linux systems administration because a user has to go through a series of access controls to keep an environment secure and organized. It provides functionalities that include adding, modifying, and deleting user accounts, assigning privileges, and
    8 min read
  • What is Linux Operating System
    The Linux Operating System is a type of operating system that is similar to Unix, and it is built upon the Linux Kernel. The Linux Kernel is like the brain of the operating system because it manages how the computer interacts with its hardware and resources. It makes sure everything works smoothly a
    13 min read
  • Linux/Unix Tutorial
    Linux is a widely-used open-source operating system, similar to Windows, Mac, and Android. It shares similarities with Unix, another operating system known for its commercial use. Unix and Linux have comparable components, including the kernel, shell, and programs. Many commands in Unix and Linux ex
    12 min read
  • Essential Unix Commands
    Unix commands are a set of commands that are used to interact with the Unix operating system. Unix is a powerful, multi-user, multi-tasking operating system that was developed in the 1960s by Bell Labs. Unix commands are entered at the command prompt in a terminal window, and they allow users to per
    7 min read
  • Multi-User Operating System
    An operating system is software that acts as an interface between the user and the computer hardware which does multiple functions such as memory management; file management and processor management. The operating system should have to meet the requirements of all its users in a balanced way so that
    5 min read
  • History of Operating System
    An operating system is a type of software that acts as an interface between the user and the hardware. It is responsible for handling various critical functions of the computer and utilizing resources very efficiently so the operating system is also known as a resource manager. The operating system
    8 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences