Hacker News new | past | comments | ask | show | jobs | submit login

I came across this course after going through the 6.824 from RTM last year and enjoying the hands on approach a lot! Teaching using the xv6 OS (https://pdos.csail.mit.edu/6.828/2012/xv6.html) is super valuable. I do not consider myself an expert in operating systems or C, but digging through the xv6 source code is quite fun, the code is easily readable and very newby friendly.



This has me reading the updated pdf discussing xv6 (riscv, 2021):

https://pdos.csail.mit.edu/6.S081/2021/xv6/book-riscv-rev2.p...

So far, it is saying all the things that need to be said once, once, and very clearly.


My OS class at the University of Wisconsin used xv6. I love and hate that little operating system. My professor had actually taken the time to logically split all the source files into folders for their given purpose. When I found the original source and the flat structure, I died a little inside. There was no way I would be able to recreate a folder structure that would also successfully build with make. I tried and gave up in short order.


I rebuilt it into a folder structure when I was younger trying to teach myself operating systems. It wasn’t that difficult if you’re familiar with make.


I am definitely not familiar with make. My two big issues with my OS class were: I'm awful at C, and make is a mystery to me.


Yes it's very readable and easy to understand. I had made a huge design mistake in my OS's scheduling which basically prevented any task from going to sleep but it was hard to understand what other way was there to do it. Reading xv6's source code saved me (and my OS) as the code was so clean that it was easy to understand the idea behind their scheduling and port that to another kernel that had otherwise nothing to do with xv6.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: