Operating Systems (saylor.org)

Offered by Saylor.org,
Operating Systems  (saylor.org)

This course will introduce you to modern operating systems. We will focus on UNIX-based operating systems, though we will also learn about alternative operating systems, including Windows.

This course will introduce you to modern operating systems. We will focus on UNIX-based operating systems, though we will also learn about alternative operating systems, including Windows. The course will begin with an overview of the structure of modern operating systems. Over the course of the subsequent units, we will discuss the history of modern computers, analyze in detail each of the major components of an operating system (from processes to threads), and explore more advanced topics in the field, including memory management and file input/output. The class will conclude with a discussion of various system-related security issues.

Upon successful completion of this course, the student will be able to:

  • Explain what an operating system does and how it is used.
  • Identify the various components of a computer system and how they interact with an operating system.
  • Describe the differences between a 32-bit and 64-bit operating system.
  • Explain the different types of operating systems and the major ones in use today.
  • Discuss the importance and use of threads and processes in an operating system.
  • Describe concurrency.
  • Explain the difference between a thread and a process.
  • Discuss context switching and how it is used in an operating system.
  • Describe synchronization.
  • Explain a race condition.
  • Discuss interprocess communication.
  • Describe how semaphores can be used in an operating system.
  • Discuss three of the classic synchronization problems
  • Explain the alternatives to semaphores.
  • Discuss CPU scheduling and its relevance to operating systems.
  • Explain the general goals of CPU scheduling.
  • Describe the differences between pre-emptive and non-preemptive scheduling.
  • Discuss four CPU scheduling algorithms.
  • Explain what deadlock is in relation to operating systems.
  • Discuss deadlock prevention, avoidance, and their differences.
  • Describe deadlock detection and recovery.
  • Explain the memory hierarchy.
  • Discuss how the operating system interacts with memory.
  • Describe how virtual memory works.
  • Discuss three algorithms for dynamic memory allocation.
  • Explain methods of memory access.
  • Describe paging and page replacement algorithms.
  • Describe a file system and its purpose.
  • Discuss various file allocation methods.
  • Explain disk allocation and associated algorithms.
  • Discuss types of security threats.
  • Describe the various types of malware.
  • Explain basic security techniques.
  • Explain basic networking principles.
  • Discuss protocols and how they are used.
  • Explain reference models, particularly TCP/IP and OSI.
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Hardware Security (Coursera) Coursera
University of Maryland, College Park

Hardware Security (Coursera)

In this course, we will study security and trust from the hardware perspective. Upon completing the course, students will understand the vulnerabilities in current digital system design flow and the physical attacks to these systems. They will learn that security starts from hardware design and be familiar with the tools and skills to build secure and trusted hardware.

Sep 14th 2026
5-12 Weeks
Fundamentals of Red Hat Enterprise Linux (Coursera) Coursera
Red Hat

Fundamentals of Red Hat Enterprise Linux (Coursera)

This course will provide you with a basic introduction to Linux® skills using Red Hat® Enterprise Linux 8. It will show you how a Linux system is organized, and will demonstrate introductory system administration tasks, which you will be able to practice on your own. You will be introduced to reasons why Linux and the open source development model are so important in today's computing environment. Linux systems are used everywhere—the internet, point-of-sale systems, and the world's stock markets. You’ll find Linux running smart TVs, in-flight entertainment systems, and most of the top supercomputers in the world.

Sep 28th 2026
5-12 Weeks
Operating System Virtualization - Bachelor's (Coursera) Coursera
Illinois Tech

Operating System Virtualization - Bachelor's (Coursera)

Each successful student in this course will become familiar with hypervisors, virtualization terms, infrastructure considerations, and appropriate use cases. While designed to give an overview of today’s Virtualization technologies and methods, students in the course will gain enough practical knowledge to begin deploying various hypervisors and virtual machine environments using current industry standard platforms.

Sep 28th 2026
5-12 Weeks
How Computers Work (Coursera) Coursera
University of London,Goldsmiths, University of London

How Computers Work (Coursera)

Computers are everywhere, they aren't just the desktops and laptops we use for work but the phones in our pockets and even the watches on our wrists are also computers. You probably use a computer every day and in fact you are reading this on a computer! Just because we use computers all the time, doesn't mean that we understand them, or find them easy to use. Computer Science is the science of computers, it is the field of knowledge that experts use to understand computer systems. Knowing a little computer science will help you understand the computers all around you.

Sep 21st 2026
4 Weeks
Bitcoin and Cryptocurrency Technologies (Coursera) Coursera
Princeton University

Bitcoin and Cryptocurrency Technologies (Coursera)

To really understand what is special about Bitcoin, we need to understand how it works at a technical level. We’ll address the important questions about Bitcoin, such as: How does Bitcoin work? What makes Bitcoin different? How secure are your Bitcoins? How anonymous are Bitcoin users? What determines the price of Bitcoins? Can cryptocurrencies be regulated? What might the future hold?

Sep 21st 2026
5-12 Weeks
Agile Planning for Software Products (Coursera) Coursera
University of Alberta

Agile Planning for Software Products (Coursera)

This course covers the techniques required to break down and map requirements into plans that will ultimately drive software production. Upon successful completion of this course, you will be able to: create effective plans for software development; map user requirements to developer tasks; assess and plan for project risks; apply velocity-driven planning techniques; generate work estimates for software products.

Sep 28th 2026
4 Weeks