Hacker News new | past | comments | ask | show | jobs | submit login
M 122: Advanced Operating Systems (2015) (uoa.gr)
97 points by kercker on June 22, 2016 | hide | past | favorite | 16 comments

So this is an advanced course in operating systems, NOT a course in advanced operating systems. Most of this is state of the art circa 1985-1995. Still potentially worth learning, but the class title can be severely misleading. I was expecting cutting edge thought on modern OS design.

Given that mainstream OSes still need to catch up with the use of Xerox Star architecture in terms of safety and developer tooling I find that many students still have a lot to learn outside the UNIX mentality many of these courses have.

And this course does exactly that by having some Mesa related classes.

I don't know how course numbering works there but a course with a 122 number here would be a first-year, non-gen-ed class. If you look at the syllabus, most of the material is pretty basic so I'd also question the idea that it's an advanced course.

What's cutting edge thought in OS design?

less and less operating system?

(I say that tongue in cheek, looking at unikernels)

Glad I came to the comments first. Thanks for this.

They are teaching about Mesa!

At least there is hope that other CS students learn about alternative systems programming languages.

just randomly looking at it.... http://cgi.di.uoa.gr/~mema/courses/mde518/papers/ousterhout-... seems like it's far too opinionated rather than educational, should keep to the job of explaining the problems of threads, not to put people off them by saying they are bad. That kind of thing can end up being burnt into a students mind. Better to promote other solutions, like abstractions over concurrency or languages with better abstractions. I'd hate to think we are training people to avoid concurrency when we are getting more and more multi processor systems

That's a classic paper to read for an operating systems class. Generally in an advanced OS class you read papers and discuss them critically. The value is in the discussion.

Here is an example syllabus from Stanford's CS240: https://web.stanford.edu/class/cs240/old/sp2014/. You can see that this paper is listed, along with a paper that states the opposite opinion ("Why Events are a Bad Idea").

I think the paper is slightly too opinionated but remember it was 1995. No stm in haskell yet. No .net or javar threading libraries. (Ok... first version of java just released.) I wonder what nice abstractions existed then?

Perhaps the papers view was balanced for its time. Also maybe context switching was super expensive on a 286 or whatever was available then.

Windows and I believe Linux use message loops for UI and do fine. You can use callbacks for up bound stuff. Probably ok for a lot of applications.

As an embedded developer, should I spend time on this course? What are my gains if I do so?

As a fellow embedded developer who has read most of the materials, I will tell you this:

The operating systems class you took should have covered the core concepts in the papers.

In my opinion, most of the papers talk about how those core concepts came to be in the golden age of Operating Systems Research when it was booming in the same way AI/Machine Learning/Big Data is booming post 2000s. Read it at your leisure if you are interested in the backstory.

That said, the class is of teaching critical reading, critical thinking, presentation, proper discussion and critiquing of academic papers: just that the topic happens to be Operating Systems.

If you are interested in RTOS (real-time OS) courses I recommend checking edX for the expected September 2016 arrival date of a followup to this course:

edX course page: https://www.edx.org/course/embedded-systems-shape-world-utau...

More information: http://edx-org-utaustinx.s3.amazonaws.com/UT601x/index.html

The excellent quality of the above course - which includes programming actual hardware (you have to invest about $50 for components) - raises the expectations for that upcoming course.



The page is already up for the new course "Real-Time Bluetooth Networks - Shape the World":


> In this lab-based computer science course, explore the complexities of embedded systems and learn how to develop your own real-time operating system (RTOS) by building a personal fitness device with Bluetooth connectivity (BLE).

- Enhance your embedded system skills

- Write your own real-time operating system

- Design, develop and debug C code

- Implement a personal fitness device

- Communicate using Bluetooth

More info: http://edx-org-utaustinx.s3.amazonaws.com/UT601x/RTOS.html

"Papers"? Seriously?

This is not Biology, you should be writing patches, not papers.

In biology you should be dissecting frogs not papers.

Those who are ignorant of history are doomed to repeat it.

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