As you may have noticed, I’ve been writing a lot about Windows 7 footprint reduction techniques lately. That’s because I’ve just finished moving my three production notebook PCs from conventional hard disks (with actual moving parts) to solid state disks. Because SSDs offer less space for more money (but also much faster speeds and improved battery life) it’s important to prune Windows 7 as much as you can when moving from a bigger drive to a smaller one. Through a major coincidence, for all three of those notebooks, this move involved downsizing from a 500 GB 2.5″ conventional HD to a 120 GB 2.5″ SSD.
I document information about this effort in a series of blogs documented in a summary blog dated 9/22/2011 entitled “Noodling on Windows 7 Footprint Reduction for SSD Migration” right here. I’ve become so enamored of one of the tools involved, I want to introduce and illustrate it here, for the possible edification of and incorporation into the toolboxes of my readers. It’s a CodePlex tool (Microsoft’s free, open source code repository) named DriverStore Explorer (aka RAPR.exe). The program comes in a simple ZIP file, and only needs to be extracted into the folder of your choosing to be ready to run. That said, you might right-click this program, then select the “Run as Adminsitrator…” option from the resulting pop-up menu so it can do its thing properly at runtime.
Once you fire up the program, you must click the enumerate button so it will chunk its way through the
directory where Windows keeps all — and I mean ALL — of the drivers that get installed into a Windows operating system image over time. For an illustration of what this can mean, here’s a screen cap from the program taken from my wife’s hitherto untouched mini-ITX PC (a two-year-old installation upon which I’ve kept all drivers current since bringing it up in late 2009).
As you can see from the screen capture, because of frequent updates to its built-in Intel Pro/1000 MT network adapters, there are seven (7!) different versions of the same network adapter driver present on this machine. My usual practice with drivers is to keep the current version, plus one version back: in case any bugs or gotchas should pop up for the current one, I can still use Device Manager to roll back to the previously used version. At 165 MB a pop, five unnecessary copies occupy 830 MB of disk space.
All in all, I was able to remove 23 duplicate or obsolete drivers from that machine using DriverStore Explorer, for a net disk savings of 1.2 GB overall. Not bad, for 15 minutes’ time! Good idea to run this any time you’re massaging an image for repeated use or virtualization.
On September 26, I wrote a blog here entitled “Testing Footprint Reduction Methods for SSD Migration: Before (Part 1 of 2).” Today I’m pleased to post the conclusion to this mini-saga, now that I’ve completed the switchover from 500 GB conventional HDs in three of my production laptops to a trio of OCZ Agility 3 120 GB SSDs. The machines in question are my trusty old Dell D620 (T7200 Core Duo, 4 GB RAM), my HP dv6t (i7 720 QM, 8 GB RAM), and my brand-new Dell/Alienware M11X (i7 2617M, 8 GB RAM), all of which are now reveling in zippy performance and much quicker start-up and shutdown intervals than under the old HD regime.
Here’s what my footprint reduction techniques did for the holdings on those three PCs’ hard disks:
|Table 1: Notebook System Disk Holdings (Before & After)|
|Laptop||Before Clean-up||After Clean-up|
|HP dv6t||72.9 GB||52.8 GB|
|Dell M11X||48.2 GB||33.1 GB|
|Dell D620||35.4 GB||27.7 GB|
Looks like my techniques can and did produce space savings from 22-27%. The upshot of all of this miscellaneous clean-up and effort is a trio of PCs, all of which have at lest 45 GB of available space on their solid state drives (the Dell has over 80 GB free!). I’d have to say that if you’re heading in this direction or getting user machines ready for this kind of switchover, you should be able to put these techniques to good use, and achieve similar savings and results. For more info on my performance results before and after, see my recent blog at www.edtittel.com entitled “A Tale of Three Notebook SSD Upgrades.”
And don’t forget: you can purchase 2.5″ drive enclosures for the old hard disks for under $10 a pop (I spent $9 each on some Rosewill units, Newegg’s house brand). These USB-powered mini-enclosures are extremely portable, and will provide users with a backup/external drive to take with them on the roard. Sure, they’ll eat more battery power, but (a) they probably won’t need it plugged in all the time, and (b) the battery life with a combination of the old hard disk and the new SSD won’t be too much worse than the original battery life with the old hard disk and no SSD. In my book, that makes it a slam-dunk proposition.
There’s an interesting story from last Thursday morning (10/20/2011) on the IT ProPortal site entitled “How to Use Windows 7 Everydays Apps in Windows 8?” Therein, author Alex Serban demonstrates the truth of Microsoft’s claims that ordinary Windows 7 apps run seemingly unchanged within the desktop side of the Windows 8 interface. Using this facility does require access what Serban calls “the old classic interface” (which Microsoft sometimes refers to as “the desktop interface”) and lauching the application from there. And although there is no start menu available, so you must cycle through Metro UI to launch or run multiple applications, old-style or new, old-style applications still work the same as they ever did.
Frankly I found rumors or speculation that current Windows 7 apps wouldn’t work in Windows 8 either hysterical or blatant attempts to incite controversy. Given the huge catalog of applications for the current reigning Windows OS, why would Microsoft want to alienate all of its application developers in one go? That just doesn’t make sense. This is especially important to the business/corporate market, which is always slower to adopt new desktop operating systems than are individual users, and which always look at new releases with a skeptical, if not outrightly jaundiced viewpoint, ready to pounce on incompatibility issues to fuel their natural tendencies to delay platform migrations as long as possible.
That’s why I’m glad to learn that my own experiences running existing apps in Windows 8’s current developer preview are being repeated elsewhere as other professionals dig into the new OS and learn what they can about its pros and cons, strengths and weaknesses, and so forth. It continues to be an interesting ride, and it’s pretty clear that MS still has lots of work to do to smooth out some rough edges in the next 11 months or so before the latest Windows version is ready for prime time.
If you read this blog regularly, you already know that a team of authors — including Jeff Carrell (the lead), James Pyles, Tom Lancaster, Mark Mirrotto, and myself — are reworking a college textbook called Guide to TCP/IP. In fact, our primary motivations for this revision are to switch from Ethereal to Wireshark as the protocol analyzer of choice, and to add substantial IPv6 coverage to the previously IPv4 centric focus in the prior edition. With IPv4 public address space all but exhausted, and industry, government, research, academia, and communications providers busily switching over to IPv6, it’s highest time we provided students with the information and examples they need to understand the latest iteration of TCP/IP in detail.
Along the way we realized that Windows 7 doesn’t actually use the right default for auto-generating IPv6 addresses. While the specifications do allow for various methods to do this, the preferred method is to use the brand-new Neighbor Discovery Protocol (NDP) to determine local network and interface identifiers, and to create a corresponding 128-bit IPv6 network address. Alas, Microsoft chose to implement an alternate method known as “random interface identifier assignment” instead.
This means that Windows 7 computers on IPv6 networks don’t behave the way that network administrators and IPv6-ready devices think they should, and can cause odd incompatibility issues to appear. Fortunately the fix for this problem involves running a single network shell (
netsh) command at the Windows command line:
netsh interface ipv6 set global randomizeidentifiers=disabled
Alas, Microsoft still doesn’t support the Secure Neighbor Discovery (SEND) protocol either, a more secure follow-on to NDP that verifies that neighbor devices discovered on a LAN actually belong there. It didn’t make it into SP1 for Windows 7, so we’ll have to hope to see it in Windows 7 SP2 and in Windows 8 next year!
[Comment Added 10/25/2011, thanks to Jeff Carrell. FYI, Jeff is my co-author on the TCP/IP textbook and has technical oversight for our latest and upcoming revision to that book]
RFC4861-NDP doesn’t care about how an interface get an IPv6 address, it defines some of the mechanisms to ensure no duplicate addresses (DAD) exist on-link. RFC4862 Stateless Address Autoconfiguration, mentions using the EUI-64 address and DAD test. There is also an update that mentions RFC4941 in the appendix.
It appears to be allowed to use either the RFC4291-EUI-64 or RFC4941-Privacy (random number) address formats for stateless address autoconfiguration.
Microsoft just happens to be using the Privacy format (since Vista/W2K8 came out in 2006/2008), which is actually more secure since it doesn’t have the MAC address embedded in the address string, but is different from the way that most other OS’s (client, server, infrastructure, etc) do it: they typically use the original standard known as EUI-64.
Agreed, RFC3971-SEND would be better, but I haven’t found any OS using it yet….actually I’ll be doing alot of resaerch on that for Ch13.
At the end of last week, global operating system share as reported by StatCounter for Windows 7 and Windows XP reached the crossover point. What this means is that on or about October 14, market share for the two operating systems coincided–at around 38 percent, as far as I can tell from the StatCounter graph. Now, with Windows 7 on the way up, and Windows XP on its way down, that also means that Windows 7 is the predominant Windows operating system in use today. That’s just under two years following its official public debut on October 22, 2009.
With nearly 500 million Windows 7 licenses already out there, Microsoft is projecting total volume to reach 635 million licenses by the end of 2011 (according to a story in DailyTech entitled “Windows 7 Passes Windows XP in Just Two Years to Become Top OS“). According to the same source, the Win7-XP balance stood at 40.21% for Windows 7, and 38.64% for Windows XP, as of October 17, 2011, the date of that story’s publication.
It may seem ironic that Windows 7 has achieved ascendancy just as features and functions of its successor, Windows 8, are starting to become known through the Microsoft Building Windows 8 blog. But tht’s the way these things go in the whacky and wonderful world of technology. The crossover also presents hard evidence that enterprise migration to Windows 7 may finally be getting up a full head of steam as well.
The Building Windows 8 blog is rapidly turning into one of my favorite resources and references on what’s up with Windows 8, and this Monday morning I’m particularly taken with last Friday’s post (10/13/2011) entitled “The Windows 8 Task Manager.” If there’s one system utility on most modern major Windows versions that I use incessantly (Ctrl-Shift-Esc is programmed into my left hand at a pretty deep level, in fact) this has got to be it. So of course, I was more than mildly interested to read about what’s coming in the next iteration of this go-to utility.
Ryan Haveson, the group program manager for Microsoft’s “In Control of Your PC” team, is the author of this post, and he does a bang-up job of explaining what’s changing in Task Manager for Windows 8 and why slated changes have been made. If you’re as fond of this tool as I am, you’ll want to read the post in its entirety. For those who may just want the 10,000-foot recap, here it is:
- The default views for the Applications and Processes tabs have been simplified and cleaned up, to make it easier for users to find and kill errant or unresponsive apps and processes, respectively. A “more details” button will be included on each of those views to make it easier for geeks to get more details and information from the tool (see the posting for some nice illustrative screencaps).
- A “heat map” that represents various values with color is overlaid on all Task Manager displays. This uses color to call out anomalies or big resource consumers without having to zero in on units of measure or sorting the data to bring outliers to the top of specific columns. Column headers and specific entries light up with brighter more compelling colors to call attention to what’s up, and what’s out of whack.
- Equal coverage for network and disk consumption on commonly used panes (you now get Disk and Network counters/reports in the processes tab without having to jump to different tabs, or over to the Resource Monitor utility). Nice catch, guys!
- Smarter grouping of processes: entries are grouped by Application, Background processes, and Windows processes, so users have a better idea about what’s safe to kill, and what needs to be left alone. Applications also provide additional detail about parent and child processes. Thus, for example, you can look at Outlook.exe as a single entry by default, yet expand the hierarchy to see sub-processes or tasks inside the Outlook umbrella if you like.
- More process info available as a right-click option. I started using a uniblue look-up tool that plugged into Task Manager a couple of years ago because it made it easy for me to search for more information about strange, mysterious, or suspect processes online. I can’t remember why I quit using it, but it was handy to have around. With Windows 8, users can right-click on a process name in Task Manager, and elect a “Search the Web” menu option to do this without having to augment Task Manager itself any more. Bravo!
- And finally, MS does the homework for you with svchost.exe process entries, and ties them back to specific service relationships so that you can see which Windows services are using any particular instance of this DLL aggregating Windows infrastructure service. Bravo again!!
I’m actually looking forward to putting this new facility through its paces, as soon as I get my Windows 8 test machine up and running (probably, next week, if recent busy-busy-busy work rhythms keep clanging as they have been lately).
Thanks to an InfoWorld article by J. Peter Bruzzese entitled “How to snapshot Windows 7 and resurrect SteadyState — for free” I just learned that well-known Windows guru Mark Minasi (long-time Sybex author of all those many Mastering Windows books over the past 20 years) has resurrected an obsolete but valuable Windows facility. This facility is called SteadyState, and it enables Windows to return to a pre-defined state each time a system is rebooted. This made SteadyState a staple for admins who worked in schools, computer labs, libraries, or with kiosk machines, because it guarantees that a new user will encounter a clean, pristine Windows installation each time the system reboots, no matter what the previous user may have done with or to that machine.
Alas, Microsoft discontinued SteadyState in December of 2010, and Microsoft let support for this facility lapse entirely on July 1, 2011. There are, in fact, numerous commercial products that still do what SteadyState used to — Bruzzese identifies three named Deep Freeze, Time Freeze, and Returnil in his InfoWorld story — but at around $40 per seat, such costs may be beyond the means of the core audience for the old SteadyState stuff.
Minasi has created a total bare-bones Website called www.steadierstate.com where he provides a zip file that contains a detailed step-by step description of how to roll your own version of SteadyState along with all the files needed to put this environment together for yourself (along with licensed system components, of course). For the technically curious, it works by booting first to the Windows pre-installation environment (aka WinPE) which then loads a pre-defined VHD for the pristine system image that this tutorial teaches you how to construct.
There is one caveat that Bruzzese points out in his story worth attending to. Because Microsoft does not allow Windows 7 Professional to manipulate bootable VHDs, you cannot use this technique with machines running that version of Windows 7. It only works with Windows 7 Enterprise and Ultimate versions. Nevertheless, this is a great bit of public service from Mr. Minasi, and I’d like to add my thanks to him to Mr. Bruzzese’s while also thanking Mr. Bruzzese for bringing this effort to my attention and for his useful commentary and analysis of what Mr. Minasi did. Thanks guys!
There’s a fascinating new post up on the Building Windows 8 Blog from Steven Sinofsky, dated October 7, 2011. It’s entitled “Reducing runtime memory in Windows 8”, and it digs into lots of interesting tricks and techniques that Microsoft is using to bring down memory consumption for Windows 8 overall, and to make best use of available memory even on devices equipped with as little as 1 GB of RAM.
Here’s an example of the kinds of insights this blog post contains “…minimizing memory usage on low-power platforms can prolong battery life.” That’s because RAM consumes power all the time it’s in use, so “…the more RAM you have on board, the more power it uses, [and] the less battery life you get.” Sure, I knew that from a simple energy consumption basis, but I’d never really put it in those terms before, probably because my computing universe has hitherto assumed a constant supply of power from a wall circuit rather than a limited reservoir of battery-based juice.
Other interesting tidbits in this posting include how designers used “memory combining” so the Windows memory manager could identify duplicate bits of data or information, then store them only once, instead of as many times as the OS and applications choose to store them (any time such info is written to, a private copy is created and allocated to prevent inconsistencies). Another trick is to change services so that they start only when they’re used, and consume memory and other system resources only IF they’re used. Old fashioned usage and visitation analysis applied to memory also let MS observe memory usage, and allocate runtime memory only for things likely to be referenced and used sooner rather than later. This plays into a more strategic notion of memory prioritization (what to keep resident and what to swap out after a period of inactivity) that helps the OS make better use of available physical RAM. And finally, given the differences between the Metro UI and the older desktop UI in Windows 8, the OS can defer memory allocation and use for desktop UI stuff only when it’s needed rather than automatically upon system startup. This, too, affords some useful savings (23 MB, according to the blog post, for the current preview version of Windows 8).
All in all this adds up to some interesting memory savings and optimization, and also explains somewhat more of how Windows 8 internals function, and how they compare to Windows 7. It’s starting to look like MS is taking the whole mobile device aspect of things very, very seriously!
Dang! I just stumbled across another pending change coming with Windows 8, and I’m sorry to say I’m not too thrilled about it, either. It seems that the Metro UI doesn’t make room for Windows Gadget displays. In fact, you can read a post at the Windows Live Gallery that includes the following quote “Microsoft is no longer supporting development or uploading of new Gadgets.” (for the Windows Live Gallery, anyway). Here’s a screencap of the Windows Live Gallery page as it currently stands:
In discussing this subject in an article for Network World (“Windows 8 Means no More Widgets or Start Menu“), author Andry Patrizio opines that he “… never knew anyone who used them…” (gadgets, that is). Well, I for one have found a certain class of gadgets invaluable for system activity and health monitoring. I regularly use Microsoft’s Clock gadget, which puts an instantly readable clock face on my screen (yeah, I know I can look down at the digital readout for Date/Time at the lower right in the notification tray, but I can tell what time it is much more quickly from a clock face, and see it from much further away). I am also extremely fond of All CPU Meter and Network Meter from Addgadget.com, regularly use the Norton Internet Security desktop gadget, and love the Windows Vista Shutdown Control Gadget, OS designation notwithstanding, because it lets me restart or shutdown my PC quickly and easily.
I sure hope some mechanism for accessing handy little management and control applets persists into Windows 8. They may not be called gadgets anymore, but I sure hope they remain available!
I had a fascinating phone conversation with Executive Editor Ed Scannell at TechTarget yesterday, who clued me into one very interesting facet of his recent trip to Redmond for a sneak preview of the coming version of Windows Server (which everybody is calling Windows Server 8 these days, even if it will undoubtedly be called Windows Server 2012 by the time it ships). Amidst our discussion of interesting rumors and suppositions–such as, for example, the notion that Windows 8 desktop may precede the release of Windows 8 Server by as much as six month, with perhaps an early release for ARM and a later x86 release to jump on smartphone and tablet opportunities–he revealed to me that Windows 8 will include a facility known as “Cluster Aware Update” which works with an eponymous wizard called the Cluster Aware Update Wizard, or CAUW (I want to pronounce this “cow”, but the word on the street is that this is “not cow”).
Apparently, there was some loose talk about how this tool could make Patch Tuesday updates a thing of the past for server administrators, and also allow Microsoft to push updates on an as-needed basis. “Bully for Microsoft!” Ed and I agreed, but most enterprises aren’t going to pick up and run with Microsoft patches without testing them outside the production environment first, and then only rolling those that pass testing and verification out into production during carefully scheduled update windows for that purpose. I’m not sure how this is supposed to end Patch Tuesday, but Ed has commissioned me to write a 600-700 word article on this impending technology for submission later this month. I look forward to reporting further on this as I learn more. In the meantime, chew on this cool blog from System Center guru Robert Smit (a Server Cluster MVP for Microsoft) which even has screenshots of the CAUW at work: “Windows 8 Cluster Update #CAUW ( Cluster Aware Update Wizard ).” Way cool!