author-cover

Operating Systems: Virtualization, Concurrency & Persistence

Estimated completion time: 40h

Certificate Included

477 Lessons
39 Quizzes
116 Playgrounds
485 Illustrations

Course Overview

When it comes to operating systems, there are three main concepts: virtualization, concurrency, and persistence. These concepts lay the foundation for understanding how an operating system works. In this extensive course, you'll cover each of those in its entirety. You'll start by covering the basics of CPU virtualiza... See more

How You'll Learn

Hands-on coding environments

You don’t get better at swimming by watching others. Coding is no different. Practice as you learn with live code environments inside your browser.

Faster than videos

Videos are holding you back. The average video tutorial is spoken at 150 words per minute, while you can read at 250. That‘s why our courses are text-based.

No set-up required

Start learning immediately instead of fiddling with SDKs and IDEs. It‘s all on the cloud.

Progress you can show

Built in assessments let you test your skills. Completion certificates let you show them off.

Hands-on coding environments

You don’t get better at swimming by watching others. Coding is no different. Practice as you learn with live code environments inside your browser.

Faster than videos

Videos are holding you back. The average video tutorial is spoken at 150 words per minute, while you can read at 250. That‘s why our courses are text-based.

No set-up required

Start learning immediately instead of fiddling with SDKs and IDEs. It‘s all on the cloud.

Progress you can show

Built in assessments let you test your skills. Completion certificates let you show them off.

Course Contents

2. Virtualization: Processes

3. Virtualization: Process API

4. Virtualization: Direct Execution

5. Virtualization: CPU Scheduling

6. Virtualization: Multi-Level Feedback

7. Virtualization: Lottery Scheduling

8. Virtualization: Multi-CPU Scheduling

9. Virtualization: Address Space

10. Virtualization: Memory API

11. Virtualization: Address Translation

12. Virtualization: Segmentation

13. Virtualization: Free Space Management

14. Virtualization: Introduction to Paging

15. Virtualization: Translation Lookaside Buffers

16. Virtualization: Advanced Page Tables

17. Virtualization: Swapping: Mechanisms

18. Virtualization: Swapping: Policies

19. Virtualization: Complete VM Systems

20. Concurrency: Concurrency and Threads

21. Concurrency: Thread API

22. Concurrency: Locks

23. Concurrency: Locked Data Structures

24. Concurrency: Conditional Variables

25. Concurrency: Semaphores

26. Concurrency: Concurrency Bugs

27. Concurrency: Event-Based Concurrency

28. Persistence: I/O Devices

29. Persistence: Hard Disk Drives

30. Persistence: Redundant Disk Arrays (RAID)

31. Persistence: Files and Directories

32. Persistence: File System Implementation

33. Persistence: Fast File System

34. Persistence: FSCK and Journaling

35. Persistence: Log-Structured File System

36. Persistence: Flash-based SSDs

37. Persistence: Data Integrity and Protection

38. Distribution: Distributed Systems

39. Distribution: Network File System (NFS)

40. Distribution: Andrew File System (AFS)

Join 450,000 learners from companies like

COURSE BY:

Remzi Arpaci-Dusseau

Andrea C Arpaci-Dusseau