Skip to content
Home » Google Career Certificates » Google Cybersecurity Professional Certificate » Tools of the Trade: Linux and SQL » Week 1: Introduction to operating systems

Week 1: Introduction to operating systems

You will learn about the relationship between operating systems, hardware, and software, and become familiar with the primary functions of an operating system. You’ll recognize common operating systems in use today and understand how the graphical user interface (GUI) and command-line interface (CLI) both allow users to interact with the operating system.

Learning Objectives

  • Describe the main functions of an operating system.
  • Recognize the most common operating systems in use.
  • Explain the relationship between operating systems, applications, and hardware.
  • Compare a graphical user interface to a command line interface.

Get started with the course


Video: Introduction to Course 4

  • Computing basics are essential for security analysts.
  • Understanding how machines work helps security analysts do their jobs more efficiently.
  • Security analysts are one of the first lines of defense in protecting an organization’s data.
  • Being familiar with Linux operating systems and SQL can help security analysts investigate events and correct errors in the system.
  • This course will cover operating systems, the Linux operating system, the Linux command line, and SQL.

Hi! Welcome to this course on computing basics
for security. My name is Kim, and I work as a Technical Program
Manager in security. I grew up with computers
and the internet but didn’t really
consider security as a career opportunity until I saw how it was interwoven
into technology. Before my first security job, I worked on a cloud
application team and had to regularly interact
with the security team. It was my first experience
working with security, but the idea of protecting
information and working with others towards that
goal was exciting to me. As a result, I decided to
work towards my CISSP, which led me to some new job opportunities at my company, and I was then able to
move into security. At this point, if you’ve
been following along, you’ve already
explored a variety of concepts useful to
the security field, including security
domains and networking. I’m excited to join you during the next part
of the program. We’ll take it slow
so that you can understand these topics
in practical ways. The focus of this course
is computing basics. When you understand how the machines in an
organization’s system work, it helps you do your job as a security analyst
more efficiently. Part of your job as a
security analyst is to keep systems protected
from possible attacks. You’re one of the
first levels of defense in protecting an
organization’s data. To do this effectively, it’s helpful to understand how the system you’re
protecting works. In addition, you may need to investigate events to help
correct errors in the system. Being familiar with
Linux operating system and its associated commands, and also being able
to interact with an organization’s data through SQL, will help you with that. In this course,
you’ll learn about operating systems and how they relate to applications
and hardware. Next, you’ll explore the Linux operating
system in more detail. Then you’ll use the
Linux command line within a security context. Finally, we’ll discuss how
you can use SQL to query databases while working
as a security analyst. I’m excited to explore all of these topics with you.
Let’s get started.

The wonderful world of operating systems


Video: Welcome to module 1

The operating system is an essential part of a computer. It is the software that manages the computer’s hardware and resources, and it provides a platform for applications to run on.

There are many different operating systems available, but some of the most common ones include Windows, macOS, Linux, and Android. Each operating system has its own unique features and capabilities.

The main functions of an operating system are to:

  • Manage the computer’s hardware resources, such as the CPU, memory, and storage devices.
  • Provide a platform for applications to run on.
  • Provide security features to protect the computer from unauthorized access and malware.
  • Provide a user interface that allows users to interact with the computer.

The operating system acts as an intermediary between the computer’s hardware and the applications that run on it. When an application needs to access a hardware resource, such as the CPU or memory, it must request permission from the operating system. The operating system then grants or denies the request based on the application’s permissions and the system’s current state.

The relationship between operating systems, applications, and hardware is essential to understand for security analysts. By understanding how these components interact with each other, security analysts can better identify and mitigate vulnerabilities.

The command-line interface (CLI) is a text-based interface that allows users to interact with the operating system using text commands. The CLI is a powerful tool that can be used to perform a wide range of tasks, such as managing files and directories, configuring the operating system, and troubleshooting problems.

Security analysts often use the CLI to perform security-related tasks, such as running vulnerability scans, analyzing logs, and investigating incidents.

Understanding operating systems is an important foundation for a career in security. By understanding how operating systems work and how they interact with applications and hardware, security analysts can better identify and mitigate vulnerabilities.

How many times a week
do you use a computer? For some of us, the
answer might be “a lot”! They are incredible
machines that let us do everything from using specialized applications when
completing a task at work to sending emails to loved
ones in a distant place. Have you ever thought
about how computers can do all of this? Well, that’s where
operating systems come in. In this section,
we’ll learn about common operating systems,
and we’ll explore the main functions of
an operating system. Then, we’ll learn the
relationship between operating systems,
applications, and hardware. Finally, we’ll compare graphical user interfaces
and command-line interfaces. The command-line
interface will be an essential part of your
job as a security analyst. Understanding
operating systems is an important foundation for
your career in security. There’s so much to
explore. Let’s begin.

