InfoCoBuild

CS 162: Operating Systems and Systems Programming

CS 162: Operating Systems and Systems Programming (Fall 2012, UC Berkeley). Instructor: Professor Ion Stoica. The purpose of this course is to teach the design of operating systems and other systems. Topics we will cover include concepts of operating systems, networking, database systems and systems programming, including multiple-program systems (processes, interprocess communication, and synchronization), memory allocation (segmentation, paging), resource allocation and scheduling, file systems, basic networking (packet switching, file control, reliability), basic databases (transaction, SQL) security, and privacy.

Lecture 17 - TCP, Flow Control, Reliability


Go to the Course Home or watch other lectures:

Lecture 01 - Overview
Lecture 02 - Concurrency: Processes, Threads, and Address Spaces
Lecture 03 - Concurrency and Thread Dispatching
Lecture 04 - Synchronization, Atomic Operations, Locks
Lecture 05 - Semaphores, Condition Variables
Lecture 06 - Readers/Writers Problem, Working in Teams
Lecture 07 - Semaphores, Condition Variables, Deadlocks
Lecture 08 - Thread Scheduling
Lecture 09 - Address Translation
Lecture 10 - Caches and TLBs
Lecture 11 - Page Allocation and Replacement
Lecture 12 - Dual Mode Operation: Kernel vs User Mode, I/O Systems, Disk Performance
Lecture 13 - Disks and SSDs, File Systems
Lecture 14
Lecture 15 - Key-Value Storage, Network Protocols
Lecture 16 - Layering
Lecture 17 - TCP, Flow Control, Reliability
Lecture 18 - TCP's Flow Control, Transactions
Lecture 19 - Transactions, Two Phase Locking (2PL), Two Phase Commit (2PC)
Lecture 20 - Why Systems Fail and What We Can Do About It
Lecture 21 - Security (I)
Lecture 22 - Security (II)
Lecture 23 - Cloud Computing
Lecture 24 - P2P Systems and Review