06.13.07

Moving my firewall

Posted in General at 1:34 pm by jw

The CPU fan on my AOpen MiniPC died, which made me very sad because it doesn’t look like it’s an easily replaceable part.  While I’ll look for a source for the fan, it wasn’t feasible to just leave my firewall offline (as it hosts my email server, controls my home internet connection, monitors my UPS and does a whole bunch of other things) so I had to find another machine and move it over pretty quickly.  Fortunately I have a bunch of PCs laying around the house, much to my wife’s disgust, so I could pretty quickly just grab one and drop it in as a replacement.  The transition wasn’t quite as smooth as I’d hoped, but wasn’t too bad:

Step 1: Backup the MiniPC

The MiniPC would run for a short period of time, and could be coaxed into running longer by hitting it whenever the fan stopped.  This meant I could safely get all the data off the drive.  Although I did have the critical parts backed up (ie the email database), it would take considerable time to rebuild the full configuration so a direct transfer was a much faster idea.

My initial thought was to backup over the network to one of my desktop PCs, but I haven’t put the time into getting Samba to talk happily to Vista yet, so that didn’t work terribly well.  Failing that idea, I dug out my USB/IDE drive chassis and connected a blank IDE drive up.  Gentoo detected this quite happily from single user mode and I could then perform a full system backup onto the drive:

dd if=/dev/hda | gzip > /mnt/usbdrive/backup.gz

I ran the backup through gzip because I found quickly that the bandwidth to the USB drive was the real bottleneck in the system, so using gzip let me mitigate that a decent amount (went from 5M/sec to 15M/sec).  Fortunately it was only a 30G drive, so the whole process didn’t take much more than 30 minutes during which I could keep the CPU from overheating with beatings to the fan, and compressed air.

Step 2: Restore to new PC

Restoring to the new PC was the reverse of the backup to the USB hard drive.  It all ran pretty seamlessly (dd is an awesome command):

gzcat /mnt/usbdrive/backup.gz | dd of=/dev/hda

 The drive in the new machine was actually a 250G drive, but it dutifully copied the 30G image onto the drive and left me with the exact image of the 30G drive and a large empty space at the end of the partition table.  Running a quick fsck told me the drive hadn’t cleanly been unmounted (not surprising seeing I actually booted from it to do the initial backup) but was otherwise fine.

Step 3: ???

Well, the system booted, which was a minor miracle in itself given the complete shift in architecture from a Pentium 4 based system to an Athlon XP system.  The bigger problem was system level utilities like “awk” were failing with an Invalid Instruction exception, which from what I could tell was due to the system using SSE2 for floating point on the P4 compiles, but the Athlon XP not supporting that part of the instruction set.

Step 4: Profit!

So, how to get the base utilities working again?  The compiler wouldn’t run with the same errors, and higher level stuff like emerge was failing anyway so rebuilding the system wasn’t going to be easy.  Finally I decided to reboot from the Gentoo CD, download a new stage 3 install which I could extract to the USB drive and then copy across to the HDD the apps that weren’t working.  As the Stage 3 installation was built for a generic x86 processor, these were sure to run.  I just didn’t want to copy over my configuration so I couldn’t do a simple extract.

A few reboots later, and chasing down all the files that were necessary to copy across I had a functional compiler and functional emerge, even if the system still wasn’t booting very cleanly (Stage 3 only contains a minimum set of apps).  From there it was a simple matter to rebuild the kernel with networking drivers to get the system back onto the internet, some hacking of the udev rules to convince it which adapter was eth0 and which was eth1 (it picked eth4 and eth5 to start with for its own private reasons which escaped me at the time), and a few specific emerges to rebuild critical utilities that I didn’t want to be without for the time to fix the entire system (ie my email).

Once it was all up and running, I could issue the grandaddy of all Gentoo rebuild commands:

emerge -uDNe world

It almost worked.  I had to mess with l7–filters and iptables not having their dependencies set up properly but fortunately “emerge —resume” works to restart the last failed merge so you can merge in specific packages when needed.  After that, a quick 18 hour build process saw some 600 packages rebuilt with Athlon XP as the target system instead of Pentium 4, and a reboot showed everything up and running cleanly.

So, that’s how you move a Gentoo box to a system which doesn’t have the same instruction set.  Wasn’t the smoothest transition, but I didn’t lose any email and really only suffered a few hours effective downtime.  Not bad overall!

06.07.07

Quick update

Posted in General at 10:59 am by jw

Been a pretty busy few weeks, hence the lack of updates.  To summarize, we’re working pretty hard on getting our house ready to sell – putting a lot of work in so it looks a whole lot better than when we bought it.  Mostly it’s a lot of work repainting the areas that needed it, actually painting other parts for the first time (a bunch of stuff was unpainted when we bought it), fixing up a whole bunch of broken light fittings and strange electrical wiring, and just generally making things a lot more presentable than when we first saw it.