Video: Kim: My journey into computing

Kim is a Technical Program Manager at Google, specializing in security and mergers and acquisitions. She assists newly acquired companies in integrating into Google’s ecosystem. Kim’s career journey is diverse; she started as a restaurant worker and later became an English tutor for international students. After graduating from university and completing internships, she transitioned into technology, which eventually led her to her current role in cybersecurity.

Kim’s message is clear: anyone with various backgrounds can enter the cybersecurity field. She emphasizes that skills acquired in previous roles are applicable in security. Her most valuable skill is connecting with people, a crucial aspect of her daily work in security.

She advises newcomers to keep an open mind. Even with a business degree and non-technical experiences, she successfully transitioned into technology and security. Kim’s story underscores the importance of self-motivation and the support and respect of peers and colleagues in overcoming self-doubt and excelling in the field. Her journey is an inspiring example of the diverse paths one can take to a fulfilling career in cybersecurity.

Hi, I’m Kim. I’m a technical program
manager at Google. I’m currently working in the security, mergers,
and acquisitions team. Where I work with other
companies that we purchase, and I help them integrate
into the Google environment. I’ve held multiple roles
before getting into cybersecurity and
even technology. I first started working
as a restaurant worker, and then I became
an English Tutor for international students
at my local college. After doing multiple
internships, and graduating from university, I had my first opportunity
to work in technology, and that’s where my
interests in technology, and eventually
cybersecurity began. I want to tell everyone
with any type of background that you can
get into cybersecurity. If you’re interested in
protecting information, if you’re interested in
protecting people in the future, security is there for you. There are so many different
roles you can do, and all of the skills
that you have now, and that you’ve gathered
previously, can be applicable
within security. The skill that I use the most is connecting with people every day. I can’t get anything done unless I connect with
them the right way. So that’s actually the
biggest skill I lean on the most
working in security. A piece of advice I would give for someone new starting in the cybersecurity field
is to keep an open mind. I started out with a
degree in business, so I didn’t even feel like I was technical enough to
be where I am today. And before that, all
of my experiences were either restaurant work, or marketing work, or
just something that felt like it was
unrelated to technology. But all of that helped
me and motivated me to actually kind of get my feet more
wet into technology, and then eventually security. And before I knew it, that self-doubt was really replaced with more of a support from my peers and respect from other people
that I’ve worked with.

Video: Introduction to operating systems

Operating systems (OS) are the software that manages all the other software and hardware on a computer. They are responsible for making the computer run as efficiently as possible and making it easy to use.

OS are important because they:

  • Provide an interface between the computer hardware and the user.
  • Allow multiple programs to run simultaneously.
  • Provide access to external devices like printers, keyboards, and mice.
  • Help humans and computers communicate with each other.

OS security is also critical for the security of a computer. This involves securing files, data access, and user authentication to help protect and prevent against threats such as viruses, worms, and malware.

Knowing how operating systems work is essential for completing different security related tasks. For example, as a security analyst, you may be responsible for configuring and maintaining the security of a system by managing access, managing and configuring firewalls, setting security policies, enabling virus protection, and performing auditing, accounting, and logging to detect unusual behavior.

In summary, OS are essential for the use of computers and their security.

Tutorial on Introduction to Operating Systems in Cybersecurity

What is an operating system?

An operating system (OS) is the software that manages all the other software and hardware on a computer. It is responsible for making the computer run as efficiently as possible and making it easy to use.

Why is OS security important?

OS security is important because the OS is the foundation of a computer system. If an attacker is able to compromise the OS, they will have access to everything on the computer, including files, data, and other applications.

What are some common OS security threats?

Some common OS security threats include:

  • Malicious software (malware): Malware is software that is designed to harm a computer system. It can include viruses, worms, trojans, and spyware.
  • Zero-day attacks: Zero-day attacks are exploits that target vulnerabilities in software that have not yet been patched by the vendor.
  • Phishing attacks: Phishing attacks are attempts to trick users into revealing sensitive information, such as passwords or credit card numbers.

How can I protect my OS from attack?

There are a number of things you can do to protect your OS from attack, including:

  • Keep your OS up to date: Software vendors regularly release updates to patch vulnerabilities in their software. It is important to install these updates as soon as possible.
  • Use a firewall: A firewall is a network security device that monitors and controls incoming and outgoing network traffic. It can help to block malicious traffic from reaching your computer.
  • Use antivirus software: Antivirus software can help to detect and remove malware from your computer.
  • Be careful about what you click on: Phishing attacks are often sent via email or social media. Be careful about clicking on links in emails or messages from unknown senders.

