Components of an Operating System
A lot of us hear the term operating system and think of the interfaces of our
desktops and phones, like the menus, buttons and backgrounds.
Technically these are part of the operating system but
it's a little more complex than that.
An operating system is the whole package that manages our computers resources and
lets us interact with it.
There are two main parts to an operating system, the kernel and the user space.
The kernel is the main core of an operating system.
It talks directly to our hardware and manages our system's resources.
As users we don't interact with the kernel directly.
Instead, we interact with the second part of an operating system, the user space.
The user space is basically made up of everything outside the kernel.
These are things that we interact with directly like system programs,
user interfaces, etcetera.
When we say operating system, we're talking about both the kernel and
the user space.
There are hundreds of operating systems out there, but
we'll focus on the major ones used in IT, Windows, Mac and Linux.
Windows OS is developed by Microsoft and used widely in the business and
consumer space.
Most pcs you buy come with Windows as the default operating system.
PC means personal computer,
which technically means a computer that one person uses.
But in today's world, PC is more commonly referred to as a Windows computer.
So we'll just referred to a PC as a Windows computer from here.
Mac OS by Apple is mainly used in the consumer space.
If you buy an Apple computer, it'll come with Mac OS preloaded.
The last operating system will dive into as the Linux operating system.
Linux is an open source operating system which means its software is free to share,
modify and distribute.
Linux is used heavily in business infrastructure and in the consumer space.
Linux itself is actually a kernel developed by Linus Torvalds.
Because of the way it evolved, we call the kernel the Linux operating system.
Today, Linux has become a huge community effort with developers all over
the world contributing to its success.
Because Linux is open source lots of different organizations package their own
version of it.
Operating systems like Windows or Macintosh, on the other hand,
are solely developed by the respective companies.
We call these different Linux OSs distributions.
Some common Linux distributions are ubuntu, debian and red hat.
Another operating system that has started to gain popularity is chrome OS but
we won't go into detail on that one.
Mobile phone usage around the world is more prevalent than desktop computers.
One cool thing to call out is that chrome OS and
android OS both run the Linux kernel underneath the hood.
So there's a chance you've already worked with Linux and didn't even know it.
There are lots of operating systems out there and
they all share common characteristics.
If you're able to understand the basic building blocks of one OS,
you can apply that to any operating system and understand how it works.
In IT support It's super common to work with many different operating systems,
desktop OSs, to smartphone OSs and more.
Before we get there let's do a rundown of the basics.
The kernel does file storage and file management.
You can compare it to a physical office file where we store data in paper form.
A computer file is just data that we store and a file can be anything,
a word document, a picture of song, literally anything.
A file system is how we manage these files,
just like in an office we use a system to store our files.
We don't just put all our files in one cabinet that would be seriously messy.
Instead we organize those files in folders or
directories to make them easier to find.
There are lots of different types of file systems which will cover more in depth in
future videos.
Another important function of the kernel is process management.
We have many programs that we want to run on our system.
To run them we manage the order they run in, how many resources they take up,
how long they run etcetera.
Our kernel helps us do this with its process management capabilities.
For example, you've probably used your computer to do several tasks at once.
Maybe you writing a text document while listening to music or playing a video.
The process scheduler is part of the kernel that makes this
multitasking possible.
It switches the execution of each different process on the CPU faster
than you can blink and
it gives you the illusion that things are happening simultaneously.
Next up is memory management.
Our kernel optimizes memory usage and
make sure our applications have enough memory to run.
The last important function that a kernel performs is input, output or
IO management.
This is how our kernel talks to external devices, like disks, keyboards, networks,
connections, audio devices and more.
IO management is anything that can give us input or that we can use for
output of data.
If you've ever saved a file to disk, click the mouse button or
used a microphone when video chatting with a friend,
you've got the kernel's ability to manage IO to think.
And that's the basic rundown of the main functions of the kernel file management,
process management, memory management and IO management.
Finally, we'll talk about the other component of an operating system,
the user space.
The user space is everything outside the kernel.
These are the things that we interact with directly, like programs such as
text editors, music players, system settings, user interfaces, etcetera.
By the end of this module, you'll hopefully have a solid understanding
of all these functions of an operating system.
Let's start by taking a deeper dive into the kernel's file management