News for hackers. Stuff that matters.
Re:Bootstrap yourself to write an OS from scratch by bernardino on Monday February 26, 2018 @09:37PM (#16470709)
Anyone know of any other resources about operating systems for beginners?
Re:Bootstrap yourself to write an OS from scratch by indigochill on Tuesday February 27, 2018 @02:57AM (#16471783)
For an introduction to the theory, Nand2Tetris[0] starts you out with nothing more than an xor gate from which you construct every other logic gate, implement a CPU, then in part 2 you build an OS on top of that. Although that sounds intimidating, it's actually incredibly accessible. I went in knowing nothing about the topic, and was able to implement the CPU by the end of the course, which was a major confidence boost. Also I found the lessons learned from the course (basically, layer simple systems with clear interfaces together to get complex systems) extended well beyond just CPUs and OSes to software design in general.

That uses a very simple educational architecture designed for ease of learning, though. If you prefer a good introductory resource for real-world operating systems, I just finished Georgia Tech's Intro to OS graduate course[1] and found it very accessible as well, and now feel reasonably comfortable with the theory when reading about OS topics elsewhere.

[0] http://www.nand2tetris.org/

[1] https://www.udacity.com/course/introduction-to-operating-sys...

Re:Bootstrap yourself to write an OS from scratch by twtw on Wednesday February 28, 2018 @04:22AM (#16481787)
I haven't done the course, but I'm fairly sure that XOR isn't a universal gate, so you probably don't start out with "nothing more than an xor gate." Based on the name, I would guess you start out with only NAND, which is a universal gate.
Re:Bootstrap yourself to write an OS from scratch by indigochill on Thursday March 01, 2018 @07:04AM (#16491330)
Sorry, obviously yes, it starts with NAND. No idea where I got XOR from.
Re:Bootstrap yourself to write an OS from scratch by Shikadi on Thursday March 01, 2018 @11:09AM (#16493124)
I did nand2tetris something like 7 years ago, it was a pretty fun introduction to digital logic. I remember hitting a point where I couldn't continue after designing the ALU due to either a paywall, something missing, or the Java software being broken. Not sure if it's been fixed, but I'm guessing running in an older JVM would have probably worked.
Re:Bootstrap yourself to write an OS from scratch by indigochill on Thursday March 01, 2018 @07:21PM (#16497689)
I did it last year through Coursera (it's what pushed me to apply for my current master's program) and got the certificate, so I was able to complete everything. I don't remember there being any special measures taken on my end to get it to work. Dunno what the issue was, if something was fixed in the intervening time, or what.
Re:Bootstrap yourself to write an OS from scratch by tlrobinson on Monday February 26, 2018 @11:15PM (#16471036)
I haven't read it but I've seen https://github.com/0xAX/linux-insides posted here a few times.

Also https://littleosbook.github.io/

Re:Bootstrap yourself to write an OS from scratch by bernardino on Monday February 26, 2018 @11:31PM (#16471086)
Sweet, this will help (hopefully this will also help when I come around to taking a formal operating systems course). Sorry for the noob question but I should really migrate over to a Linux-based computer if I would like to work with operating systems extensively, right? If so, any recommendations in regard to computers? Right now for all my software needs I use Mac OS.
Re:Bootstrap yourself to write an OS from scratch by tlrobinson on Tuesday February 27, 2018 @01:05AM (#16471415)
I haven't done much myself, but I think a lot of people working on hobby operating systems use emulators or virtual machines to make development easier. Qemu and VirtualBox are popular and both run on macOS.

If you want to hack on your main operating system, then yeah, you'll probably want to switch to Linux, but I wouldn't do that yet.

Re:Bootstrap yourself to write an OS from scratch by bernardino on Tuesday February 27, 2018 @03:15AM (#16471864)
You're right, good call.
Re:Bootstrap yourself to write an OS from scratch by josephxanderson on Tuesday February 27, 2018 @01:16AM (#16471446)
I think you should be able to get away with using macOS. Most tools you’ll need are for Unix systems anyway.

If you were on Windows, that would be a different story.

Re:Bootstrap yourself to write an OS from scratch by voltagex_ on Monday February 26, 2018 @09:51PM (#16470764)
What do you mean? There's lots of C tutorials, but the Mac OS command line is bash.
Re:Bootstrap yourself to write an OS from scratch by bernardino on Monday February 26, 2018 @10:00PM (#16470792)
Sorry about the confusion, I just read the preface:

> This book is will be especially beneficial to students who’ve just finished their first C/C++ course.

That's what I was looking for.

Re:Bootstrap yourself to write an OS from scratch by voltagex_ on Monday February 26, 2018 @11:19PM (#16471050)
http://www.learn-c.org/ looks good, I've also got https://learncodethehardway.org/c/ but not everyone will like that style.
Re:Bootstrap yourself to write an OS from scratch by bernardino on Monday February 26, 2018 @11:32PM (#16471094)
Thank you! I have a general grasp of C but these will help. I also have The C Programming Language by Brian Kernighan and Dennis Ritchie - to which I now have a exciting reason to get around to.
Re:Bootstrap yourself to write an OS from scratch by squarefoot on Monday February 26, 2018 @11:43PM (#16471122)
You may also find interesting the Beej's Guides. https://beej.us/guide/
Re:Bootstrap yourself to write an OS from scratch by vkuruthers on Tuesday February 27, 2018 @12:29AM (#16471287)
+1, those guides are excellent!