Moving Vista to a new hard drive

I have a Toshiba Portege M400 which is a couple of years old now, but it is not too bad a spec (Core 2 Duo 2.00 Ghz and a Tablet), so when I ran out of disk space I decided to upgrade to a larger drive rather than looking for a new machine. The M400 is slightly unusual, in that you can install a second drive in place of the DVD (which I rarely use), so I was able to fit the new drive in this bay while booting into the old system. The old drive is 80GB, and the new one 250GB. My task was to clone the old Vista installation onto the new drive.

I decided to use Drive Snapshot, which is able to make an exact copy of a running Windows installation. I created two partitions on the new drive, one just a little bigger than the old drive, and one to hold the Drive Snapshot backup files. Then I backed up the old drive to the second partition, and restored it to the first. Next, I removed the old drive (which remains as a backup),  moved the new drive to the permanent internal position, and started the system.

No joy. Windows tried to boot but reported a missing winload.exe. I presumed it was looking in the wrong place. I booted from a Vista DVD and chose the Repair option. There was a slight complication: Vista setup needs to load the Toshiba RAID driver in order to see the drive, but fortunately I have this on another CD. The Vista repair fixed the boot configuration, and I restarted thinking all would be well.

Still no joy. Well, partial joy. Vista booted, and I logged on, but only to a blank light blue screen. Using Task Manager I could start Explorer, but Windows told me it was using a temporary profile. I figured out the problem: drive letters. The system drive was meant to be C, but when I created the partition I had assigned it the letter K. I though that Drive Snapshot’s sector copy would overwrite that assignment, but apparently not. In this state, Vista could boot OK but not much worked. Even RegEdit and the disk management utility failed to open, reporting a “path not found” error.

I found some useful information on the problem here. It looked as if I could fix it by editing the registry, if I could work out how to do so. I have a little experience with this, so I knew roughly what to do. I booted again from the Vista DVD, and opened a command prompt. The minimal system recovery version of Windows does have a registry editor, but if you run RegEdit you get the registry of the setup Windows, not the one in the system you are trying to fix. The solution is to use Load Hive to edit the target registry. I found the key HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices and deleted all the entries except Default. Rebooted, and everything worked perfectly.

One task remained. I ran Disk Management, and deleted the spare partition which contained the Drive Snapshop backup files. Next, I right-clicked the Windows partition, selected Extend Volume, and expanded it to fill the entire drive. Success – now I have 155GB free for new versions of Visual Studio, Adobe CS4, Delphi 2009, VirtualBox disk images, interview recordings, and all the other stuff which occupies my time.

Should I have done a clean install? Now I have a spare drive I might do one as an experiment, but considering the work involved in reinstalling everything, plus the fact that there is nothing really wrong with the current installation, I am not keen.

Overall it did not take long, and while there may be better utilities out there for this particular operation, I’m happy with the results from Drive Snapshot.

Technorati tags: , ,

What’s new in .NET Framework 4.0?

Good question. There are a few things we know about Microsoft’s managed application runtime and class library:

There will be major updates to the Windows Communication Foundation (WCF) and Workflow Foundation (WF). According to this announcement along with this post by Steven Martin we are going to see “better support for Web 2.0 technologies like REST, POX and ATOM” and a 10x performance increase in WF.

The table shown here also mentions a bigger role for XAML:

Seamless integration between WF and WCF and unified XAML model. Build entire application in XAML from presentation to data to services to workflow.

There will be a new application server codenamed Dublin, which hosts WF/WCF applications and manages messages, long-running transactions, state management. Dublin extends Internet Information Services (IIS) and will run on Windows Server – probably Server 2008 only.*

Dublin supports Oslo, which is Microsoft’s latest attempt at model-driven development. I guess Dublin is the host for Oslo applications, as this post implies. XAML is a good fit with modelling, because it is both declarative and well-suited for visual representation. Models do not have to be visual, and Oslo includes a new textual language which could also be based on XAML (?), but nevertheless there is synergy between modelling and visual designers.

