Operating Systems 2015F Lecture 10: Difference between revisions
(One intermediate revision by the same user not shown) | |||
Line 5: | Line 5: | ||
==Notes== | ==Notes== | ||
[[File:Blackboard-concurrency.jpeg]] | [[File:Blackboard-concurrency.jpeg|thumb]] | ||
Latest revision as of 16:56, 14 October 2015
Video
The video from the lecture given on October 9, 2015 is now available.
Notes
Lecture 10 ---------- What's in your final report? - The idea (intro) - Design/high level implementation - implementation (problems encountered) - Evaluation (does it work and how do you know) - Conclusion - contributions - limitations - future work - appendix: code (potentially in patch form) I suggest you use LaTeX, at least for the code listing (may want to look at pandoc and markdown) Concurrency - race conditions - producer/consumer - locks - protecting data structures - rendezvous - filesystem locks - in-memory locks Processes and threads - a process is - a CPU context (virtual CPU) - plus a private address space - a thread is - a CPU context (virtual CPU) - in a shared address space - with threads, all threads see the same memory (within a single process) Why have threads? - because we have multiple CPUs Why are threads bad? - race conditions! - memory concurrency! - corrupted data! - now you need locks in memory!