Index of /~hhli/CS110Notes/CS110NotesCollection

[ICO]NameLast modifiedSizeDescription

[PARENTDIR]Parent Directory  -  
[   ]Appendix A - Principles of Systems Design.md2017-06-14 23:56 3.6K 
[   ]Topic 4 Networking (3).md2017-06-14 23:56 3.9K 
[   ]README.md2017-06-14 23:56 5.8K 
[   ]Introduction.md2017-06-14 23:56 7.3K 
[   ]Topic 3 Multithreading (5).md2017-06-14 23:56 9.6K 
[   ]Topic 4 Networking (5).md2017-06-14 23:56 10K 
[   ]Topic 3 Multithreading (2).md2017-06-14 23:56 12K 
[   ]Topic 4 Networking (4).md2017-06-14 23:56 13K 
[   ]Topic 2 Multiprocessing (2).md2017-06-14 23:56 14K 
[   ]Topic 3 Multithreading (4).md2017-06-14 23:56 14K 
[   ]Topic 2 Multiprocessing (3).md2017-06-14 23:56 15K 
[   ]Topic 2 Multiprocessing (5).md2017-06-14 23:56 15K 
[   ]Topic 4 Networking (1).md2017-06-14 23:56 16K 
[   ]Topic 4 Networking (2).md2017-06-14 23:56 18K 
[TXT]Appendix A - Principles of Systems Design.html2017-06-14 23:56 19K 
[   ]Topic 3 Multithreading (3).md2017-06-14 23:56 19K 
[   ]Topic 2 Multiprocessing (1).md2017-06-14 23:56 19K 
[TXT]Topic 4 Networking (3).html2017-06-14 23:56 20K 
[TXT]README.html2018-08-09 13:56 21K 
[   ]Topic 3 Multithreading (1).md2017-06-14 23:56 21K 
[   ]Topic 2 Multiprocessing (4).md2017-06-14 23:56 22K 
[   ]Topic 1 Filesystem (1).md2017-06-14 23:56 23K 
[TXT]Introduction.html2017-06-14 23:56 24K 
[   ]Topic 1 Filesystem (2).md2018-04-13 12:52 26K 
[TXT]Topic 3 Multithreading (5).html2017-06-14 23:56 26K 
[TXT]Topic 2 Multiprocessing (5).html2017-06-14 23:56 31K 
[TXT]Topic 4 Networking (5).html2017-06-14 23:56 32K 
[TXT]Topic 2 Multiprocessing (3).html2017-06-14 23:56 34K 
[TXT]Topic 4 Networking (1).html2017-06-14 23:56 40K 
[TXT]Topic 3 Multithreading (4).html2017-06-14 23:56 40K 
[TXT]Topic 3 Multithreading (2).html2017-06-14 23:56 40K 
[TXT]Topic 4 Networking (4).html2017-06-14 23:56 41K 
[TXT]Topic 2 Multiprocessing (2).html2017-06-14 23:56 41K 
[TXT]Topic 3 Multithreading (1).html2017-06-14 23:56 43K 
[TXT]Topic 1 Filesystem (2).html2018-04-13 12:54 43K 
[TXT]Topic 3 Multithreading (3).html2017-06-14 23:56 45K 
[TXT]Topic 4 Networking (2).html2017-06-14 23:56 46K 
[TXT]Topic 2 Multiprocessing (1).html2017-06-14 23:56 46K 
[   ]Multithreading and Synchronization Redux.pdf2017-06-14 23:56 47K 
[TXT]Topic 1 Filesystem (1).html2017-06-14 23:56 49K 
[TXT]Topic 2 Multiprocessing (4).html2017-06-14 23:56 50K 

README

CS110Notes

CS110 Tutorial at Stanford

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


After my graduation, the notes are hosted here on Leedehai at Github. Stars are appreciated!!
_____ _____ __ __ ___ / ____| / ____| /_ | /_ | / _ \ | | | (___ | | | | | | | | | | \___ \ | | | | | | | | | |____ ____) | | | | | | |_| | \_____| |_____/ |_| |_| \___/

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.