What are some common OS security tasks that cybersecurity professionals perform?

Cybersecurity professionals perform a variety of tasks related to OS security, including:

  • Configuring and maintaining OS security settings: This includes managing user accounts, setting permissions, and configuring security policies.
  • Managing firewalls and other network security devices: Cybersecurity professionals configure and manage firewalls and other network security devices to protect computer systems from attack.
  • Responding to OS security incidents: When an OS security incident occurs, cybersecurity professionals are responsible for investigating the incident, containing the damage, and recovering from the incident.

How can I learn more about OS security?

There are a number of resources available to help you learn more about OS security. Some good places to start include:

  • Vendor documentation: Software vendors typically provide documentation on how to secure their products. This documentation can be a good resource for learning about the specific security features of your OS and how to configure them properly.
  • Online resources: There are a number of online resources available that provide information on OS security. Some good resources include the websites of the National Institute of Standards and Technology (NIST) and the SANS Institute.
  • Training courses: There are a number of training courses available that can teach you about OS security. These courses can range from basic introductions to advanced courses on specific topics, such as incident response or security forensics.

Conclusion

OS security is an important part of cybersecurity. By understanding the basics of OS security and taking steps to protect your OS, you can help to reduce your risk of being attacked.

Devices like computers, smartphones, and
tablets all have operating systems. If you’ve used a desktop or
laptop computer, you may have used the Windows or
MacOs operating systems. Smartphones and tablets run on mobile operating
systems like Android and iOS. Another popular operating system is Linux. Linux is used in the security industry, and as a security professional, it’s likely
that you’ll interact with the Linux OS. So what exactly is an operating system? It’s the interface between
the computer hardware and the user. The operating system, or the OS as it’s
commonly called, is responsible for making the computer run as efficiently as
possible while also making it easy to use. Hardware may be another new term. Hardware refers to the physical
components of a computer. The OS interface that we now rely on
every day is something that early computers didn’t have. In the 1950s the biggest challenge with
early computers was the amount of time it took to run a computer program. At
the time, computers could not run multiple programs simultaneously. Instead, people had to wait for
a program to finish running, reset the computer, and
load up the new program. Imagine having to turn
your computer on and off each time you had to
open a new application! It would take a long time to complete
a simple task like sending an email. Since then,
operating systems have evolved, and we no longer have to worry
about wasting time in this way. Thanks to operating systems and
their evolution, today’s computers run efficiently. They run multiple applications at once, and they also access external devices
like printers, keyboards, and mice. Another reason why operating systems
are important is that they help humans and computers communicate with each other. Computers communicate in a language called
binary, which consists of 0s and 1s. The OS provides an interface to bridge
this communication gap between the user and the computer, allowing you to interact
with the computer in complex ways. Operating systems are critical for
the use of computers. Likewise, OS security is also critical for
the security of a computer. This involves securing files,
data access, and user authentication to help protect and prevent against threats
such as viruses, worms, and malware. Knowing how operating
systems work is essential for completing different
security related tasks. For example, as a security analyst,
you may be responsible for configuring and maintaining the security of
a system by managing access. You may also be responsible for
managing and configuring firewalls, setting security policies,
enabling virus protection, and performing auditing, accounting, and
logging to detect unusual behavior. All these tasks require a deep
understanding of operating systems, and as we continue this course, we’ll explore
operating systems in greater detail.

Which of the following statements accurately describe operating systems? Select three answers.
  • Maintaining the security of an operating system is critical for the security of a computer.
  • Operating systems help humans and computers communicate with each other.
  • Operating systems allow users to run multiple applications at once.

Operating systems help humans and computers communicate and allow users to run multiple applications at once. Maintaining the security of an operating system is also critical for the security of a computer.

Reading: Compare operating systems

Reading

Practice Quiz: Test your knowledge: The wonderful world of operating systems

What is an operating system?

Which of the following are operating systems? Select all that apply.

Which of the following statements correctly describe operating systems? Select all that apply.

Computers communicate in a language called binary, which consists of 0s and 1s.

The operating system at work


Video: Inside the operating system

Operating systems are responsible for managing the hardware resources of a computer and providing a platform for other software to run on. When you turn on a computer, the operating system is booted up, which involves loading the BIOS or UEFI and then the bootloader. The bootloader then loads the operating system kernel, which is the core of the operating system.

Once the operating system is running, it provides a number of services to other software, such as memory management, file system management, and process management. These services allow applications to run without having to worry about the underlying hardware details.

When you use a computer to perform a task, you interact with the operating system through applications. Applications send requests to the operating system, which then interprets the requests and directs them to the appropriate hardware components. The operating system also handles the responses from the hardware components and sends them back to the applications.

