I’ve finished watching the lectures and taking notes for the operating systems refresher course1 that covers operating system fundamentals, the course covering topics including virtual memory system (e.g. paging, virtually indexed physically tagged) and file systems (e.g. FAT, EXT, inodes) and multi-threaded program (e.g. mutexes, conditional variables, synchronization) and networking2. The notes can be found in the following blog posts:
Some of the videos really saved my bacon. Without watching the multi-threaded series, I think I would’ve struggled more than necessary on completing the pre-lab homework assignment, which has us students troubleshoot a misbehaving producer/consumer multi-threaded program.
1 – Operating Systems Refresher Course – https://classroom.udacity.com/courses/ud098
2 – Oh yea, in the title, I included “sort of” because I’m skipping over the networking module. Not because I don’t find the topics interesting (I do), but mainly for two reasons: the interest of time and I think I’m fairly comfortable with those topics (I mean, I did work at Cisco at an network engineer, previously worked in Amazon’s Route53 DNS team and I currently build networking/packet process devices)