Image Builder Wizard – Quick and Easy Embedded OS Creation – Part 1
* Updated Boot from USB section 10/5/09
With the next version of Windows Embedded Standard, we’ve focused heavily on making it as easy as possible to create the embedded operating system for your device.
As mentioned in a previous blog article, the Windows Embedded Standard 2011 “Quebec” toolset is broken up into two main components: Image Configuration Editor (ICE) and Image Builder Wizard (IBW). ICE is the equivalent of your Target Designer experience in Windows Embedded Standard 2009. IBW is a new development experience that is designed to be extremely simple. With IBW, you can quickly and easily create an embedded OS for your device. With ICE, the development experience is slightly more time consuming, but you have the full flexibility to customize the OS to your heart’s content.
Launching IBW
IBW is essentially a wizard that runs on your target device. If you’ve downloaded or gotten a physical copy of Windows Embedded Standard 2011, you’ll find two disks (or ISOs) that contain IBW (one for x86 and one for amd64).
You’ve got a few options for how to use IBW to build an image:
- Boot from DVD
Stick the appropriate disk into your device (or burn the ISO to a DVD), and restart the device. Your device should boot directly into IBW (you may have to hit “any key” at some point or configure your BIOS to boot from DVD).
- Use Virtual PC and boot from ISO
Virtual PC is a handy (and free!) application that lets you run an OS on top of another OS. You can download Virtual PC here. Once you have it installed, you can click the New… button to create a new Virtual Machine (VM). Once you have one created, select your VM and click the Start button. You’ll see a new window with some BIOS text. On this, click CD then Capture ISO Image… . Now, find your Quebec x86 IBW ISO and click Open. Your VM should now boot directly into IBW.
- Boot from USB
If your target device doesn’t have a DVD drive, it’s also possible to boot IBW from a USB drive (as long as your device supports booting from USB). Here’s how to make your USB drive bootable, and how to copy your IBW files over:
-
- Attach your USB drive to your development computer.
-
-
- From a Windows Vista, Windows 7, or Windows PE 2.0, 2.1 or 3.0, run the DiskPart tool by typing diskpart at a command prompt. The version of DiskPart from Windows XP doesn’t fully support formatting USB disks, so you’ll need to use diskpart from a later version of Windows or WinPE. Note that if you don’t have access to Vista or Windows 7, you can access Windows PE on your IBW disk by pressing Shift + F10 and perform these operations.
- Some commands in DiskPart require you to know the disk number. From within DiskPart, type list disk to see the disks attached to your computer. Find your USB disk (you can usually tell from the size) and remember the disk number.
- Next, type the following commands to make your USB disk bootable. Replace <disk_number> with the number of your USB disk from above.
-
Warning: The clean command completely erases the target disk. Make sure there’s no data that you want on your USB disk, and make absolutely sure that you have the correct disk number so that you don’t erase the wrong disk.
- select disk <disk_number>
- clean
- create partition primary
- select partition 1
- active
- format fs=ntfs quick
- assign
- exit
Your USB drive is now bootable.
-
- On your development computer, do one of the following:
- Option 1:
-
- Insert the Windows Embedded Standard 2011 IBW DVD (or mount the ISO).
- Copy all files from the IBW DVD to the root of your USB drive. You can copy these over manually using Windows Explorer, or run:
xcopy D:\*.* /s /e /f F:\
where D:\ is your IBW DVD and F:\ is your USB drive.
- Option 2:
- Open Image Configuration Editor
- Navigate to the Tools > Media Creation > Create IBW Disk menu item
- This item will copy all necessary IBW files to a folder (or USB drive) of your choosing
- Create the IBW disk for your device’s architecture by selecting the correct Distribution Share and target architecture for your device
- The default installation directory for your distribution share is C:\Program Files\Windows Embedded Standard Quebec \DS for x86 and C:\Program Files\Windows Embedded Standard Quebec \DS64 for x64
- Point the target folder for your IBW image to be the root of your formatted USB disk.
You can now insert your USB drive into your target device, configure the BIOS to boot from USB, and boot directly into IBW from your USB drive.
Using IBW
IBW was designed to help you build your embedded OS as quickly and easily as possible. IBW is essentially a big setup wizard that lets you pick and choose packages, add drivers, and the install Windows Embedded Standard 2011 onto your target device. I’ll give a high level walkthrough below.
Starting Off
The first page of IBW allows you to choose from two high level categories of things to do. The top option, Build an Image, will allow you to start a new configuration. Deploy an Answer File or WIM will bring up a dialog box that allows you to browse for XML or WIM files. If you’ve gone through ICE and created an answer file with all of your packages and settings, you can browse to it here. Alternately, if you’ve run through setup before, installed Windows Embedded Standard 2011, then run sysprep /generalize, and finally imagex /capture’d your image to a WIM file, you can browse to that WIM and re-deploy it with IBW here.
For this walkthrough, we’re going to click Build an Image.
Template or “From Scratch”
After you’ve accepted the EULA, you’re brought to this screen, which allows you to choose the starting point for your image. Your two major options are starting from a template, or creating an image from scratch.
Templates are essentially just answer files with packages in them. Our team will ship several pre-created templates for you to use, but you can also create your own templates in ICE (I’ll go over how to do this in a later blog article). If you choose to start from a template, your configuration will start from the packages in the template. You can click the View template to see a list of the packages in the template. If you think this template is pretty good, but doesn’t quite meet your needs, you can add or remove packages from it later.
If you’d prefer to not start from a template, you can choose the Create a custom image radio button. Your experience will be very similar to using a template, except that you’ll start out with no packages selected.
For this walkthrough, I’m going to choose a template and click Next.
Language Selection
On this screen, you can choose the default language, time/currency format, and keyboard/input method for your image. You can add more languages later in the IBW feature package selection page, but the default is set here. Choose what you’d like and click Next.
Summary Page
“Whoa, I’m done already!?”
The answer is, if you’re happy with what you see on this page, you’re done. If you’re not happy, then you can click the Modify Drivers and/or Modify Features checkboxes and modify your configuration a bit more on the next pages. Otherwise, you can leave those checkboxes blank and click next to go to the disk selection page.
What’s on this summary screen:
Drivers
- Inbox Drivers
- “I didn’t add any drivers. What are these?”
- You’re right. We automatically detected the hardware on your device and mapped them to drivers in Windows Embedded Standard 2011.
- If you’d prefer to use a PMQ file for a different set of hardware, or you just don’t want to add any drivers, click Modify Drivers, and we’ll give you a chance to make changes.
- Unmapped Devices
- “What’s all this stuff?”
- This is a list of hardware we detected on your device, but that we don’t have drivers for.
- If you see a device in this list, for instance a wireless networking card, you can add third party drivers for it later by clicking the Modify Drivers checkbox.
- Feature Packages
- “There’s some stuff I don’t really need in here…”
- These are the packages that are in the template you selected.
- If you’d like to add or remove packages, click Modify Features, and we’ll give you the option to add or remove packages later.
For today’s blog, I’m going to say that this is a satisfactory configuration, leave the Modify Drivers and Modify Features checkboxes unchecked, and click Next.
Don’t worry, I’ll be going into all the gritty details of modifying Drivers and Features in the next blog article. For now though, we’ll keep it simple.
Disk Selection
Because we didn’t choose to Modify Drivers or Modify Features, we’re pretty much done with configuration now.
On this screen, you can select which disk or partition to install Windows Embedded Standard 2011 to. You can delete partitions, create new ones, format them, etc.
See the Create separate system partition checkbox? Checking that box will cause IBW to create a 100MB system partition when you make new partitions or install to unallocated space. This extra partition is required by the BitLocker feature, so if you’ve added the BitLocker package to your configuration, this checkbox will be checked for you.
If you added the Bootable Windows USB Stack package (the USB Boot feature), USB disks will be shown here as available for installation.
Once you click Next, your installation will start.
Installing
Sit back and relax.
Once IBW has finished installing packages, your device will reboot, and installation will finish up. If everything went according to plan, at the end of it all you should have a Windows Embedded Standard 2011 image built to fit your needs.
The End
Look for an article in the very near future that details the slightly more advanced tasks in IBW including modifying drivers and packages.
If you have any questions or comments about IBW, feel free to comment on this blog, and I’ll get back to you.
Thanks for reading, and look for more advanced blog articles on IBW soon!
Technorati Tags: Quebec,Standard,Std09,XPe,IBW
Comments
Anonymous
September 18, 2009
This is a very good tip, especially on making the USB disk bootable. There is a typo on the seventh step. Instead of 7assign, it should be only assign. Regards, WendaAnonymous
September 18, 2009
Thank you- I corrected the typo. We must have Win7 on our mind!Anonymous
September 25, 2009
Regarding the "Bootable Windows USB Stack" option -- I'm not sure if this is a bug, a known limitation or if I'm too stupid to use it. I was attempting to make a bootable Win 2011 USB key installation by extracting the Quebec_CTP1_32bit_Bootable_IBW.iso to the hard drive and running setup on a development (win2k3) machine. I plugged in a USB key which is formatted bootable using UFDPrep from the XP Embedded kit. Ticked the "Bootable Windows USB Stack" addon during Quebec setup, proceeded to pick a drive... only the win2k3 development machine's hard disks show up -- no USB disk install target. My guess is this option is only designed to work when installing on the target machine itself? i.e. burn a disc, plug in the USB stick, boot from dvd.Anonymous
September 25, 2009
Yep, you're correct Sichbo. Installation to USB disks is disabled when you're running IBW from what we call a "downlevel" OS, meaning from within XP, Vista, Win2K3, etc (not from the IBW disk or from WinPE). The reason for this is that whenever you install to a disk using IBW, the boot record on the device you are installing to get updated. If you are running IBW on your everyday computer and attempting to install to a USB disk, the OS would get installed to the USB disk, but on your actual computer, your boot record would get updated. This means that instead of leaving your computer untouched and adding an OS to your USB drive, your computer would be modified so that you'd get a prompt asking you which OS you want to load every time your start up your everyday computer. For this reason, we disabled this option. However, It's good feedback that this is something you would like to do, and we may be able to figure out a way how to safely allow this in the future. Thanks!Anonymous
September 28, 2009
The comment has been removedAnonymous
January 15, 2011
exactly what i was looking for ty haha, they should spell out Image Builder Wizard, didnt know what a ibw was lol - tyAnonymous
December 08, 2011
man i wish Microsoft gave computer classes on how to make an embedded operating system on your own * * (