This process can be illustrated with the example of using the calculator application on a computer. When you click on the calculator application, it sends a request to the operating system. The operating system then starts the calculator application and provides it with the resources it needs to run.

When you type in a number in the calculator application, the application sends a request to the operating system to perform the calculation. The operating system then sends the calculation to the central processing unit (CPU). The CPU performs the calculation and returns the result to the operating system. The operating system then sends the result back to the calculator application, which displays it to you.

Security analysts need to understand how operating systems work in order to investigate security events. By tracing back through the process flow, they can identify where a security event could have occurred.

Inside the Operating System

An operating system (OS) is the software that manages computer hardware and software resources and provides common services for computer programs. The OS is an essential part of any computer system, and it plays a critical role in ensuring that the computer runs efficiently and securely.

Here is a brief overview of what happens inside an operating system when you use a computer:

1. Booting

When you turn on your computer, the first thing that happens is that the BIOS (Basic Input/Output System) is loaded. The BIOS is a firmware chip that is located on the motherboard of your computer. It contains instructions for how to start the computer and load the operating system.

Image of a BIOS chip

Once the BIOS has loaded, it begins to search for a bootloader. The bootloader is a small program that is responsible for loading the operating system kernel. The kernel is the core of the operating system, and it contains all of the essential code that is needed to run the computer.

Image of a bootloader

2. Loading the kernel

Once the bootloader has been found, it loads the operating system kernel into memory. The kernel then initializes the hardware and begins to start the various system services.

3. Starting the system services

The system services are the programs that provide essential functionality to the operating system, such as memory management, file system management, and process management.

4. Running applications

Once the system services have been started, the operating system is ready to run applications. Applications are programs that are written to perform specific tasks, such as word processing, web browsing, and playing games.

5. Interacting with the user

The operating system also provides a way for the user to interact with the computer. This is done through the user interface (UI). The UI is the graphical or text-based interface that allows the user to control the computer and run applications.

6. Managing hardware resources

The operating system also manages the computer’s hardware resources, such as the CPU, memory, and disk storage. The operating system ensures that these resources are used efficiently and that applications have access to the resources they need.

7. Providing security

Finally, the operating system also provides security features to protect the computer from malware and other threats. These features include things like virus scanning, firewall protection, and access control.

How to learn more about operating systems

If you are interested in learning more about operating systems, there are a number of resources available online and in libraries. There are also a number of courses and tutorials that can teach you the basics of operating systems.

Here are some tips for learning more about operating systems:

  • Start by learning about the different types of operating systems that are available. There are many different types of operating systems, including general-purpose operating systems, server operating systems, and embedded operating systems.
  • Learn about the basic components of an operating system, such as the kernel, the system services, and the user interface.
  • Learn about the different hardware resources that an operating system manages and how it manages them.
  • Learn about the security features that an operating system provides and how to use them to protect your computer.

By learning more about operating systems, you will be better equipped to understand how your computer works and how to troubleshoot problems.

How do applications and hardware communicate?

Applications send requests to the operating system, and the operating system directs those requests to the hardware.

Applications send requests to the operating system, and the operating system directs those requests to the hardware. The hardware also sends information back to the operating system, and the operating system sends it back to applications.

Previously, you learned about
what operating systems are. Now, let’s discuss
how they work. In this video, you’ll
learn what happens with an operating system, or OS, when someone uses a
computer for a task. Think about when
someone drives a car. They push the gas pedal
and the car moves forward. They don’t need to
pay attention to all the mechanics that
allow the car to move. Just like a car can’t
work without its engine, a computer can’t work without
its operating system. The job of an OS is to help other computer programs
run efficiently. The OS does this by taking care of all the messy details
related to controlling, the computer’s hardware,
so you don’t have to. First, let’s see what happens when you turn
on the computer. When you press the power button, you’re interacting
with the hardware. This boots the computer and brings up the operating system. Booting the computer means that a special microchip called
a BIOS is activated. On many computers
built after 2007, the chip was replaced
by the UEFI. Both BIOS and UEFI contain
booting instructions that are responsible for loading
a special program called the bootloader. Then, the bootloader is responsible for starting
the operating system. Just like that, your
computer is on. As a security analyst, understanding these processes
can be helpful for you. Vulnerabilities can occur in something like a
booting process. Often, the BIOS is not scanned by the
antivirus software, so it can be vulnerable
to malware infection. Now, that you learned how to
boot the operating system, let’s look at how
you and all users communicate with the
system to complete a task. The process starts
with you, the user. And to complete tasks, you use
applications on your computer. An application is a program that performs a specific task. When you do this,
the application sends your request to
the operating system. From there, the operating
system interprets this request and directs it to the
appropriate component of the computer’s hardware. In the previous video, we learned that the
hardware consists of all the physical components
of the computer. The hardware will also send information back to
the operating system. And this in turn is sent
back to the application. Let’s give a simple
overview of how this works when you want to use the
calculator on your computer. You use your mouse to click on the calculator application
on your computer. When you type in the number
you want to calculate, the application communicates
with the operating system. Your operating system then sends a calculation to a
component of the hardware, the central processing
unit, or CPU. Once the hardware does the work of determining the final number, it sends the answer back
to your operating system. Then, it can be displayed in
your calculator application. Understanding this process is helpful when investigating
security events. Security analysts
should be able to trace back through
this process flow to analyze where a security
event could have occurred. Just like a mechanic needs to understand the inner
workings of a car more than an average driver, recognizing how
operating systems work is important knowledge
for a security analyst.

Reading: Requests to the operating system

Reading

Video: Resource allocation via the OS

Operating systems are responsible for managing the resources of a computer system, including the CPU, memory, and storage. This is a complex task that requires careful balancing to ensure that all resources are used efficiently and that no single program or process consumes too much of any resource.

The operating system acts as a conductor, directing the flow of resources to different programs and processes as needed. It does this by allocating and de-allocating resources as needed. For example, if a program is not using the CPU, the operating system will de-allocate the CPU from that program and allocate it to another program that needs it.

Resource management is important because it ensures that all programs and processes have access to the resources they need to run efficiently. It also helps to prevent system crashes and other problems.

As a security analyst, it is important to understand how resource management works in order to investigate security incidents and troubleshoot applications. For example, if a computer is running slowly, an analyst might check to see if any programs or processes are consuming too much CPU or memory.

Here is a summary of the key points from the video:

  • Operating systems are responsible for managing the resources of a computer system.
  • Resource management is important to ensure that all programs and processes have access to the resources they need to run efficiently and to prevent system crashes.
  • The operating system acts as a conductor, directing the flow of resources to different programs and processes as needed.
  • As a security analyst, it is important to understand how resource management works in order to investigate security incidents and troubleshoot applications.

Resource allocation in operating systems is the process of distributing the system’s resources, such as the CPU, memory, and storage, to the various programs and processes that are running. The operating system is responsible for ensuring that all resources are used efficiently and that no single program or process consumes too much of any resource.

There are a variety of different resource allocation algorithms that can be used. Some common algorithms include:

  • First come, first served (FCFS): This algorithm allocates resources to programs in the order in which they request them.
  • Shortest job first (SJF): This algorithm allocates resources to the program with the shortest estimated running time.
  • Priority-based scheduling: This algorithm allocates resources to programs based on their priority. Priorities can be assigned based on a variety of factors, such as the importance of the program or the user running the program.
  • Round robin scheduling: This algorithm allocates resources to programs in a round robin fashion, giving each program a fixed amount of time to run before switching to the next program.

The operating system’s choice of resource allocation algorithm will depend on a number of factors, such as the type of system, the type of programs that are running, and the desired performance characteristics.

Here is a simple example of how resource allocation works in an operating system:

  1. A user opens a web browser.
  2. The web browser requests memory from the operating system.
  3. The operating system allocates memory to the web browser.
  4. The web browser loads a web page.
  5. The web page needs to be displayed on the screen, so the web browser requests CPU time from the operating system.
  6. The operating system allocates CPU time to the web browser.
  7. The web browser displays the web page.

This process continues until the user closes the web browser.

Resource allocation is an important part of operating systems. By carefully managing resources, the operating system can ensure that all programs and processes have access to the resources they need to run efficiently and that the system runs smoothly.

How to improve resource allocation in your operating system

There are a number of things that you can do to improve resource allocation in your operating system:

  • Monitor resource usage. Use a system monitor tool to track how your system’s resources are being used. This can help you to identify programs or processes that are consuming too much of any resource.
  • Adjust resource allocation settings. Many operating systems allow you to adjust resource allocation settings, such as the amount of CPU time or memory that a program or process is allowed to use. You can use these settings to ensure that programs and processes that are important to you have access to the resources they need.
  • Use a resource allocation algorithm that is appropriate for your needs. Different resource allocation algorithms have different strengths and weaknesses. Choose an algorithm that is appropriate for the type of system you are using and the type of programs and processes that you are running.
  • Upgrade your system’s hardware. If your system is running out of resources, you can upgrade the hardware, such as the CPU, memory, or storage. This will give your system more resources to work with and can improve performance.

By following these tips, you can improve resource allocation in your operating system and ensure that your system runs efficiently and smoothly.

Why is it necessary for the OS to handle resource and memory management?

To ensure the limited capacity of the computer system is used where it is needed most

The OS handles resource and memory management to ensure the limited capacity of the computer system is used where it is needed most.