Putting this together, we have a new take on Microsoft’s end-to-end stack, developed in Visual Studio with XAML supplemented by procedural code where needed, hosted on Dublin, and using WPF or perhaps Silverlight(?) for the presentation layer. Thanks to the new REST support, or the old SOAP support, you could also use other clients including JavaScript or Java.

It is all a bit perplexing if you currently think of the .NET Framework as the runtime engine and class library for C# and Visual Basic. It sounds as if .NET Framework 4.0 is enterprisey, more JEE than Java. We are seeing increasing fragmentation or more positively, diversification, in Microsoft’s .NET story. There are micro versions, cross-platform versions (Silverlight), desktop versions (client profile), and more and more pieces that only belong on servers.

How much of Oslo and the Dublin application server is likely to be implemented in Mono, I wonder? I suspect not that much, since Mono has focused in the past on the common language runtime and ASP.NET. There was no WPF support in Mono until Moonlight.

All this begs the question: is .NET becoming too complex? I interviewed Scott Guthrie, Corporate VP Developer Division, at the Remix conference in Brighton last month. I asked him about Oslo, thinking that he must be closely involved in what is, according to some at Microsoft, a major step forward in application development. His reply: “That’s not my world”.

Guthrie is a simplifier. He was one of the original developers of ASP.NET, along with Mark Anders, and as I recall, when asked what modelling tool he used he replied, “a whiteboard”. I spoke to Anders about the early days of ASP.NET and he emphasized the value of simplifying what already exists; see also How ASP.NET began in Java.

Microsoft also claims that Oslo/Dublin will make complex things easier for developers, but looking at all these pieces I’m waiting to be convinced. PDC 2008 is where we will find out more.

*According to this post “Dublin” actually refers to the next version of Windows Server itself, though this announcement says “a set of enhanced Windows Server capabilities codenamed ‘Dublin’ that will offer greater scalability and easier manageability.” I guess this comes to the same thing, and that preview versions of Dublin could either be early releases of the entire OS, or preview bits that install into Server 2008.

Microsoft’s cloud platform, multi-touch Windows 7: mining the PDC schedule

I’ve been looking at the PDC Session schedule, as posted so far. Microsoft is serious about its new cloud computing platform. For a start, count the sessions.

Out of 180 posted so far, here are the subjects with 10 or more sessions:

  1. Cloud services [33]
  2. Windows 7 [22]
  3. SQL Server [16]
  4. Visual Studio [16]
  5. Silverlight [13]
  6. Live Platform [11]
  7. ASP.NET [10]
  8. Languages [10]

That’s a huge focus on the cloud. Microsoft’s problem: the company is not perceived as a leader in cloud computing. It has two distinct challenges: first, getting the technology in place, and second, winning developers to its new platform. In mitigation, it is in theory well placed to migrate users from on-premise Windows and Office to cloud equivalents.

Here’s a few snippets about Microsoft’s cloud platform:

A lap around Cloud Services: … Learn about the pillars of the platform, its service lifecycle, and see how they fit with both Microsoft and non-Microsoft technologies. Also, hear about the services roadmap over the next few years.

Cloud Computing: Economics and Service Level Agreements: … Topics include the pricing model for the cloud computing platform, how to monetize a service, and how to reduce the total cost of ownership.

Connecting Active Directory to Microsoft Cloud Services: … Manage and secure end user access to cloud services using your existing investment in Active Directory. Enable end users to access cloud services through existing Active Directory accounts, the same way they access your intranet-hosted software today. Hear how to enable existing software to use new service capabilities without re-writes, and do it all through the use of open and standard protocols.

That last item is a big deal. Managing separate user identities for local and cloud services is horrible.

What else can we glean from the PDC schedule. Here’s a few items that intrigued me:

Windows 7: Web Services in Native Code … Windows 7 introduces a new networking API with support for building SOAP based web services in native code.

Windows 7: Developing Multi-touch Applications … This session highlights the new multi-touch gesture APIs and explains how you can leverage them in your applications.

Oomph: A Microformat Toolkit … a toolkit from the MIX Online Team, that is aimed at web developers and designers to make it easier to create, consume, and style Microformats on the web. See also here.

