Being the hardware junkie that I am, one of the neat things
about my job is the hardware I get to play with. On the Windows development
side of things pretty much everyone has multiple machines. They are used for
various tasks such as:
– this is the ”eating your own dogfood” you have heard so much about.
Every few weeks, a build is selected as an IDW (Individual Developers
Workstation) candidate and all fixes that may be necessary to do daily
work are ported to that build. After a certain percentage of the selfhost
vote is positive the build is declared IDW quality. All the non milestone
builds (i.e. RC, Beta) that are released externally are produced by this
process (Server goes through a similar but more rigorous process called
– this is the torture test that runs on windows every night, basically to search for deadlocks, test
low memory conditions, operations under heavy io (disk and network)
- Test –
this is where private builds are installed and private testing is done
(where you test your own work before it goes into the main build).
for those times when you get “self-toasted” while selfhosting, it’s nice
to have a machine to work on (email) while investigating the failure or
– in order to do kernel debugging on windows you have 3 options either
serial,1394,or USB 2.0 to connect your debugger machine to the debugee. It’s
not uncommon to have a debugger attached to 16 machines or more with the
help of a multi-port serial card.
One of the unique things about computers at Microsoft is
that there is no mandated standard desktop machine, it’s pretty much left up to
the individual product unit, to decide on what machines they want. The internal
IT department at Microsoft does come up with recommended standard desktops,
which they benchmark and rate, but are not mandated to buy.
This leads to a pretty diverse set of hardware ( from white
box machines to major vendors) which gives us a large amount of hardware
As far as the machines on my desk here is the list:
Main dev machines:
Presario R3000 (AMD64 3200+ with 1GB ram) (laptop)
xw9300 (Dual AMD Opteron 200 2.4/ 2 GB ram)
Self Host Machines:
xw4100 (P4 3.2 with 512MB Ram)
tc1000 tablet (Transmeta 1Ghz with 768MB Ram)
HP d530 (2.8Ghz 1GB ram)
Presario (AMD64 3200+ with 1GB ram).
I run virtual server on the d530’s which allow me to run 4 instances
of longhorn under kernel debugger without all the cables and the need for a separate