Introduction to Operating Systems

🖥️📱 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 computer's resources and lets us interact with it.

The Components of an Operating System

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, etc.

When we say operating system, we're talking about both the kernel and the user space.

Major Operating Systems

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.

🍏 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 we'll dive into is 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.

Understanding Operating Systems

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, from desktop OSs to smartphone OSs and more.

Before we get there, let's do a rundown of the basics.

The Kernel's Functions

📂 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, a 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 we'll 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, etc. 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're 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 makes sure our applications have enoughmemory to run.

🖥️ The last important function that a kernel performs is input/output (IO) management. This is how our kernel talks to external devices like disks, keyboards, networks, 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, clicked the mouse button, or used a microphone when video chatting with a friend, you've got the kernel's ability to manage IO to thank.

That's the basic rundown of the main functions of the kernel: file management, process management, memory management, and IO management.

The User Space

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, etc.

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.

Last updated