Intel has beat AMD and created some technology called Vanderpool that assists Virtual Machine Monitors (VMM) with some hardware. Otherwise, software like VMWare has to go through all sorts of tricks to safely run more than one OS on some hardware. I believe that in the near future, everyone will be running a VMM. It is just too useful when dealing with OS failure (which still happens, and is still painful to recover from) and the technology will become commodity (ie. inexpensive). Whether the Vanderpool implementation is good or not, I can’t determine right now.
It is also nice to see the return of the ‘Monitor’ concept. Back in ye old days, there was another layer between the OS and the hardware, it was called the ‘Monitor’. On some systems, people considered it to be the OS, especially smaller systems like the Apple ][.
On larger, much more interesting systems, it was much more powerful, and very very handy when OSes crashed. I remember using a monitor on Vaxes and NeXT boxes. All of the Sun workstations that I had experience with had them as well. With a monitor, you could interrupt the OS, and then do simple operations like:
- investigate the CPU or memory
- run a debugger or attach to an off machine kernel debugger
- reboot the system
Usually, all of this could be done over a serial interface, and it was Extremely Handy when the OS wasn’t responding and it was Very Far Away.
The Sun monitor system was pretty much state of the art, as far as I have experienced. They had all sorts of powerful systems built in. You could peek at or test hardware, do simple network operations, and even sync pages to the disk before a reboot (wow!). I think they even had the ability to view the current process list or the thread list (or maybe it was old NeXT hardware?)
I am not sure, but I think all of the Apple PowerPC systems may have a monitor lurking in their ROMs. Maybe someone who reads this will let me know.
At any rate, systems like this were very important for systems management and OS development. Without them, you had to do a power-off reboot all the time and depend on a lot of kernel printf’s to the console in order to determine the state of the system when it was crashing. The BIOS on a PC was just barely enough to start the host OS. When the OS on a PC crashed, that was pretty much it. So, although PC’s are cheap, they were painful to develop OSes on.