Now we’re ready to discuss a different aspect of
your operating system. Not only does the OS interact with other
parts of your computer, but it’s also responsible for managing the resources
of the system. This is a big task that requires
a lot of balance to make sure all the resources of the computer are
used efficiently. Think of this like the
concept of energy. A person needs energy to
complete different tasks. Some tasks need more energy, while others require less. For example, going for a run requires more energy
than watching TV. A computer’s OS also needs
to make sure that it has enough energy to function correctly
for certain tasks. Running an antivirus scan
on your computer will use more energy than using the
calculator application. Imagine your computer
is an orchestra. Many different
instruments like violins, drums, and trumpets are
all part of the orchestra. An orchestra also has a conductor to direct
the flow of the music. In a computer, the
OS is the conductor. The OS handles resource and
memory management to ensure the limited capacity of the computer system is used
where it’s needed most. A variety of programs, tasks, and processes are
constantly competing for the resources of the central
processing unit, or CPU. They all have their own
reasons why they need memory, storage, and
input/output bandwidth. The OS is responsible
for ensuring that each program is allocating
and de-allocating resources. All this occurs in
your computer at the same time so that your
system functions efficiently. Much of this is hidden
from you as a user. But, your task manager will list all of the tasks that are
being processed, along with their
memory and CPU usage. As an analyst, it’s
helpful to know where a system’s
resources are used. Understanding usage of
resources can help you respond to an incident and troubleshoot applications in the system. For example, if a computer
is running slowly, an analyst might discover it’s allocating
resources to malware. A basic understanding of how operating systems
work will help you better understand
the security skills you will learn later
in this program.

Reading: Virtualization technology

Reading

Practice Quiz: Test your knowledge: The operating system at work

What is the job of a computer’s operating system?

Fill in the blank: In order to carry out tasks on a computer, users directly interact with _.

The management of a computer’s resources and memory is handled by an application.

Which of the following processes are part of starting an operating system? Select all that apply.

The user interface


Video: GUI versus CLI

The two main types of user interfaces are the graphical user interface (GUI) and the command-line interface (CLI).

GUI:

  • Uses icons and graphics to manage different tasks on the computer.
  • Most operating systems can be used with a GUI.
  • Components of a GUI include a start menu, task bar, and desktop with icons and shortcuts.

CLI:

  • Is a text-based user interface that uses commands to interact with the computer.
  • Is more flexible and powerful than a GUI.
  • Is commonly used by security analysts to analyze logs and authenticate and authorize users.

Conclusion:

The two types of user interfaces have different strengths and weaknesses. GUIs are more user-friendly, while CLIs are more flexible and powerful. Security analysts commonly use CLIs in their daily work.

Graphical User Interface (GUI)

A GUI is a user interface that uses icons, menus, and other graphical elements to allow users to interact with a computer. GUIs are typically used in operating systems and applications, and they have become the standard way for most users to interact with computers.

GUIs are relatively easy to use, even for users with no prior experience with computers. This is because GUIs use visual cues and metaphors to help users understand what they are doing and how to interact with the computer.

Command-Line Interface (CLI)

A CLI is a text-based user interface that allows users to interact with a computer by typing commands. CLIs are typically used in more powerful and technical environments, such as servers and routers.

CLIs can be more difficult to use than GUIs, but they offer a number of advantages. For example, CLIs are often much faster than GUIs, and they can be used to perform tasks that are not possible with GUIs.

Which one should I use?

Which type of user interface you should use depends on your needs and preferences. If you are a beginner or you need to perform tasks quickly and efficiently, then you should use a GUI. If you are an experienced user or you need to perform tasks that are not possible with GUIs, then you should use a CLI.

Here is a table that summarizes the key differences between GUIs and CLIs:

FeatureGUICLI
Ease of useEasierMore difficult
SpeedSlowerFaster
PowerLess powerfulMore powerful
FlexibilityLess flexibleMore flexible

Examples of GUIs:

  • Microsoft Windows
  • macOS
  • Linux with a desktop environment (such as GNOME or KDE)
  • Web browsers
  • Mobile operating systems (such as iOS and Android)

Examples of CLIs:

  • Linux terminals
  • Command Prompt (Windows)
  • PowerShell (Windows)
  • SSH (Secure Shell)

Which one should I learn?

If you are new to computers, I recommend that you start by learning how to use a GUI. Once you have a good understanding of how GUIs work, you can then start to learn about CLIs.

There are many resources available to help you learn about GUIs and CLIs. You can find books, tutorials, and online courses on both topics.

Conclusion

GUIs and CLIs are two different types of user interfaces that have different strengths and weaknesses. GUIs are easier to use and more user-friendly, while CLIs are more powerful and flexible.

