Operating Systems | Computer Science Fundamentals

New York University

Gain a deep understanding of how computers work, from the register level to the application level, and learn the core principles and abstractions of operating systems.

University CoursesCOperating SystemUnix

Introduction

NYU's operating system course. It's a fundamental course focusing on basic ideas of operating systems, including memory management, process scheduling, file system, etc. It also includes some recommended reading materials. What's more, there are a series of hands-on lab materials, helping you easily understand OS.

screenshot

Highlights

  • Covers core ideas in operating systems such as concurrent programming, memory protection, virtual addressing, file systems, scheduling, and transactions
  • Enhances ability to understand, design, and implement large-scale systems
  • Substantial coding workload to reinforce understanding of key concepts

Recommendation

This course is recommended for students who want to gain a deep understanding of how computers work, from the register level to the application level, and who are interested in learning the core principles and abstractions of operating systems.

How GetVM Works

Learn by Doing from Your Browser Sidebar

Access from Browser Sidebar

Access from Browser Sidebar

Simply install the browser extension and click to launch GetVM directly from your sidebar.

Select Your Playground

Select Your Playground

Choose your OS, IDE, or app from our playground library and launch it instantly.

Learn and Practice Side-by-Side

Learn and Practice Side-by-Side

Practice within the VM while following tutorials or videos side-by-side. Save your work with Pro for easy continuity.

Explore Similar Hands-on Tutorials

The Great Tree List Recursion Problem

9
Technical TutorialsAlgorithmCJava
Explore the intricacies of data structures, recursion, and programming with The Great Tree List Recursion Problem, a comprehensive guide to binary trees and circular doubly linked lists.

Compiler Design in C (1990)

1
Technical TutorialsCCompiler
Comprehensive guide to understanding and implementing compilers using the C programming language. Covers fundamental concepts, syntax analysis, code generation, and optimization.

Compiler Design: Theory, Tools, and Examples, C/C++ Edition

2
Technical TutorialsCC++Compiler
Comprehensive course on compiler design, covering theory, tools, and practical C/C++ examples. Explore lexical analysis, syntax analysis, and code generation.

Pointers And Memory | Computer Programming, Memory Management

16
Technical TutorialsCComputer ScienceProgramming
Comprehensive guide to understanding pointers, memory allocation, and optimization techniques for computer science students and software developers.

Beejs Guide to Network Programming - Using Internet Sockets

12
Technical TutorialsCC++NetworkingProgramming
Comprehensive guide to network programming, focusing on the use of internet sockets. Written by experienced author Brian "Beej Jorgensen" Hall, offering in-depth coverage and practical examples.

How to write a simple operating system in assembly language

28
Technical TutorialsAssembly LanguageOperating System
Explore the fundamentals of operating system development and computer science principles with this hands-on guide to writing a simple OS in assembly language.

Operating Systems and Middleware

21
Technical TutorialsOperating System
Dive into the fundamentals of operating systems and middleware with this in-depth course, covering core concepts and providing valuable resources.

Operating Systems: From 0 to 1

6
Technical TutorialsComputer ScienceOperating System
Comprehensive guide to understanding the fundamentals of operating systems and system development. Suitable for computer science enthusiasts and developers.

Practical File System Design: The Be File System

18
Technical TutorialsOperating System
Comprehensive guide to file system design and implementation, focusing on the Be File System. Covers architecture, data structures, and optimization techniques.