Advanced Operating Systems (Udacity)

Advanced Operating Systems (Udacity)

Abstractions and Virtualization. In this course, we will see all the advances that have led to the state-of-the-art operating system that we know today, covering variety of platforms -- cell phones, multi-core, parallel systems, distributed systems, and cloud computing.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

This course is a journey to understanding the role played by the Operating System in providing the rich user experience afforded to modern applications by today’s computers. Along the way, we highlight the symbiotic relationship between hardware and software that makes it possible for the computer and OS to provide a pleasing user experience.

What you will learn

  • Abstractions

Hardware Resources
OS Functionality
Managing the CPU and Memory

  • OS Structure

The SPIN Approach
The Exokernel Approach
The L3 Micro-Kernel Approach

  • Virtualization

Intro to Virtualization
Memory Virtualization
CPU and Device Virtualization

  • Parallelism

Shared Memory Machines
Synchronization
Communication

  • Distributed Systems

Definitions
Lamport Clocks
Latency limits

  • Distributed Object Technology

Spring Operating System
Java RMI
Enterprise Java Beans

  • Design and Implementation of Distributed Services

Global Memory System
Distributed Shared Memory
Distributed File System

  • System Recovery

Lightweight Recoverable Virtual Memory
Rio Vista
Quicksilver

  • Internet Scale Computing

Giant Scale Services
MapReduce
Content Delivery Networks

  • Real-Time and Multimedia

Time sensitive Linux
Persistent temporal streams

Prerequisites and requirements
Students are expected to have taken an undergraduate OS course, or have some experience in industry. A good understanding of the concepts in a standard textbook such as "Operating Systems Concepts," Silberschatz and Galvin (or its equivalent) will be assumed in this course.
Students must also be comfortable with UNIX and C programming.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Securing Digital Democracy (Coursera) Coursera
University of Michigan

Securing Digital Democracy (Coursera)

In this course, you'll learn what every citizen should know about the security risks--and future potential — of electronic voting and Internet voting. We'll take a look at the past, present, and future of election technologies and explore the various spaces intersected by voting, including computer security, human factors, public policy, and more.

Aug 24th 2026
5-12 Weeks
Principles of Computing (Part 2) (Coursera) Coursera
Rice University

Principles of Computing (Part 2) (Coursera)

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class.

Sep 7th 2026
4 Weeks
GT - Refresher - Advanced OS (Udacity) Udacity
Georgia Institute of Technology,Udacity

GT - Refresher - Advanced OS (Udacity)

The course covers the basics of Memory Systems, File Systems, Multithreaded Programming, and Networking. Together these form a strong foundation from which the student can understand cutting edge research in the areas of Virtualization, Distributed Systems, and Internet-scale services in the GT Advanced Operating Systems sequence.

Self Paced
Self-Paced
Computing for Data Analysis (edX) EdX
Georgia Institute of Technology,GTx

Computing for Data Analysis (edX)

A hands-on introduction to basic programming principles and practice relevant to modern data analysis, data mining, and machine learning. The modern data analysis pipeline involves collection, preprocessing, storage, analysis, and interactive visualization of data. In the course, you’ll see how computing and mathematics come together.

Aug 24th 2026
13-24 Weeks
Introduction to Operating Systems (Udacity) Udacity
Georgia Institute of Technology,Udacity

Introduction to Operating Systems (Udacity)

Introduction to Operating Systems is a graduate-level introductory course in operating systems. This course teaches the basic operating system abstractions, mechanisms, and their implementations. The core of the course contains concurrent programming (threads and synchronization), inter process communication, and an introduction to distributed operating systems. The course is split into four sections: (1) Introduction, (2) Process and Thread Management, (3) Resource Management and Communication, and (4) Distributed Systems.

Self Paced
Self-Paced
Cloud Systems Software (Coursera) Coursera
Georgia Institute of Technology

Cloud Systems Software (Coursera)

This course provides an introduction to programming frameworks and their implementation issues in the Cloud. It explains multiple topics, including: scalable distributed data stores, resource management (for supporting multi-tenancy and elasticity) and virtualization techniques. Optionally, the student will also be guided in the implementation of a basic version of the distributed runtime system for the Map-Reduce programming framework

Aug 24th 2026
5-12 Weeks
Dasar-Dasar Dukungan Teknis (Coursera) Coursera
Google

Dasar-Dasar Dukungan Teknis (Coursera)

Materi ini adalah rangkaian pertama dari keseluruhan program pelatihan yang akan membantu Anda untuk berperan sebagai Spesialis Teknisi IT tingkat pemula. Dalam kursus ini, Anda akan diperkenalkan ke dunia Teknologi Informasi, atau IT. Anda akan mempelajari berbagai aspek Teknologi Informasi, seperti perangkat keras komputer, Internet, perangkat lunak komputer, pemecahan masalah, dan layanan pelanggan. Pelatihan ini mencakup berbagai topik dalam dunia IT yang dirancang untuk memberi Anda gambaran tentang pelajaran apa yang akan diperoleh melalui program sertifikasi ini.

Aug 24th 2026
5-12 Weeks
Embedded Hardware and Operating Systems (Coursera) Coursera
EIT Digital

Embedded Hardware and Operating Systems (Coursera)

This course is intended for the Bachelor and Master's students, who like practical programming and making IoTs applications! In this course we will talk about two components of a cyber physical system, namely hardware and operating systems. After completing this course, you will have the knowledge of both hardware components and operating systems. You are able to plan and use embedded operating systems in resource-constraint devices for Internet-of-Things (cyber physical system) applications.

Aug 24th 2026
4 Weeks
Capstone: Autonomous Runway Detection for IoT (Coursera) Coursera
EIT Digital

Capstone: Autonomous Runway Detection for IoT (Coursera)

The students will develop a larger system using the learning outcomes from these courses, and the students will evaluate the developed system in a real-world programming environment. This course is a true engineering task in which the student must, not only implement the algorithm code, but also handle the interfaces between many different actors and hardware platforms.

Sep 7th 2026
3 Weeks
Algorithmic Thinking (Part 1) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 1) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Sep 7th 2026
4 Weeks
Developing FPGA-accelerated cloud applications with SDAccel: Theory (Coursera) Coursera
Politecnico di Milano

Developing FPGA-accelerated cloud applications with SDAccel: Theory (Coursera)

This course is for anyone passionate in learning how to develop FPGA-accelerated applications with SDAccel! We are entering in an era in which technology progress induces paradigm shifts in computing! As a tradeoff between the two extreme characteristics of GPP and ASIC, we can find a new concept, a new idea of computing... the reconfigurable computing, which has combined the advantages of both the previous worlds.

Aug 24th 2026
4 Weeks
Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera) Coursera
University of Maryland, College Park

Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera)

This course introduces you to the design and implementation of Android applications for mobile devices. You will build upon concepts from the prior course, including handling notifications, using multimedia and graphics and incorporating touch and gestures into your apps.

Aug 31st 2026
5-12 Weeks