The type of user interface you should use depends on your needs and preferences. If you are a beginner or you need to perform tasks quickly and efficiently, then you should use a GUI. If you are an experienced user or you need to perform tasks that are not possible with GUIs, then you should use a CLI.

Which of these statements accurately describes a CLI?

A CLI allows users to enter commands that can perform multiple tasks simultaneously.

A CLI allows users to enter commands that can perform multiple tasks simultaneously.

Now that you’ve learned the
inner workings of computers, let’s discuss how users and operating systems
communicate with each other. So far, you’ve learned
that a computer has an operating system,
hardware, and applications. Remember, the operating system communicates with the
hardware to execute tasks. In this video, you’ll
learn how the user—that’s you—interacts with the operating system in order to send tasks to the hardware. The user communicates with the operating system
via an interface. A user interface is a
program that allows a user to control the functions
of the operating system. Two user interfaces
that we’ll discuss are the graphical user interface, or GUI, and the command-line
interface, or CLI. Let’s cover these
interfaces in more detail. A GUI is a user interface
that uses icons on the screen to manage different
tasks on the computer. Most operating systems can be used with a graphical
user interface. If you’ve used a personal
computer or a cell phone, you have experienced
operating a GUI. Most GUIs include
these components: a start menu with
program groups, a task bar for
launching programs, and a desktop with
icons and shortcuts. All these components help you communicate with the
OS to execute tasks. In addition to
clicking on icons, when you use a GUI, you can also search for files or applications from
the start menu. You just have to remember
the icon or name of the program to
activate an application. Now let’s discuss the
command-line interface. In comparison, the command-line
interface, or CLI, is a text-based user interface that uses commands to
interact with the computer. These commands communicate with the operating system and execute tasks like opening programs. The command-line interface is a much different structure than the graphical
user interface. When you use the CLI, you’ll immediately
notice a difference. There are no icons or
graphics on the screen. The command-line interface
looks similar to lines of code using
certain text languages. A CLI is more flexible and
more powerful than a GUI. Think about using a CLI like creating whatever
meal you’d like from ingredients bought
at a grocery store. This gives you a
lot of control and customization about what
you’re going to eat. In comparison, using a GUI is more like
ordering food from a restaurant. You can only order
what’s on the menu. If you want both a
noodle dish and pizza, but the first restaurant
you go to only has pizza, you’ll have to go to
another restaurant to order the noodles. With a graphical user interface, you must do one task at a time. But the command-line interface
allows for customization, which lets you complete
multiple tasks simultaneously. For example, imagine you have a folder with
hundreds of files of different file types,
and you need to move only the JPEG
files to a new folder. Think about how slow and tedious this would be
as you use a GUI to find each JPEG file in this folder and move
it into the new one. On the other hand, the
CLI would allow you to streamline this process
and move them all at once. As you can see, there are very big differences in these two types of
user interfaces. As a security analyst, some of your work may involve
the command-line interface. When analyzing logs or authenticating and
authorizing users, security analysts commonly use a CLI in their everyday work. In this video, we discussed two
types of user interfaces. You learned that you already have experience using a
graphical user interface, as most personal computers
and cell phones use a GUI. You were introduced to the
command-line interface. Later in the program, you’ll learn how to use
a CLI in Linux and how relevant it is to your daily
work as a security analyst. You’ll get practical experience communicating through the
command line. Pretty exciting, right?

Reading: The command line in use

Reading

Practice Quiz: Activity: Select the user interface

You are a security professional training all employees at your company on creating a strong password. You explain different strategies that they can use for making passwords secure. You also demonstrate how to change passwords. Your teammates have a wide range of technical expertise.
In this scenario, should you use a GUI or CLI to demonstrate how to change passwords? Explain your reasoning in 2-3 sentences.

You are reviewing log files for a department at your company. Log file names are supposed to include the name of the department. After reviewing multiple log files, you realize that the file names do not include the name of the department. You decide to rename all the log files for this department. There are hundreds of log files.
In this scenario, should you use a GUI or CLI to rename the log files? Explain your reasoning in 2-3 sentences.

You are installing multiple applications. You want to keep a history of commands while you install the applications. This will allow you to check later to ensure that you installed all of the necessary applications and that you installed them correctly.
In this scenario, should you use a GUI or CLI to install the applications? Explain your reasoning in 2-3 sentences.

Video: Ellen: My path into cybersecurity

Ellen is a security engineering manager at Google. She got started in technology by teaching herself HTML to build a website for her retail job. She then got an internship at a startup and started learning about API design. She later got a job designing a miniature version of an operating system for security technology, and that’s where she started learning about cybersecurity.

