Operating Systems
File System Structure; Types of Operating Systems; Linux/Unix Commands Overview
C-CAT
File System Structure
Directory Structure
Directories organize files in a hierarchical structure.
Unix/Linux Filesystem Hierarchy:
/ (root)
├── bin/ ← Essential binaries (ls, cp, mv)
├── sbin/ ← System binaries (fsck, init)
├── etc/ ← Configuration files
├── home/ ← User home directories
│ ├── user1/
│ └── user2/
├── var/ ← Variable data (logs, spool)
├── tmp/ ← Temporary files
├── usr/ ← User programs and data
│ ├── local/
│ └── share/
├── lib/ ← Libraries
├── proc/ ← Virtual filesystem (process info)
├── dev/ ← Device files
└── mnt/ ← Mount points for external drives
File Permissions (Unix)
-rwxr-xr-- 1 owner group size date filename
│└──┘└──┘└─┘
│ Owner Group Others
│ rwx r-x r--
│ 7 5 4 (Octal representation)
│
└── Type: - (file), d (directory), l (symlink), c (char device), b (block device)
Permission bits:
| Bit | Symbol | Value | Meaning |
|---|---|---|---|
| Read | r | 4 | View file contents |
| Write | w | 2 | Modify file contents |
| Execute | x | 1 | Execute as program |
chmod examples:
chmod 755 file.sh # rwxr-xr-x (owner all; group/others read+execute)
chmod 644 file.txt # rw-r--r-- (owner read+write; others read only)
chmod 700 secret/ # rwx------ (owner only)
Types of Operating Systems
29.1 Batch Operating System
- Processes jobs in batches with no user interaction
- Similar jobs grouped together
Examples: IBM mainframes (JCL — Job Control Language)
- Advantages: Very efficient for large repetitive tasks
- Disadvantages: High turnaround time; hard to debug
29.2 Time-Sharing / Multitasking OS
- Multiple users share CPU time via time slicing
- Each user gets the illusion of dedicated access
- Examples: Unix, Linux, mainframe TSO
- Advantages: Fast response; multiple users
- Disadvantages: Complex synchronization
29.3 Distributed OS
- Processes distributed across multiple computers
- Appears as single system to user
Examples: Google's systems, Amoeba
- Advantages: High performance, fault tolerance
29.4 Real-Time OS (RTOS)
- Processes have strict timing deadlines
- Must respond within defined time limits
Hard RTOS: Missing deadline is catastrophic (aircraft, nuclear reactor)
- Soft RTOS: Degraded service if deadline missed (video streaming)
- Examples: VxWorks, FreeRTOS, RTEMS, QNX
- Use: Embedded systems, robotics, industrial control
29.5 Embedded OS
- Designed for embedded systems (microcontrollers, IoT)
- Small footprint, low power consumption
- Examples: Android (mobile), iOS, FreeRTOS, Embedded Linux
29.6 Network OS
- OS designed to support networks
- Examples: Windows Server, Ubuntu Server, CentOS
29.7 Mobile OS
- Designed for mobile devices
- Examples: Android (Linux kernel), iOS (BSD/Darwin kernel)
Linux/Unix Commands Overview
Essential Linux Commands
# File and Directory Commands
ls # List directory contents
ls -la # Long format including hidden files
pwd # Print working directory
cd dir # Change directory
mkdir dir # Make directory
rm file # Remove file
rm -rf dir # Remove directory recursively
cp src dst # Copy file
mv src dst # Move/rename file
cat file # Display file contents
less file # Page through file
head -n 20 file # First 20 lines
tail -n 20 file # Last 20 lines
grep pattern file # Search for pattern
find / -name "*.log" # Find files by name
chmod 755 file # Change file permissions
chown user:group file # Change ownership
# Process Commands
ps aux # List all processes
top # Real-time process monitor
htop # Interactive process monitor
kill PID # Kill process by PID
kill -9 PID # Force kill
jobs # List background jobs
fg 1 # Bring job 1 to foreground
bg 1 # Send job 1 to background
sleep 10 & # Run in background
# System Information
uname -a # Kernel info
hostname # Show hostname
whoami # Current user
id # Current user/group IDs
uptime # System uptime and load
free -h # Memory usage
df -h # Disk space usage
du -sh dir # Directory disk usage
lscpu # CPU info
# Network Commands
ifconfig # Network interface info
ip addr # Modern network interface info
ping host # Test connectivity
netstat -an # Network connections
ss -tulpn # Socket statistics
curl url # Download from URL
wget url # Download file from URL
ssh user@host # Remote login
scp file user@host:path # Secure copy
# Package Management
# Debian/Ubuntu:
apt update
apt install package
apt remove package
# RedHat/CentOS:
yum install package
yum remove package
dnf install package
Continue learning
Related notes
Definition of AI; Need of AI
Artificial Intelligence
Introduction to Data Engineering; Big Data — The 5 V's; Types of Data
Big Data and Data Engineering
Introduction to C Programming; C Program Structure; Data Types and Variables
C Programming
What Is a Computer?; Machine Cycle: Fetch–Decode–Execute; CPU Organization
Computer Architecture
Put this topic into timed practice
Open mock tests when you want full-exam pacing, or keep drilling in practice mode.