GithubHelp home page GithubHelp logo

varinnair / cs110notes Goto Github PK

View Code? Open in Web Editor NEW

This project forked from leedehai/cs110notes

0.0 1.0 0.0 286 KB

1st time TAing for CS110 at Stanford: Principles of Computer Systems? - Stars are appreciated :)

Home Page: http://cs110.stanford.edu

License: Creative Commons Attribution Share Alike 4.0 International

HTML 99.69% CSS 0.31%

cs110notes's Introduction

CS110Notes

CS110 Tutorial at Stanford

Hosted here, but it will be taken down when I graduate.

           _____    _____   __   __    ___      
          / ____|  / ____| /_ | /_ |  / _ \     
         | |      | (___    | |  | | | | | |    
         | |       \___ \   | |  | | | | | |    
         | |____   ____) |  | |  | | | |_| |    
          \_____| |_____/   |_|  |_|  \___/  

Course title: Principles of Computer Architecture

Spring 2017, offered by J. Cain

Author: L. Haihong (@Leedehai)

Caveat: no warranty, but feedback on factual errors are welcome!

Index

Introduction
[HTML][Markdown]

Topic 1 Filesystem (1): cp, "the three tables", find, intro to system calls
[HTML][Markdown]

Topic 1 Filesystem (2): file systems, layering, more on system calls
[HTML][Markdown]

Topic 2 Multiprocessing (1): fork(), waitpid(), reaping
[HTML][Markdown]

Topic 2 Multiprocessing (2): execvp(), "the trio", shell
[HTML][Markdown]

Topic 2 Multiprocessing (3): pipes, redirection
[HTML][Markdown]

Topic 2 Multiprocessing (4): signals, signal handlers, signal masking
[HTML][Markdown]

Topic 2 Multiprocessing (5): paging, virtual memory, scheduler, context switch
[HTML][Markdown]

Topic 3 Multithreading (1): POSIX C pthread, race conditions
[HTML][Markdown]

Topic 3 Multithreading (2): C++ thread, mutex
[HTML][Markdown]

Topic 3 Multithreading (3): dining philosophers problem, deadlocks, permission slips, condition_variable_any, lock_guard
[HTML][Markdown]

Topic 3 Multithreading (4): semaphore, reader-writer problem, myth-buster
[HTML][Markdown]

Topic 3 Multithreading (5): concurrency patterns, ice-scream-parlor
[HTML][Markdown]

Topic 4 Networking (1): sever, client, sockets, server-side multithreading
[HTML][Markdown]

Topic 4 Networking (2): HTTP, networking system calls and data structures
[HTML][Markdown]

Topic 4 Networking (3): networking API, MapReduce
[HTML][Markdown]

Topic 4 Networking (4): non-blocking I/O
[HTML][Markdown]

Topic 4 Networking (5): event-driven programming
[HTML][Markdown]

Appendix A - Principles of Systems Design: abstraction, modularity and layering, naming and name resolution, caching, virtualization, concurrency, client-sever request-response
[HTML][Markdown]

Lab solutions (maintained by instructor)

Lab 1: File Systems and System Calls
Lab 2: Multiprocessing and Unix Tools
Lab 3: Parallel Programming
Lab 4: assign3 Redux and Threads
Lab 5: Read-Write Locks, Event Barriers
Lab 6: Threads vs Processes
Lab 7: ThreadPools and Networking

KOB = "knock on the blackboard" = "this is important" (for the purpose of course reviewing, not necessarily for learning)

LICENSE: Creative Commons Attribution Share Alike 4.0 (CC-BY-SA-4.0), not applicable to lab solutions.

cs110notes's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.