Operating System metaphors: Rooms and Doors

I am a big believer in the power of metaphor and analogy in software development. While these things can certainly be misused, they are also a useful way of viewing a design from different perspectives to gain fresh insight. Some metaphors are so common that we even lose sight of the fact that they are …

Continue reading ‘Operating System metaphors: Rooms and Doors’ »

Raspberry Pi with Ham

Introduction A few days ago I was suffering the lack of output from a bare-metal Raspberry Pi – very little as output to hint what is going on inside the electronics. I had struggled through the first few “Baking Pi” tutorials and got as far as programming the GPIO to switch the “OK” LED on …

Continue reading ‘Raspberry Pi with Ham’ »

What is an “operating system”?

Since deciding to have a go at producing my own operating system for the Raspberry Pi, one thing has been going round and round in my head. What exactly is an “operating system”? According to the introduction to the “Baking Pi” tutorials from the University of Cambridge: An operating system is just a very complicated …

Continue reading ‘What is an “operating system”?’ »

TDD and operating system development

Well, I’m back from my travels, and I did indeed do a lot of thinking. And a lot of driving. At least eight hours behind the wheel plus other odds and ends of time gave me plenty of opportunity to mull things over. When I had a chance, I scribbled down notes on notepads and …

Continue reading ‘TDD and operating system development’ »

Baking Pi, part 1

Having decided that I wanted to embark on a bare-metal adventure, I thought it best that I prepare myself a bit. Ideas are already buzzing around in my head about what and how I might approach this problem, but to start with I think that following in someone else’s footsteps might be a good idea. …

Continue reading ‘Baking Pi, part 1’ »

Interlude: a bit of history

Bear with me if you are here for insights about Raspberry Pi development. This will all come together eventually. I hope. In the early 1980s I studied Computer Systems Engineering at the University of Warwick. During the second year of the course I shared a student house with three friends and we had all sorts …

Continue reading ‘Interlude: a bit of history’ »