Lectures, Presentation & MCQs of Computer Science *(Free Download) *: Advanced Topics in Computer Systems

Lectures, Presentation & MCQs of Computer Science *(Free Download) *: Advanced Topics in Computer Systems:                 Lec No. Discussion Topics PPT Notes Readings 1 Introduction ...

Advanced Topics in Computer Systems


               
Lec
No.
Discussion Topics
PPT Notes
Readings
1
Introduction to the course, some basic philosophy, UNIX system.
  • The UNIX Time-Sharing System [NEW annotated version]
2
Introduction to Databases, System R
  • End-To-End Arguments in System Design
  • A History and Evaluation of System R [Annotated version]
3
File Systems
  • A Fast File System for UNIX
  • Analysis and Evolution of Journaling File Systems
4
File System Reliability: Bottom Up/Top Down
  • The HP AutoRAID Hierarchical Storage System (2-up version)
  • Finding a needle in Haystack: Facebook’s photo storage
5
Locking In Systems/Transactions
  • Experience with Processes and Monitors in Mesa
  • Principles of Transaction-Oriented Database Recovery
6
Transactional Recovery: [Fekete]
  • ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-ahead Logging
7
Transactional Recovery: Extensions and Applications
  • Segment-Based Recovery: Write-ahead Logging Revisited
  • Lightweight Recoverable Virtual Memory
8
Transactional Recovery: Extensions and Applications [Con't]
  • Transactional Flash
  • Rethink the Sync
9
Transaction Locking and Concurrency #1 [Fekete]
  • Granularity of Locks and Degrees of Consistency in a Shared Database
  • Serializable Isolation for Snapshot Databases
10
Transaction Locking and Concurrency #2 [Fekete]
  • The Notions of Consistency and Predicate Locks in a Database System
  • Key Range Locking Strategies for Improved Concurrency
11
Scheduling and Concurrency #1
  • Lottery Scheduling: Flexible Proportional-Share Resource Management
  • SEDA: An Architecture for WellConditioned, Scalable Internet Services
12
Scheduling and Concurrency #2 [REALTIME]
  • Integrating Multimedia Applications in Hard Real-Time Systems
  • Implementing Constant-Bandwidth Servers upon Multiprocessor Platforms
13
Resource Allocation #1
  • Composing Parallel Software Efficiently with Lithe
  • Dominant Resource Fairness: Fair Allocation of Multiple Resource Types
14
Scheduling and Concurrency #3
  • Time, Clocks, and the Ordering of Events in a Distributed System
  • Efficient Optimistic Concurrency Control Using Loosely Synchronized Clocks
15
Parallel DB #1 
  • Parallel Database Systems: The Future of High Performance Database Systems
  • Spark: Cluster Computing with Working Sets
16
Parallel DB #2
  • A Comparison of Approaches to Large-Scale Data Analysis
  • Jockey: Guaranteed Job Latency in Data Parallel Clusters
17
Column Stores
  • C-Store: A Column-oriented DBMS
  • Database Cracking
18
Routing
  • RouteBricks: Exploiting Parallelism To Scale Software Routers
19
Virtualization #1
  • Xen and the Art of Virtualization
  • Are Virtual Machine Monitors Microkernels Done Right?
20
Virtualization #2
  • Live Migration of Virtual Machines
  • SnowFlock: Rapid Virtual Machine Cloning for Cloud Computing
21
Peer To Peer Networks
  • Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications
  • Tapestry: A Resilient Global-scale Overlay for Service Deployment
22
Distributed Storage #1
  • Dynamo: Amazon’s Highly Available Key-value Store
23
Distributed Storage #2
  • Pond: the OceanStore Prototype.
  • Bigtable: a distributed storage system for structured data
24
Paxos
  • Paxos Made Live - An Engineering Perspective
  • Megastore: Providing Scalable, Highly Available Storage for Interactive Services
25
Byzantine Agreement (Kubiatowicz)
  • The Byzantine Generals Problem
  • Practical Byzantine Fault Tolerance
26
Validation
  • seL4: Formal Verification of an OS Kernel