Live data from Hacker News

People of ACM – Russ Cox

acm.org

21–26 of 26 posts

Re: People of ACM – Russ Cox

#21

Earlier quoted context omitted.

I know of schools where that was part of the CS curriculum. I don't know if you couldn't graduate without it, but most people didn't .

> part of the CS curriculum Well, maybe in the old days, when computers were simple (and even then, it would've been a very tough take in a curriculum).

Depends if you consider 1990's computers simple.

On my degree, we had to implement compilers, db system with B-Tree indexes mapping into i-nodes, extend an existing toy OS with cooperative multi-threadeding, and device drivers for PC floppies.

In digital circuits design, we got to create our own tiny CPU, and besides the digital design, some folks did the optional part of actually implementing it on a breadboard.

Among several other projects.

When a Software Engineering degree is 5 years, there is plenty of time for such stuff.

Re: People of ACM – Russ Cox

#22
post #21

Earlier quoted context omitted.

> part of the CS curriculum Well, maybe in the old days, when computers were simple (and even then, it would've been a very tough take in a curriculum).

Depends if you consider 1990's computers simple. On my degree, we had to implement compilers, db system with B-Tree indexes mapping into i-nodes, extend an existing toy OS with cooperative multi-threadeding, and device drivers for PC floppies. In digital circuits design, we got to create our own tiny CPU, and besides the digital design, some folks did the optional part of actually implementing it on a breadboard. Amo…

While not explicitly related to the topic any more: yes, things surely have changed, and I am not sure for the better. I suppose that was also what Cox was saying between the lines at least to some extent.

Re: People of ACM – Russ Cox

#23

A good read. Except this weird remark: "It used to be that if you could get a basic operating system coded and running, that was an indirect proof that you understood the basics of how operating systems worked." How many -- and we are even supposedly talking about students -- have coded an operating system and got it running?

Russ Cox is one of the persons behind Xv6 (https://pdos.csail.mit.edu/6.828/2011/xv6.html), an x86 port of Version 6 Unix, which is the version of Unix described in the famous Lion’s book (https://en.wikipedia.org/wiki/A_Commentary_on_the_UNIX_Opera...). Xv6 was prepared for MIT’s 6.828, an undergraduate operating systems course. In this syllabus from 2018 (https://pdos.csail.mit.edu/6.828/2018/overview.html), students are expected to write significant subsystems in Xv6.

I think many good computer science programs offer a similar course where students make modifications to an open source Unix-like OS like Xv6, Minix, Linux, or one of the BSDs. I took such a course at Cal Poly San Luis Obispo in 2008.

However, I don’t know of any undergraduate programs where students are required to code an entire OS from the boot loader all the way up to basic drivers. Building an OS is part of the final chapter of From NAND to Tetris, so perhaps there might be some universities out there that do require their students to write an OS from scratch as part of the larger curriculum.

Re: People of ACM – Russ Cox

#24

A good read. Except this weird remark: "It used to be that if you could get a basic operating system coded and running, that was an indirect proof that you understood the basics of how operating systems worked." How many -- and we are even supposedly talking about students -- have coded an operating system and got it running?

That's not weird? We did that in my OS class. Also even if you didn't the point still holds that the output was defacto validation of understanding.

Re: People of ACM – Russ Cox

#25

Earlier quoted context omitted.

I know of schools where that was part of the CS curriculum. I don't know if you couldn't graduate without it, but most people didn't .

> part of the CS curriculum Well, maybe in the old days, when computers were simple (and even then, it would've been a very tough take in a curriculum).

You can still write a simple OS on a modern computer, a lot of times its done using a virtual machine though to make iteration faster. It's not like rewriting linux or something, its just standing up the basics of machine abstraction.

Re: People of ACM – Russ Cox

#26

A good read. Except this weird remark: "It used to be that if you could get a basic operating system coded and running, that was an indirect proof that you understood the basics of how operating systems worked." How many -- and we are even supposedly talking about students -- have coded an operating system and got it running?

The bar used to be pretty low. My father spent a few years writing and selling a system/360 time sharing system in the 70s or so. He was not a self-identified computer person, just a physics student who found a way to make a few dollars.

In the 70s and 80s and 90s so many operating systems from lisp machines to ITS to the bsds... People used to write an OS like people write frontend frameworks now.

Post reply on HN