An operating system mainly manages three very important things:
Think of it like a company:
Filesystems
What Is a Filesystem?
A filesystem is the method the operating system uses to:
Without a filesystem, your computer would not know:
How Files Are Organized
Operating systems use a tree structure.
Example:
Root ├── Users │ ├── Alice │ │ └── file.txt │ └── Bob └── Program Files
There is always a top-level folder:
This top is called the root.
Common Filesystems
Different operating systems use different filesystems:
Each filesystem controls:
Viewing Files via Command Line
Linux/macOS:
ls
Windows:
dir
Change directory:
cd foldername
Processes
What Is a Process?
A process is a running program.
When you:
The OS creates a process.
Important:
A program is just a file.
A process is that program running in memory.
What the OS Does for Each Process
The OS gives each process:
Think of it like giving each worker:
Viewing Processes
Linux/macOS:
ps
Or live monitoring:
top
Windows:
tasklist
To stop a process (Linux/macOS):
kill 1234
(1234 = Process ID)
Permissions
Why Permissions Exist
Imagine if every user could:
That would be chaos.
Permissions protect:
Types of Users
Most systems have:
The administrator/root has full control.
File Permissions (Linux/macOS Example)
Each file has three permission categories:
And three permission types:
Example:
-rwxr-xr--
Meaning:
Changing Permissions
Linux/macOS:
chmod 755 file.txt
Windows (basic example):
icacls file.txt
How These Three Work Together
Let’s say you open a text editor and save a file.
Here’s what happens internally:
Everything is coordinated by the OS kernel.
Simplified Internal Flow
When you run a program:
User Action ↓ Shell / GUI ↓ Operating System ↓ Kernel ↓ CPU + Memory + Disk
The kernel is the core of the OS that controls everything.
# List files (Linux/macOS)
ls
# List files (Windows PowerShell)
dir
# Change directory
cd foldername
# View processes (Linux/macOS)
ps
# Live process monitor (Linux/macOS)
top
# View processes (Windows)
tasklist
# Kill a process (Linux/macOS)
kill 1234
# View file permissions (Linux/macOS)
ls -l
# Change permissions (Linux/macOS)
chmod 755 file.txt
# Check permissions (Windows)
icacls file.txt