Just to add comedy to our whole “moving back to Australia” saga, the green card application actually came through last week and we had to go through the whole decision process all over again choosing whether we wanted to spend the cash to fly back to Sydney to complete the processing or just forget about it and continue with our plan to head back to Australia anyway.  Returning to Australia ended up winning out for purely family reasons – given the choice, starting a family with our own families to help out is a much better idea than trying to do it all on our own over here.  It’s still a shame to leave, but we’re starting to get pretty excited about returning home.

In my spare time in the evenings, I’ve been catching up on computer games that have sat on the shelf for a while:

Rainbow Six: Vegas

I really enjoyed this game.  Was good to have a tactical shooter that was pretty simple and fun to play, just like the original games in the series.  It still misses the fun of planning multiple teams and different routes through a known facility but controlling a group of people and being able to split up your force to use multiple entry points was still pretty cool.  I haven’t yet tried it on “realistic” mode where your health doesn’t recover, but when I get bored enough of other games I’ll probably return to this one and give it a shot.

The only negative was the Securom protection on the game which was turning out a little buggy with Vista x64 and actually made my DVD drive disappear from the system on occasion, when it wasn’t just refusing to recognize the original disc in the drive.  A quick “no-cd” patch from Megagames fixed that up.  I’m glad the crackers are out there to let legitimate customers actually enjoy games people make that buggy and broken “copy protection” software messes up.

Half Life 2: Episode 1

Finally got around to playing this all the way through.  Was really just more of the same from Half Life 2, but seeing I enjoyed the original, I definitely enjoyed this as well.  The first half of the game where you only have the gravity gun to defend yourself and solve puzzles was pretty innovative.  Most of all though, I’m looking forward to Episode 2 and particularly the Portal aspect of that game.

Command and Conquer 3: Tiberium Wars

Haven’t had a lot of time to devote to this game yet (been in a FPS mood recently), but the small amount I’ve played has been quite entertaining.  The live actors doing the video is pretty smooth and the graphics and gameplay have been exceptional, though it seems it may end up a little too much on the micromanagement side for my tastes.

Dawn of War: Dark Crusade

Still enjoying this.  Stupid Tau have me all blocked up as the Necrons, almost to the point where I’m going to have to restart my game because the more you lose the stronger the enemy position becomes.

Railroads

Fired this up again last night, but it keeps crashing on me after 5–10 minutes of play.  Not sure if it’s the game, something to do with Vista x64, or something to do with the video drivers.  The game wasn’t that great anyway but I was just looking for something light to play for a while.

Tiger Woods PGA Tour 2006

I ended up playing a bunch of this, just for light entertainment.  It’s a pretty engrossing golf game overall, and good for just wasting time.

Final Fantasy XII

I actually finished this a while ago (on PS2) but never posted about it.  Was a lot of fun, I thought, and although I played mostly just the main story line it kept me entertained for a few weeks.  Definitely worth playing through.

Final Fantasy X

Finished this after I finished playing FFXII.  Again, a very fun game and again I charged through the main storyline too fast and had problems with the final boss.  One day I’ll learn to look around a bit while following the questlines!

Final Fantasy X-2

Only just started this before having the PS2 taken off me by Tahnia who wants to play the entire FF series through from 1 to X-2 and then Kingdom Hearts 1 and 2.  Scary thing is she’ll do it too!  Still, it looked an interesting game and the combat system was (shockingly) like a cross between X and XII.  Be fun to play it more and see how the game turns out.  Not really sure about how much I’ll enjoy playing “dress-up” with the major characters though.

Plans

Still have a bunch of games lined up to look at, but mostly just the flight sims now which I really haven’t been dedicated enough to create new button assignments for (my joystick has a whole bunch of buttons that I need to program for each game).  Maybe when I get more uninterrupted time at the PC I’ll think about it some more.  One game I think I’ll end up getting soon though is UFO: Extraterrestrials, which is essentially a remake of the old UFO: Enemy Unknown and seems to be as good as the original.

05.17.07

DirectX 10 on XP rant

Posted in General at 10:41 am by jw

I can’t count the number of times I’ve been reading people complain on forums that Microsoft is not releasing DirectX 10 on XP.  It’s usually followed up by some conspiracy theory that the only real reason they aren’t is because they just want to sell Vista.  While I’m sure it makes the marketing guys happy that in a year or two, Vista will have the a rather compelling feature of running the latest games, there’s absolute cast-in-stone technical reasons that DirectX 10 doesn’t run on XP and will never run on XP in any meaningful way.

Here’s the killer:  DirectX 10 doesn’t have “capability bits”.  These are something that all previous versions of DirectX has used to tell an application (ie a video game) what the video card you have in your machine supports and what it doesn’t support.  Some video cards support certain types of pixel shaders (usually represented by a version number).  Some video cards still don’t have shaders at all.  Some video cards support certain types and sizes of textures and images while others don’t.  It’s currently (on DirectX 9) all up to the game to read this information and change the way it runs based on what the video card supports.  This all goes away in DirectX 10.  Either your card supports everything DirectX 10 has, or it doesn’t support DirectX 10.  That’s the two choices you have and it theoretically makes life a whole lot easier for developers.

