5 ms·
How To Develop A Basic Operating System On The Raspberry Pi
- simarpreet007 14y agoStarted this last night, looks good so far!
- jnadeau 14y agoI keep putting it off and leaving the link in my bookmarks. It seems like a fun little project.
- jws 14y agoUnfortunately, with modern hardware a "build an OS" tutorial goes nicely in small steps, until you hit "need a USB stack to get input". Suddenly you are in the land of voluminous specs and large amounts of code to get anything working.
- bengl3rt 14y agoYeah, why not just go for a simple UART terminal?
- asb 14y agoThis is why the fact that Alex Chadwick has written just enough of a USB driver for HIDs is such a useful contribution.
- hermanhermitage 14y agoUnrelated to USB, but if would Be great if someone added the recent source release to show 'bare metal' use of the VideoCore services...
- zwieback 14y agoRight, which is FTDI's USB interface chips are so popular. Everyone has used USB-serial but there's also some USB host controllers with MCU-friendly interfaces.
- sounds 14y agoI realize this is just one data point, but I implemented a full EHCI (USB 2.0) stack in 3 weekends. Then I implemented a simple mass storage driver in 2 more (that was the hardware I was targeting). My HID implementation isn't worth talking about but it was helpful to test interrupt transfers.
- krichman 14y agoI'm assuming by the fact that it took you a few weekends, you are beyond the level of learning about OS's as an undergrad, though :) I'm sure it is doable, but the point is probably that it's a non-trivial detour from writing a basic OS.
- sounds 14y agoYes, of course. I'm all for teaching as many undergrads as possible about writing an OS - so many valuable lessons that aren't easy to teach in any other context. Still – there are always a few who really take off. Such might enjoy a tutorial that walked through doing a full USB stack. Maybe... :) I feel compelled to speak for the over-achievers because they may not even realize they could go so far, so fast, until someone points them in the right direction. It's fun to watch.
- sown 14y agoThat sounds neat. If by chance you ever write a tutorial I'd be all ears! :D
- sounds 14y agoI thought about a tutorial or a step-by-step but EHCI controllers vary widely by platform, and going with the "least common denominator" means doing it for x86... I could never convince myself it was worth a blog post. Maybe if the RPi becomes a favorite for OS development, I might do it. You could always poke around on http://osdev.org http://osdev.org and see if you find some useful stuff there. :)
- 14y ago
- lambda 14y agoThe RPi has a serial port, though it takes a custom cable to hook it up. You can do basic I/O with that, and much more simply than a USB stack.
- JosephRedfern 14y agoWhat's with the test parameter in the URL?
- uxp 14y agoIt's a cheap hack to get around the de-duping system for submitted links. This article was submitted 53 days ago, with a good discussion about it: http://news.ycombinator.com/item?id=4467612 http://news.ycombinator.com/item?id=4467612
- AceJohnny2 14y agoThis is the kind of stuff that I've been waiting to see on the Pi. It was touted as a "learning tool" by the foundation, but was co-opted by the hacker community as a cheap but full-fledged computer to hack with, completely overshadowing the teaching tool aspect.
- throwaway1979 14y agoI'm surprised you say "co-opted" for a couple of reasons. 1) I thought the intent of "learning tool" was teaching novices how to program in Python. This has huge ramifications in developing countries. In a mid to high income family in the US, it isn't clear if the raspberry Pi is the right computer to give to a child in order to teach them basic programming. 2) The hacker community's exploration is not devoid of learning. I'm a software guy and I've learned a great deal about hardware due to the Arduino and the Raspberry Pi. I don't think this overshadows the teaching aspects in any way.