YoVDO

Fundamentals of Operating Systems

Offered By: Codecademy

Tags

Operating Systems Courses Memory Management Courses Process Management Courses

Course Description

Overview

Learn about operating systems by taking a deep dive into each of its main functionalities.

### Why Fundamentals of Operating Systems?

The moment a computer is turned on, the operating system is hard at work managing every aspect of a computer. With the responsibility of seamlessly managing hardware and software systems, computer memory, process scheduling, and more, the operating system may be the most vital software a computer runs. This course is for anyone who is curious about what makes a computer fast, functional, and easy to use.

### Take-Away Skills

This course will take a deep dive into the main functionalities of an operating system to gain a better understanding of how it impacts the experience of a user. The course will cover content such as:
* What is an operating system?
* Process and thread management
* Synchronization and deadlock
* Memory management techniques
* Filesystem management
* Input/Output systems

Syllabus

  • Introduction to Operating Systems: Learn about how computers process data, the important hardware in every computer, and the basic functionalities of an operating system.
    • Informational: Introduction: Fundamentals of Operating Systems
    • Lesson: How Computers Work
    • Article: Important Hardware
    • Article: Basics of Operating Systems
    • Article: Introduction to Operating Systems Problem Set
  • Processes and Threads: Learn about how processes and threads work in an operating system.
    • Lesson: Processes and Threads
    • Quiz: Processes and Threads
    • Article: Processes and Threads Problem Set
  • Process Scheduling: Learn how process scheduling is used to manage multiple active processes!
    • Lesson: Process Scheduling
    • Quiz: Process Scheduling
    • Article: Process Scheduling Problem Set
  • Synchronization: Learn about synchronization and how it organizes the use of shared data amongst threads.
    • Lesson: Synchronization
    • Article: Deadlocks
    • Quiz: Synchronization Quiz
    • Article: Synchronization and Deadlock Problem Set
  • Memory Management: Learn about the techniques the operating system uses to manage memory.
    • Lesson: Memory Management
    • Quiz: Memory Management
    • Article: Memory Management Problem Set
  • Filesystems: Learn about how the operating system uses filesystems to store, organize, and retrieve data.
    • Lesson: Filesystems
    • Quiz: Filesystems
    • Article: Filesystems Problem Set
  • IO Systems: Learn about how the operating system manages IO devices.
    • Article: Introduction to IO Systems
    • Lesson: IO Hardware
    • Lesson: IO Software
    • Quiz: IO Systems Quiz
    • Article: IO Systems Problem Set

Taught by

Kenny Lin

Related Courses

Heterogeneous Parallel Programming
University of Illinois at Urbana-Champaign via Coursera
Advanced Operating Systems
Georgia Institute of Technology via Udacity
計算機程式設計 (Computer Programming)
National Taiwan University via Coursera
Introduction to Operating Systems
Georgia Institute of Technology via Udacity
Android Performance
Google via Udacity