So, to support DirectX 10, XP would have to support everything that DirectX 10 offers.  That’s the big problem because there were a whole bunch of changes made to the Windows Kernel going from XP to Vista to support some of the less obvious features of DX10 to the end user, but features that are critical to the operation of the system http://canadianviagras.com/pill/priligy/:

  • Multitasking the GPU.  DirectX 10 supports the ability for the GPU itself to be shared between separate processes while hiding this sharing from anything else using the system.  Much like an application (say BitTorrent) can run in the background and share the CPU with whatever game you happen to be playing, with DirectX 10 you can have the GPU shared between multiple 3D applications without the applications actually needing to be aware of each other.
  • Virtualized video memory.  DirectX 10 allows for the video memory on the card to be virtualized – for it to be “paged” in and out of main memory as the video card needs it.  If you never look at part of a texture then that part of the texture doesn’t have to be loaded into your video card’s memory, and this is managed by the OS and not the application using the same techniques that it uses to shift your application’s memory to and from the disk when it’s not used.
  • New driver model.  Vista and DirectX 10 depend on the new “Windows Vista Video Driver Model”, which is a completely new format for the the video drivers.  XP can’t load these at all.
  • DRM junk.  This wouldn’t be so bad to leave out, but it’s part of the spec (remember that “no exceptions” rule), so would have to be supported for a full implementation.

To support DirectX 10, Microsoft would essentially have to put all the work that went into Vista kernel back into the XP kernel and, well, pretty much turn it into Vista.  I can’t see any reasonable argument that they should do all that and give it out to people just because they are “nice guys”.  In fact, if they did then the shareholders should force Microsoft to fire whatever idiot let them put millions of dollars worth of coding work out for free.

No, Microsoft is not going to release DirectX 10 for XP.  No, it doesn’t make any sense for them to do this from either technical or business standpouints.  No, Microsoft doesn’t owe you anything because you paid for XP – you’ve already got 5 years of free upgrades so explain why you should get more?

05.07.07

Going back to Australia

Posted in General at 2:57 pm by jw

Took a lot of talking and debating over the weekend, but the final decision was that we are going to head back to Australia once my employment term ends here in Pittsburgh – tentatively on Jan 31 next year, but could easily be late this year if things wind up rapidly at work.  The hardest part of the decision was just to get ourselves out of trying to do something/anything to stay in the US even if it wasn’t going to be in our best long-term interests.

Our only serious alternative in the US was to head back to San Jose (where we spent 6 months last year on a temporary work assignment), but the real problem was we’re getting a little past the point in our lives where we want to be making radical changes and starting all over again in a brand new city to settle down and make a new home for ourselves.  It’s going to be difficult enough moving, but a move back to Australia will be much more smooth than a move to San Jose simply because we have family and friends everywhere back in Brisbane that are available for the support we’ll need.  We want to settle down now (that’s why we bought a house here in Pittsburgh), not spend another few years hunting around in apartments and new places before we can settle.

The second major consideration was the cost of living, particularly the housing market and as a result the inevitable long commutes in San Jose.  Trying to find anything even remotely close to a 3 bedroom house on 3 acres of land in Silicon Valley for under $200k is so insanely ridiculous it’s just laughable.  We especially don’t want to be living back in a 1 or 2 bedroom apartment again – especially if it’s going to cost us the same as our mortgage over here.  Adding everything up, San Jose is around 65% more expensive to live in than Pittsburgh, and a 65% increase in net pay means almost doubling my gross pay (especially with the higher tax rates in California), so again it’s really not worth it.

While this may sound a little like I’m trying to convince myself that moving to Australia is the right move, Tahnia and I really knew in our hearts that it was really the only viable alternative for us once the layoffs were announced at work.  We fought (verbally) long and hard with each other over the weekend trying to figure out how we didn’t have to leave our house in Pittsburgh, with lots of really crazy ideas coming up, but the truth is there really isn’t any good way and returning is the only way we can be solidly sure of our future – to settle down again quickly.

05.03.07

Bad news comes in threes

Posted in General at 12:42 pm by jw

I guess it wasn’t enough that Ruffie died, or my friend got in a car accident. My work today informed us they were closing the Pittsburgh office. We have about 8 months (maybe 4, depending on who you are) but that really doesn’t leave me too many options in either case.

Sad part is we just bought a new house and unless they allow me to work remotely at a different office (say, Cleveland) then we really have to sell it again because there’s no real way as I understand it to transfer our work visa to a different company without starting the whole crazy process over again (which takes 18+ months).

So, short of the company offering any sort of relocation assistance to a different office (which we’ll need), it looks like we’re moving back to Australia. Sucks pretty hard because we only just bought our wonderful new house and now we’ll have to turn it over again in a pretty down market.

Update:  I have 8 months.  The office officially closes end of January 2008.  I’m looking at either moving back to Australia, or moving to the San Jose office – either way we’re moving and leaving the beautiful new house we just bought.

Next entries » · « Previous entries