Computing Mysteries

From time to time, I’m confounded by computers. I have come to know them reasonably well over the years, at least at a superficial level if not at a more intimate level. However, they can still throw up some error, some noise or some silence that leaves me scratching my head.

Consider this: we bought a commodity server for work some time back. It’s nothing fancy, just Linux running on a Core 2 Duo sitting on a Gigabyte mainboard. The curious thing about this machine is the kernel loading phase. You see, the kernel on this machine apparently doesn’t like USB keyboards very much and simply refuses to boot up if it doesn’t detect a PS/2 keyboard! Of course, this preference is limited only to the initial bootstrapping stage; once the init image is loaded up, I could not only disconnect the PS/2 keyboard but also shred it to bits and the kernel wouldn’t care. It would just use the USB keyboard like nothing ever happened between them. So now whenever I reboot this server, I have to remember to plug in the PS/2 keyboard. Yes, the same one which I haven’t shred to bits.

You can imagine what process of trial and error led me to solve the case of the spurned keyboard.

Then consider my desktop computer at home which feels like it has to compete with my work machines to get my attention. This computer doesn’t even get to the kernel loading stage. It hangs before loading GRUB, the OS bootloader. The culprit? My external Seagate USB hard drive which is always connected to the PC. Apparently, the BIOS on this computer doesn’t like to be connected to this external disk on boot. So I’ve to power off the Seagate before turning on the PC. Of course, it isn’t as simple as that. If I forget to power on the Seagate before Linux starts booting, then the init scripts detect the missing disk and throw a fit. So I am left with co-ordinating this intricate boot up dance sequence:

  1. Power off the Seagate external drive
  2. Power on PC
  3. Wait for GRUB to show up
  4. Press Esc to enter GRUB menu
  5. Power on the external drive
  6. Wait for the beep from the BIOS indicating recognition of the drive.
  7. Press Enter in GRUB to load Linux

Thankfully, this workaround wasn’t that tricky to figure out.

Finally, there’s my old IBM Thinkpad which I recently turned on after leaving it sitting in a cabinet for almost an year. Well, tried to turn on. When powered up, the Thinkpad does nothing but emit four loud beeps repeated four times in case you miss them the first, second or third time. Lenovo says this beep pattern means System board (Security chip). I am not sure that’s very meaningful.

Thankfully, this kind of stuff doesn’t happen often enough for me to consider alternate careers - like that MBA everyone keeps talking about. :-)