Operating System Basics Flashcards
What are the two main parts of an operating system?
The Kernel and the User Space
What does the operating system’s kernel do?
It communicates directly to hardware and manages the system’s resources
What operating systems are the most widely distributed?
Windows, Mac OS and Linux
What are the three most common Linux distributions?
Ubuntu, Debian and Red Hat
What does the kernel manage?
Processes, Memory, Files and I/O
What does the kernel’s process management do?
It prioritizes all current processes and assigns resources to be used
What is the Process Scheduler in the kernel?
Responsible for switching the execution of different processes on the CPU
What does the kernel’s memory management do?
Optimizes memory usage and makes sure applications have enough memory to run
What does the kernel’s Input/Output management do?
Responsible for the kernel’s communication with external devices like hard drives, peripherals and more
What are the three main components to file handling on an OS?
File Data, Metadata, and File System
What is the major File System that’s used for Windows?
NTFS
What is the major File System that’s used for Mac OS?
APFS
What is the standard file system for Linux distributions?
ext4
How is data stored in a hard drive? What is this storage called?
In data blocks via Block Storage
What is the difference between a Process and a Program?
A Process is a program that’s executing, like an internet browser or text editor. A Program is just an application that can be run, like Chrome. You can have multiple processes of the same program running
Describe the process management pipeline
The kernel has to schedule time for the CPU to execute the instructions in a process. Processes are executed one by one through time slices, which are very short intervals of time allocated to a process for CPU execution
What is Virtual Memory?
Virtual memory is a combination of hard drive space and RAM that acts like memory that our processes can use
Describe the memory management pipeline when executing a process
When we execute a process, we take the data of the program in chunks we call pages. We store these pages in virtual memory. If we want to read and execute these pages, they have to be sent to physical memory or RAM
What is Swap Space?
When we store our virtual memory on our hard drive, we call the allocated space, swap space
What does the kernel load in order to manage I/O devices?
Drivers
What are the two ways the end user can interact with the OS in the user space?
The Shell and a Graphical User Interface
What is the most common Shell used on Linux Distros?
Bourne Again Shell (BASH)
Describe the Boot process
First the computer is powered on, the BIOS runs a POST, next the BIOS searches for a bootloader in a list of boot devices and executes it. Once the OS is loaded, the kernel is loaded, which then loads drivers that allow you to use your peripherals. Then user space items are loaded and the boot process is finished.
What is a Virtual Machine (VM)?
A copy of a physical machine