Ellen says that no technical background is required to get started in cybersecurity. In fact, she says that having a background in the real world can be helpful in making more balanced security choices. She recommends finding a security community to learn from, and attending local conferences. She also says that most people are happy to help if you ask them for advice.

Her advice to people without technical backgrounds is to not be afraid of the technology. She says that these concepts are understandable by anyone, as long as you are curious and interested.

[MUSIC] My name is Ellen and I am a security
engineering manager at Google focused in on how Google uses the cloud. Cybersecurity wasn’t a field when
I got started in technology, something I came to later. I got started in technology when I
was working retail at a poster store. And we needed to build a website and my
feet hurt and I really needed to sit down. And so I asked friends to
teach me how to do HTML so I could sit down while working and
I could let my blisters have a rest. While I was at the poster store, one of
our customers worked at a start up and used to get employee photos framed and
they asked them for feedback on my website, and
they ended up giving me an internship. One of the specialties that I
ended up having was API design or designing the interface by which
a developer communicates with the machine. As part of that, I got into a job where
I was designing a miniature version of an operating system for
security technology and started learning security from there. Most of the people I know from cyber
security, especially in the early days, do not have a degree at all. Or if they do, they have a degree like I
do in something like philosophy or poetry. Almost everyone learned on
their own by experimenting, by talking to people, by reading. And so I would say no technical
background is required. And in fact, having a background where
you’re used to being out in the real world can sometimes make cybersecurity
make more sense and help you make more balanced choices. In almost all areas, there is
a security community that you can find. Figure out where they are, look for local
conferences, start talking to people. It’s a lot more fun to learn
that way than it is in a vacuum. I’ve found that most people if you come to
them and say, hey, you’re really good at this thing, would you mind if I bought you
a coffee and you showed me how to do it? That they’ll always pretty much say yes. The advice I give to people who don’t have
technical backgrounds, the first one is, I wouldn’t be afraid of the technology. It can seem like only somebody with
a computer science degree could ever understand things, but
these concepts, these technologies
are understandable by anyone. And so never let the fact that you might
not have a technical background get in the way, just pick an area that
interests you and start diving in. And as long as you’re curious, and as
long as you find it interesting, you’ll, you’ll learn the technology.

Practice Quiz: Test your knowledge: The user interface

What is a GUI?

Which of the following can be components of a GUI? Select all that apply.

Fill in the blank: A security professional uses a(n) _ to interact with a computer using text-based instructions.

A useful feature of a CLI is that it records a history file of commands and actions.

Review: Introduction to operating systems


Video: Wrap-up

  • It is important for security analysts to understand the systems they are working with.
  • This section covered common operating systems, their main functions, and the relationship between operating systems, applications, and hardware.
  • The graphical user interface and the command-line interface were also discussed.
  • Understanding the command-line interface is very important for security analysts.
  • The next section will focus specifically on the Linux operating system.

Key takeaways:

  • Security analysts need to understand the systems they are working with, including common operating systems and their main functions.
  • The command-line interface is very important for security analysts.
  • The next section will focus on the Linux operating system.

We did it! What a great section of learning! The best thing is that
we did this together and covered some very useful topics. Let’s recap this section’s lessons. As a security analyst, it’s important that you understand
the systems that you’re working with. Understanding computer basics will help
you do your job more effectively and efficiently. In this section,
we covered common operating systems. We also discussed the main
functions of an operating system. Importantly, you learned about the
relationship between operating systems, applications, and hardware. It was nice to learn how they
flow together like an orchestra. In addition, you learned about
the differences between the graphical user interface and the command-line interface. Understanding the command-line interface
will be very important for your work. I enjoyed exploring the world
of operating systems with you. Knowing how operating systems work is
an important step in preparing for a position as a security analyst. You’re doing great! Let’s keep moving forward
with this program. In the next section, we’ll focus specifically on
the Linux operating system.

Reading: Glossary terms from module 1

Terms and definitions from Course 4, Module 1

Quiz: Module 1 challenge

Which of the following statements accurately describe operating systems? Select all that apply.

Which of the following operating systems were designed to run on mobile devices? Select two answers.

What is a bootloader?

Fill in the blank: When someone uses a computer application, the _____ interprets the user’s requests and directs them to the appropriate components of the computer’s hardware.

If you wanted to download a file from an internet browser, which of these things would happen? Select three answers.

Which of the following are key types of user interfaces? Select two answers.

Which of the following statements correctly describe GUIs and CLIs? Select three answers.

A security team suspects that an attacker has compromised their system. They examine the commands entered by the attacker to determine whether they can trace the attacker’s actions to help them resolve the incident. What does this scenario describe?

Fill in the blank: The _____ ensures the limited capacity of a computer system is used where it’s needed most.