My Windows 7 machine was running a little slow recently. So, I decided to buy a shiny new SSD and upgrade to Windows 10.

After all, users of Windows 7 and 8.1 can get a free upgrade to Windows 10. So why not, right?

Installing an OS

My SSD arrived, and I cracked open my PC when I got home. I took out all of my current (non-SSD) drives and got to work installing Windows 10.

The reason I took out the old hard drive is an old one, one that I’ve tried to avoid for years:

Accidentally wiping the wrong drive

My three hard drives have loads of important data on them. Pictures, documents, music,movies. All sorts of stuff that I’ve created and collected over years.

Some of the things I have stored on these drives are over a decade old and important to me.

Anyway, so I ripped out the current drives and jammed my shiny new SSD in there. I fired up the machine with high hopes. My USB drive with a Windows 10 installation media was already plugged in.

It’s 32GB my USB 3.0 drive (named Anoia), btw

After about 20 minutes, Windows was installed and ready to run.

Issues?

After an hour or so of setting up Windows 10, I shut down to re-install my old drives. And that’s when things started getting janky.

After a few hours of using my computer I started to notice random restarts.

Blue screens where happening a lot.

Luckily Windows 10 is pretty useful when it restarts via Blue Screens, so I got to Googling. Here are some of the issues I had:

  • 0x80070570 – 0xa003 (which is a Windows 10 media creation issue)
  • BAD_POOL_CALLER
  • KERNEL_PANIC
  • KERNEL_SECURITY_CHECK_FAILURE
  • MEMORY_MANAGEMENT_ISSUE

Unfortunately Google wasn’t that helpful. But I kept Googling.

Results?

After a few evenings wasted Googling, I found a few forums posts related to my motherboard (an ASUS P8P68) and UEFI Secure Boot (which is what Windows 10 uses to ensure that it’s boot loader hasn’t been edited by a malicious third party).

UEFI Secure Boot?

An extremely simplified and (not entirely correct) description of UEFI Secure Boot is this:

When you’re computer starts up, the BIOS fires. BIOS stands for Basic Input Output System and is used to do a bunch of things (including a POST – Pre Operating System Test), the main thing is to choose a drive to boot from.

Booting is when your computer loads a tiny piece of software, called a Boot Loader. The Boot Loader tells the computer where on the drive to go to load the rest of the Operating System.

UEFI Secure Boot is a way of making sure that the boot loader doesn’t get altered by anyone (a virus, Lenovo or Dell).

Technically Lenovo and Dell didn’t alter the Boot Loaders of affected computers, but their software was installed at the lowest level and consumers didn’t know.

The Boot Loader on an UEFI machine has been encrypted. The Boot Loader is decrypted by your BIOS, a bunch of things are done to ensure that the Boot Loader hasn’t been altered since it was installed. Then the operating system (which is linked to by the Boot Loader) is started.

And The Point Is?

Well, it turns out that the model of motherboard that I have has an issue with UEFI Secure Boot. I’m still piecing  things together, but it looks like, under a set of very specific circumstances, my Windows kernel was screwed up. And one of those circumstances was related to UEFI Secure Boot.

The Kernel is the core of the operating system.

A Week Later

After about 8 hours of the operating system being installed, something would screw up and the kernel would get chewed up by something.

It can’t be the installer for Windows, because I’m using a completely legitimate installer – I’d paid outright for a Windows 10 install.

I was going to install an upgrade, but it turned out that my copy of Windows 7 wasn’t eligible for the free upgrade.

I don’t believe it was related to some kind of virus or malware. I was running a legitimate install (again something purchased outright) of Bit Defender 2016 each time the OS was installed.

It was the first thing that I’d installed after initial boot, I’d let it update itself and I’d leave it in Auto Pilot mode.

Resolution

After spending a week, trying to get the OS to install and run nicely I’ve given up. For some reason, it kept screwing up and I was getting more than a little miffed.

My choice was:

  1. Buy some new hardware and hope that it fixes everything
  2. Don’t use Windows

Moving to a free operating system seemed like a great idea after a week of struggling to get a stable OS installed.

Anyway, this is all a really long winded way of saying that I’m currently running Ubuntu 14.04.

That’s all, really.

Jamie is a .NET developer specialising in ASP.NET MVC websites and services, with a background in WinForms and Games Development. When not programming using .NET, he is either learning about .NET Core (and usually building something cross platform with it), speaking Japanese to anyone who'll listen, learning about languages, writing for this blog, or writing for a blog about Retro Gaming (which he runs with his brother)