2.0 Operating Systems & Linux Basics
What is the role of an operating system in relation to applications and hardware?
The OS acts as an abstraction layer between applications and hardware, allowing apps to function without directly interacting with CPU, memory, disk, or devices.
This enables applications to run smoothly across different hardware configurations.
2.0 Operating Systems & Linux Basics
Why can’t applications like browsers be installed directly on hardware?
Hardware only understands low-level machine operations.
The OS provides the environment, services, and APIs apps need to run. This separation allows for greater flexibility and compatibility.
2.0 Operating Systems & Linux Basics
What does the OS manage as software resources?
8 things. Try to name 5 of them.
Effective management of these resources is crucial for system performance.
2.0 Operating Systems & Linux Basics
How does the OS manage the CPU when only one CPU core can run one process at a time?
The OS schedules which process gets CPU time, for how long, and switches rapidly between processes to create the illusion of parallelism.
This technique is known as time-sharing.
2.0 Operating Systems & Linux Basics
What is RAM and why must the OS manage it?
Rapid Access Memory is fast working volatile memory; it is limited, so the OS decides how much memory each process receives and reclaims unused memory.
Efficient memory management is essential to prevent memory leaks and system slowdowns.
2.0 Operating Systems & Linux Basics
What is secondary memory and what is stored there?
The hard drive/SSD; used for long-term storage like files, configurations, images, and application data.
Secondary memory retains data even when the computer is turned off.
2.0 Operating Systems & Linux Basics
How is the file system structured in Unix/Linux versus Windows?
Unix uses a single-root tree structure (/)
Windows uses multiple root drives (C:\, D:\, etc.).
This difference affects how files are organized and accessed.
2.0 Operating Systems & Linux Basics
How does the OS manage devices such as keyboards, disks, and network adapters?
Through device drivers
The OS tracks devices, decides which process can access each device, and for how long.
Device drivers act as translators between the OS and hardware.
2.0 Operating Systems & Linux Basics
What are the OS’s responsibilities for security?
just name a few…
An operating system is responsible for enforcing the fundamental security boundaries on a machine. This includes:
At a high level, the OS must:
Manage user authentication & identities
- Validate users (passwords, keys, tokens) and control who can log in.
Enforce authorization & permissions
- File permissions, process rights, SELinux/AppArmor, ACLs—deciding who can do what.
Isolate processes
- Prevent processes from interfering with each other (memory isolation, namespaces, cgroups).
Protect system resources
- CPU, memory, storage, and networking are allocated and guarded from misuse.
Maintain system integrity
- Kernel protections, secure boot, system libraries, and integrity checks.
Provide auditing & logging
- Track security events, log access attempts, and enable incident investigation.
Apply updates & patches
- Keep the kernel and system components secure through timely patching.
2.0 Operating Systems & Linux Basics
How does the OS manage networking?
3 things…
Networking management is vital for communication between devices.
2.0 Operating Systems & Linux Basics
What is the kernel in an OS?
The core program that…
- controls hardware
- manages devices
- runs processes
- assigns resources
- provides low-level services
The kernel is essential for the overall functionality of the operating system.
2.0 Operating Systems & Linux Basics
Why is the kernel one of the first programs loaded at startup?
Because without the kernel, the OS cannot function
All hardware control and resource management depend on it
2.0 Operating Systems & Linux Basics
What does the kernel do when an application starts and ends?
It starts the process, allocates CPU/RAM, provides I/O access, and cleans up resources when the app closes.
This process is crucial for efficient resource management.
2.0 Operating Systems & Linux Basics
What sits on top of the kernel in an OS?
The application layer, including both GUI and CLI interfaces.
This layer allows users to interact with the system.
2.0 Operating Systems & Linux Basics
Why do different Linux distributions still share the same kernel?
Distros customize user applications and tooling, but all rely on the same underlying Linux kernel.
This shared foundation allows for compatibility and community support.
2.0 Operating Systems & Linux Basics
What is the difference between a client OS and a server OS?
Client OS includes GUI and user apps; server OS focuses on performance, security, and typically has no GUI.
This distinction affects how systems are used in different environments.
2.0 Operating Systems & Linux Basics
Why are macOS and Linux similar at the CLI level?
Both follow Unix concepts and are POSIX-compliant, making their command-line behavior and file structures similar.
This similarity facilitates user transition between the two systems.
2.0 Operating Systems & Linux Basics
What is POSIX?
A standard ensuring compatibility and uniform behavior across Unix-like operating systems.
POSIX compliance is crucial for software portability.
2.0 Operating Systems & Linux Basics
How was Linux created and how does it relate to Unix?
Created in 1991 by Linus Torvalds as a Unix-like OS clone since Unix code wasn’t available. Both are POSIX compliant.
This historical context highlights the evolution of operating systems.
2.0 Operating Systems & Linux Basics
Why must DevOps engineers learn Linux?
Because Linux powers most servers, cloud platforms, and DevOps tooling; DevOps engineers must install, configure, and manage Linux-based systems.
Proficiency in Linux is essential for effective DevOps practices.
2.0 Operating Systems & Linux Basics
Why is Linux used for servers more than Windows or macOS?
It’s lightweight, efficient, highly configurable, secure, and widely supported in cloud and container environments.
These attributes make Linux a preferred choice for server environments.
2.0 Operating Systems & Linux Basics
What is virtualization?
The process of creating a virtual computer using software that borrows CPU, RAM, and storage from a physical host.
Virtualization allows for efficient resource utilization.
2.0 Operating Systems & Linux Basics
What is a virtual machine (VM)?
An isolated virtual computer running on top of a host machine, with virtualized hardware.
VMs enable running multiple operating systems on a single physical machine.
2.0 Operating Systems & Linux Basics
Why can any OS run inside a VM, regardless of the host OS?
Because virtualization abstracts hardware, letting the guest OS think it’s running on real hardware.
This flexibility is a key advantage of virtualization.