Over the next several blog posts I’m going to be teaching about the Windows Preinstallation Environment (PE) 3.0 minimal operating system. This is the 4th iteration of this system, previous versions were 1.0 (pre-Vista/Longhorn), 2.0 (Vista), 2.1 (later Vista/Server 2008) and now 3.0 (Windows 7).
What is it?
From the Windows PE User’s guide:
Windows® Preinstallation Environment (Windows PE) is a minimal operating system designed to prepare a computer for Windows installation. It can be used to:
- Start a computer with no operating system (a bare-metal system)
- Partition and format hard drives
- Copy disk images or initiate Windows Setup from a network share
Windows PE is available as a stand-alone product to customers with the proper licensing agreement. It is an integrated component of many Windows Setup and recovery technologies, including Setup for Windows® 7and Windows Deployment Services (WDS).
Windows PE 3.0 is the latest release based on the Windows 7 operating system.
What do we mean by minimal? To answer that, let’s take a look at the history of operating systems (OS) and how they developed.
Originally, up through the late 1960’s, operating systems where made for a specific set of hardware. A mainframe’s OS was made specifically for the hardware created for that mainframe. Every mainframe vendor made an different OS for their different hardware models.
The UNIX OS, developed in 1969 by Dennis Ritchie and Ken Thompson of AT&T’s Bell Labs, was the first truly portable OS. Portability is defined as the ability to run on different hardware sets. They wrote UNIX in a high level language (The “C” language, which Ritchie also wrote) compiled to the instruction set on the machine the wanted to install it on.
After that, portability became the rage. Numerous university computer courses were taught thanks to UNIX and old, cheaper hardware.
When IBM came out with the PC in 1981, they created it using off the shelf parts. Because of this they could not patent the design, and the one thing they didn’t have was an operating system. Additionally, the 8086 CPU was 8-bit and could not run in protected mode, so UNIX couldn’t be used. That’s where Bill Gates came in. He licensed MS-DOS to them. What this meant was, a.) others could clone similar systems to the IBM PC, and b.) they had a ready OS to run it--MS-DOS. This led to an explosion of growth to the computer industry, and basically ushered in our modern age.
Windows made it’s debut by the end of the decade, and the PC had a full blown Graphical User Interface (GUI) OS. Back in the day of DOS, the entire OS could fit on a 5 1/4 inch floppy disk. When Windows 3.0 came out, it fit on a couple of 3 1/2 inch floppies. Then with Windows 95, it fit on a CD-ROM disk. So OS’s, specifically Windows, kept getting larger and larger, and more complex. Much of this size and complexity comes down to the GUI. Much of the code in the OS is used to create the GUI and maintain it—creating and sizing windows, painting the screen with color, even integrating sound.
Of course DOS doesn’t do all that. It doesn’t do windows or any GUI. However, in order to install an advanced GUI OS one can either boot from a CD or DVD, or install over the network. Installing over the network requires an OS already present. So people used DOS to get a network install going. The problem with DOS is it’s only 16-bit, and cannot use modern hardware’s 32 and 64 bit drivers. So if you have a new network card, DOS won’t work for a network install.
Hence Windows PE. It will work on any bare metal system, that is, a system without any OS installed on it. It boots into a RAM disk so the hard drives present on the PC are available for partitioning, formatting, and, of course, OS installation.
In our next lesson, we’ll learn more about the reasons to use Windows PE.