Fundamentals of Operating Systems
Offered By: Codecademy
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
### 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 ProgrammingUniversity 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