Concurrent programming: Microsoft Visual Studio: Bringing out the Best in Multicore Systems … demonstrations of the parallel performance analysis and optimization tools in the next release of Microsoft Visual Studio. .

Oslo of course: A Lap around "Oslo" … “Oslo" is the family of new technologies that enable data-driven development and execution of services and applications. Come and learn how to capture all aspects of an application schematized in the "Oslo" repository and use "Oslo" directly to drive the execution of deployed applications.

Generics and constructors in XAML: Microsoft .NET Framework: Declarative Programming Using XAML … Learn about XAML additions like: support for generics, object references, non-default constructors, and more.

Instant cloud apps: Research: BAM, AjaxScope, and Doloto … Hear how BAM can turn a simple specification into a web-based cloud application with the click of a button. Learn how AjaxScope and Doloto automatically instrument and rewrite your web applications’ JavaScript code for end-to-end monitoring and optimization.

Office, a big feature of PDC 2005 when the ribbon was introduced, only has 3 sessions posted so far, though there may be more to come. Normally a new version of Office accompanies each new version of the Windows client.

Another question: what is in .NET Framework 4.0, to merit a full new version number? There is surprisingly little mention of it so far.

Microsoft’s open source breakthrough

Microsoft’s integration of jQuery and Visual Studio/ASP.NET is significant and I wrote about it on the ITJobBlog. I’ve included some comments from Scott Guthrie about ASP.Net AJAX vs jQuery.

Miguel de Icaza, who works on open source versions of .NET, also says it is a “first time for Microsoft”.

Rick Strahl, who is an ASP.NET MVP and writes an excellent technical blog, says in a comment to Guthrie’s original post:

To me jQuery has easily  the most game changing component in Web Development since ASP.NET originally was released.

It is a breakthrough; but note that it comes from the developer division, which is more inclined towards open source than other divisions running Windows and Office.

Future of Web Apps London next week

I gather that FOWA 2008 London is nearly sold out so now is the time to book, if you have not already. I’ll be there.

With stock markets reeling around the world, it’s an interesting time to have a conference focused on start-ups. Still, there are always opportunities. Lean times also help to concentrate minds on what is really cost-effective; if we are in for a prolonged downturn (which looks likely), that may stimulate interest in both web-based and open source technologies.

Some of the schedule looks like more of the same, if you have been to this kind of conference before, but there are some new topics there too: “How to decrease the environmental impact of your app” is intriguing; and I’ve already mentioned that XCalibre and Amazon will be co-presenting on cloud interoperability. I’m also looking forward to Tim Bray’s session as I have not heard him speak before.

Windows comes to Amazon’s cloud

You will soon be able to run Windows on Amazon’s Elastic Compute Cloud (EC2), in a fully supported manner. Jeff Barr says this is scheduled for public release by the end of 2008:

The 32 and 64 bit versions of Windows Server will be available and will be able to use all existing EC2 features such as Elastic IP Addresses, Availability Zones, and the Elastic Block Store. You’ll be able to call any of the other Amazon Web Services from your application. You will, for example, be able to use the Amazon Simple Queue Service to glue cross-platform applications together.

This opens up EC2 to a substantial new group of potential customers. They will be asking, of course, if the cloud can be made reliable.

Now, how about integrating with Hyper-V and/or VMware so you could easily move your servers in and out of the cloud?

Adobe Media Player adding to Windows bloat

I allowed Adobe Media Player to auto-update yesterday, and noticed that it added itself to the list of applications that run automatically on startup (without asking, as I recall).

This is an AIR application and has a relatively large memory footprint even when inactive, according to Task Manager. It is also currently of little use as far as I can tell; Adobe no doubt plans for it to be the next iTunes, but right now there’s only a tiny selection of videos on offer, some of which report “not available in your territory” if you try to play them.

You can stop this software from impacting Windows performance by going to Options – Automatic notifications and unchecking Automatically launch on startup and Close Adobe Media Player to the taskbar.

The Windows utility msconfig is great for identifying startup applications and shows you where they can be disabled. Stripping these down to a minimum can have a marked affect on performance.