I’ve had this rant for a few years now, and I repeat it every time I need to reboot my computer or phone for a system update. Why, in this day and age, should I need to reboot for a system update? The updates should just happen automatically in the background (with my permission, of course) without disrupting my work. The technology to do this has existed for decades. It’s a lot of work to get this to work seamlessly for legacy PC programs, but smart phones run apps in a more controlled environment where this sort of thing wouldn’t be difficult.
Now RIM, maker of BlackBerry smart phones, has purchased QNX, maker of highly robust real-time operating systems. Since 1980, QNX is what you used if your computer happened to be running a nuclear power plant, medical device, car, or anything else that must not fail. System updates don’t even slow it down.
The trick is that QNX is a microkernel operating system. The kernel (the part of the OS that is always running) is tiny. Traditional kernels contain all the code for handling the video display, the hard disk, the keyboard and mouse, and various other services that user-visible programs use. A microkernel is more like a traffic cop, handling messages to and from the programs that provide those services. Need to update your video driver? A new video driver program gets installed, and takes over from the old one. No reboot required. The only thing that requires a reboot is a change to the microkernel itself. And because the microkernel is so small and simple, there’s not much room for bugs to hide. And QNX has had 30 years to shake the bugs out. If RIM decides to go with a no-reboot-ever policy for system updates, they could do it.