What’s on your desk?

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:


  1. Selfhosting
    – 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
  2. Stress
    – 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)
  3. 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).
  4. Safe-
    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
  5. Debugger
    – 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:

1.      Compaq
Presario R3000 (AMD64 3200+ with 1GB ram) (laptop)

2.      HP
xw9300 (Dual AMD Opteron 200 2.4/ 2 GB ram)

Self Host Machines:

1.      HP
xw4100 (P4 3.2 with 512MB Ram)

2.      HP
tc1000 tablet (Transmeta 1Ghz with 768MB Ram)

Test Machines:

1.      2
HP d530 (2.8Ghz 1GB ram)

2.      Compaq
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