- A classic NT/Windows 7 gem from the blogosphere
- Handicapping the Windows 7 alternatives
- Intervention: How to salvage Windows 7
- Desktop Windows: Is it time to "cut and run?"
- Microsoft to logo applicants: Support Windows 7...or else!
- Windows 7 gets all "touchy-feely"
- Hyper-V's Achilles' heel
- How Unix politics are killing OS innovation
- Note to Popular Mechanics: Leave the PC reviewing to us professionals
- Ubuntu: More doomed than ever...
July 01, 2008 | Comments: (0)
A classic NT/Windows 7 gem from the blogosphere
One of the best parts of blogging is the opportunity to interact with readers. Through the comments mechanism attached to virtually every blogging platform, both fans of a blog and its detractors have an opportunity to voice their opinions. And sometimes, the contents of a blog site’s comments section surpasses – in terms of intrinsic value – the original posting.
Case in point: The recent rant by Mahmoud Al-Qudsi over at NeoSmart.net. In his posting, Mr. Al-Qudsi is attempting to discredit the anonymous author of the mysterious “Shipping 7” blog, a person who claims to be a Microsoft insider working on the next version of Windows. After blathering on for several paragraphs about what he believed were amateur “mistakes” in one of the “Shipping 7” author’s web postings – and how this should discredit the blog as a source of insider info – one of Mr. Al-Qudsi’s own readers (username “AnthonyTP”) takes him out behind the proverbial “woodshed” for a quick lesson on Windows history and architecture. What follows is one of the most concise, accurate and informative defenses of the Windows NT architecture I’ve ever read:
NT is NOT like *nix kernels or even other MACH variants like OS X. There is a large element of simplicity to its complexity when it is broken down.
The basic NT kernel and design is also very modular, so by comparing it to the Linux kernel is going to get you into trouble.
NT is a hybrid kernel that took a fairly elegant approach to kernel design, especially for the early 90s, as it was a new conceptual kernel of the time, taking some existing kernel architectu[r]al models and some of the best kernel theories that had not been implemented before.
For example NT has some MACH conceptual ideas and lightweight kernel API set for performance, but then hands this off to increasing levels of APIs co[m]plexity. This gave NT the ability to be very lightweight at the core, but have extended functionality that didn't weigh the core kernel down.
NT's HAL for example was under 64KB, and even on Vista is still 256KB(slightly larger in Vista x64), which for modern hardware is still extremely small. Going from the HAL to the lower kernel and API layers is still very small, especially compared to other OS kernel models in use today. This is how and why the MS Embedded OSes (XP/Vista) can and do work so well, as NT was simply broken apart as needed for the Embedded versions to make them very light (As in used in a router light).
The essential design of the NT kernel is both object based and a client/server model. This is not normal, or something that you will find in any other consumer level OS out there.
What the client/server model of the kernel of NT allows is the light core kernel with limited APIs secondary NT APIs and then subsystems for the actual OS clients that run on top of it. This is why even Win32/Win64 is just a subsystem that sits on NT, and can be ripped off of NT at anytime, as MS has demo[n]strated for YEARS.
The client/server kernel design of NT is also how MS can and does include a BSD or V5 UNIX subsystem for Vista, as the UNIX subsystem is just another OS sitting on the NT kernel client/server model. The UNIX sub[s]ystem in Vista is equal to Win32/64, as they are both sitting on the NT kernel in the same way. Win32/64 only has preference as it is the the default OS subsystem. By both Win32/64 sub[s]ystem and the UNIX subsystem running together on top of NT, they both get the drivers and benefits of the NT layered kernel, but also can cross communicate via the NT kernel, and all of this happens with no emulation layers.
For people truly interested in the NT design, source code of the NT kernel can be obtained from Microsoft for academic purposes, just search www.microsoft.com and be a teacher of some sort.
This gives academic minded people access to and a greater understanding the NT architecture from the HAL to the API layers and subsystems that run on it.
Based on the NT design, I would have to correct you in asserting that ripping out EXT3 from Linux would be as hard as adding in Reiser as a comparison. NT and Linux kernels are VERY different in this regard. Take the recent Linux arguments about the HardLocks code that is giving Linux trouble with multi-processor granularity.
Changes to the older hardlock mechanism in Linux requires a substa[n[tial amount of work and tricks to bypass, and is why things are not going so well. With an NT design, something like this is API wrapped at a low level, and changing the mechanism would be rather simple, not require someone to sift through 9000 lines of code to change the setting.
Another example would be Vista, and Microsoft adding on a Video driver model. (Not just new drivers, but a new model of how they are handled from the kernel as well.) This was easier on NT than it would be on a Linux or even OS X kernel design because of the NT design. This is also how Microsoft was able to add in the new WDDM while still allowing the XP drivers(XPDM) to operatate on Vista if needed. That alone would be a nightmare situation for both driver and kernel level feature support if this was tried on Linux or OS X.
The WDDM not only splits the video driver to a shared kernel/user level model, but it works with the NT kernel of Vista to things no other consumer currently can do. Features like transparent GPU RAM vir[t]ualization, an OS level scheduler for the GPU, creating a pre-emptive state of GPU multitasking controlled by the OS (WDDM), and even multi-GPU processor support that works with the GPU multitasker. The WDDM in Vista allows several 3D applications on screen at the same time, and gives them all extra VRAM than what is available on the GPU hardware, and because the OS handles the multi-tasking, no applicati[o]n can steal the GPU to halt responsiveness, but yet even with demanding games running at the same time, they only lose a few FPS running side by side compared to them running exclusively full screen.
So you can see that dropping in the WDDM to Vista was a good achievement in that it works as transparently as it does, but this would not have been possible if it weren't for the NT achitecture that allows for massive kernel level conceptual changes by adding in new API kernel level constructs that layer on the lightweight lower level NT kernel APIs.
After taking a bit of this in, you can maybe get a glimpse of the simplicity and the complexity of the NT architecture and why the MinWin used at the demo[n]stration that started a lot of this, is no different than the internal MinWin that Microsoft has used and showcased internally for years. It is nothing more than the NT kernel at the basic level with select API layers used, which is something that can be fairly easily done with NT. And yes technically the NT kernel can be fairly small when you remove the upper level kernel level API interfaces and especially the subsystems like Win32/64 that sit on top of them.
This is why when people call for Microsoft to write NT from scratch, many OS engineers/theorists like myself scratch our heads at the level of understanding. Rewrite Win32, sure why not, rewrite NT, a sadly bad idea. NT is more advanced and useful than what people give MS credit for, especially if lightweight, extensible, fast, and modular are your design goals for a kernel.
Also a thing of note, you call BSD a kernel, it technically is a set of APIs, an 'interface' to a kernel not an actual kernel, and on OS X would be the API wrappers around the modified MACH system calls, not the OS X kernel.
Like I said, powerful stuff. Personally, I knew (or at least suspected) much of this already – after working with, and developing for, a platform on a daily basis for over 15 years, you tend to pick-up things. Still, it was nice to see the case for NT’s internal sophistication/purity so eloquently presented by someone with the technical chops to pull it all together (sort of like a poor man’s Mark Russinovich, only less confrontational towards Linux).
It also reinforces my belief that Microsoft blew it with Vista by burying what is still a technically sophisticated, state-of-the-art OS under a mountain of consumer-focused crap. As an original NT purist (I literally wrote the book on “Migrating to Windows NT” back in 1993 – look it up), I’ve bemoaned each new concession to the Windows 9x/Me team holdovers, from win32k.sys in Windows NT 4.0 to the god-awful “Luna” UI theme in XP. For people like me, Vista is an abomination – what happens when big decisions are left in the hands of the “crayons and construction paper” crowd.
Oh well, at least we still have Server 2008...
Posted by Randall Kennedy on July 1, 2008 11:59 PM
June 17, 2008 | Comments: (0)
Handicapping the Windows 7 alternatives
It's been an interesting couple of weeks on the desktop OS front. Microsoft's big reveal regarding Windows 7 and its Vista heritage sent many of my blogospheric contemporaries scrambling to justify their myriad off-base predictions. Having anticipated this outcome weeks ago, I was free to ponder an even more radical set of possibilities -- specifically, which of the current crop of Unix-based OS is best positioned to knock off Windows 7 come late 2009.
Note the timeframe qualifier above. I'm not interested in what's available today. Rather, I'm looking 12 to 18 months out in an effort to divine what kind of competitive landscape Windows 7 will be born into. As Microsoft churns away at its typical, glacial development pace, emerging challengers, such as Ubuntu and OpenSolaris, continue to evolve. How far they get during those intervening months will determine what percentage of those coveted XP fence-sitters finally choose to abandon Windows altogether.
Ubuntu: Once the poster child for Windows-to-Linux defectors, Ubuntu has lost some of its coolness factor. Consecutive lackluster releases, plus a "pass the buck" mentality toward lingering kernel issues, have tarnished Canonical's once unassailable reputation. Add to this Mr. Shuttleworth's obsession with the emerging ultra-low-cost PC segment and you have a recipe for disaster.
There's still time for the company to come to its senses -- to take responsibility for more than just the packaging of its distro. With two or three major releases between now and Windows 7's earliest, most optimistic delivery target, Canonical has an opportunity to shore up its position as desktop Linux torch bearer by dumping Gnome, embracing KDE 4.x, and doing whatever it takes to improve reliability across a greater range of hardware configurations. Do that, and it might have a shot at securing some of the more open-minded XP defectors.
OpenSolaris: A true dark horse candidate, OpenSolaris has the pedigree to be a real challenger to Windows, at least in the enterprise. Sporting a clean, battle-hardened kernel architecture, OpenSolaris is what Linux wants to be when it grows up: mature, robust, and confident. Unfortunately, all of the FOSS folks are too busy playing with their GNU tinker toy to be bothered with supporting a platform that may or may not be compatible with their "free as in air" ideology.
And this means that OpenSolaris remains a few revisions behind the times, as evidenced by the down-level iterations of Gnome and related utilities in the 2008.5 release. Still, if Sun ever decides to get serious about OpenSolaris, it could make a run at the title.
The Solaris-derived foundation is solid. What it needs is expanded device support and a concerted effort to port the best of FOSS to its currently anemic repositories. As Microsoft continues tripping over its own consumer/media aspirations with each new Windows release, the time may soon be ripe for the reemergence of a more "responsible" solutions from the Unix standard bearer.
Mac OS X (or XI): Lately, it seems as if Apple can do no wrong. The iPhone is a hit, its laptops are trendsetters, and OS X is held up as the perfect marriage of form and function.
Yet, despite all this success, the company continues to cut itself off at the knees by refusing to license OS X outside of its own hardware. I'm convinced this is partly out of fear; Apple knows that if/when it releases OS X to the masses, it'll have to support it on the same hodge-podge hardware environment that makes Microsoft look so bad. And tarnishing the image of the revered OS X is not a possibility Apple wants to entertain.
Which is too bad because, given enough hardware support, a platform-agnostic OS X could put a major dent in Microsoft's installed base over the next year and a half. However, such a move requires vision, not to mention a modicum of courage -- both of which seem to be in short supply over at 1 Infinite Loop.
Note that I'm not listing Windows XP here since I believe that, post-2009, hanging on to this rapidly aging platform makes little sense. If you're going to reject Microsoft's upgrade path, then do yourself a favor and go all the way. Try one of these emerging competitors. Chances are, given another 12 to 18 months of development, more than one of them will begin to rival Windows XP as the best alternative to Windows 7 -- a.k.a. Vista Reloaded.
Posted by Randall Kennedy on June 17, 2008 03:00 AM
June 10, 2008 | Comments: (0)
Intervention: How to salvage Windows 7
I had an interesting conversation this past week with Ben Rudolph, former marketing guru at Parallels and now a member of the Microsoft Windows 7 team. Apparently, my recent pronouncement of death for his new charge struck a nerve. In addition to setting up a flurry of conference calls with his fellow team members, Ben picked my brain a bit about what I felt they needed to do/say to salvage their next generation desktop OS.
Always willing to interject myself into others’ business, I offered the following "pledge" points for Microsoft to ponder:
- Performance. Pledge that Windows 7 will perform as well as, if not better than, Windows Vista on identical hardware. Show the industry that you can do more than create bloated software. Show us that you can be disciplined when you need to be, that you can write clean, efficient code that doesn't leave us wondering where all the GHz have gone.
You've already stated that Windows 7 will be based on the Vista core. It shouldn't be too hard to squeeze a few more optimizations from that battle-hardened NT kernel of yours while also holding the line on the "cycle creep" that doomed 7's predecessor. Right now, this is Job No. 1 for Microsoft. - Compatibility. Pledge that that Windows 7 will deliver a better migration experience than Windows Vista. After performance, the perceived lack of seamless backwards compatibility is the most pressing issue for IT fence sitters. Encouraging companies to bite the bullet now with Vista because Windows 7 won't help them is not the message you want to be sending.
Leverage some of that slick new legacy application integration technology you've acquired (SoftGrid, Kidaro) to help smooth over the rough spots. There's really no excuse for providing anything less than flawless Win32, COM/ATL/MFC and down level .Net application support, even with UAC enabled. You have all the tools in your portfolio. Time to put them to use. - Usability. Pledge to take all those powerful-yet-buried technologies and bring them to the surface with Windows 7. Start by understanding what's relevant to IT and then focusing your UI development energies accordingly. For example: Previous Versions, a more robust driver model, and deeply-integrated Windows Search? Relevant to IT. Aero (including Flip 3D), Media Center, and the Windows Sidebar? Not so much. Yet which features got the lion's share of PR when Vista launched?
Stop trying to "out-Mac the Mac" on the UI whiz-bang front. Just expose the myriad compelling technologies you already have under the hood and let the IT community be the judge. It's telling when you see the industry media tripping over themselves to lavish praise on something like "Time Machine" when Windows has been doing the same thing better, and with more data storage flexibility, for years.
Finally, Microsoft needs to communicate better, and by this I don't mean just under-promising. The "cone of silence" around Windows 7 has to end. The recent, anticlimactic comments regarding Windows 7's architecture and the subsequent misguided attempts to push Vista at 7's expense have set off a panic in the IT community. Now it's time to open up and start explaining why not reinventing the wheel is a good thing and how, without a kernel overhaul, you can still improve (faster, more compatible, easier to use) on the Vista experience.
It's not too late for Microsoft to salvage Windows 7. As I've stated in the past, Moore's Law is on their side. If they can deliver a richer, more compatible version of Windows Vista, without causing additional code bloat (and maybe wringing some extra throughput out of what's carried over from Vista), they have a decent chance of winning back some of the IT shops they alienated along the way.
Posted by Randall Kennedy on June 10, 2008 03:00 AM
June 03, 2008 | Comments: (0)
Desktop Windows: Is it time to "cut and run?"
Cutting and running. A bad idea for chainsaw massacre movie villains, scissors-wielding grade school students and the occasional foreign incursion. But what about IT? At what point does further investment in a platform or technology cease to make sense?
Until now, I've been advising Vista fence-sitters to wait for Windows 7. However, last week's "big reveal," in which Microsoft finally confessed that Windows 7 will be nothing more than "Vista warmed over," has forced me to reconsider my position. I'm now more convinced than ever that Windows is doomed - at least on the enterprise desktop. What Microsoft's aging (in the U.S., NT is almost old enough to vote) OS needed was a heart transplant. What it got was a new name, a fresh change of clothes and an A.M.A. discharge from the ER.
It's not enough. The IT community deserves better. Microsoft's loyal customers deserve better. The folks from Redmond owe us a fresh start; a clean break; a path to the future free from legacy baggage. Basically, they owe us a new Windows.
"MinWin" was a good start. Unfortunately, Microsoft executives seem to lack the will to see it through. It's easier to keep re-warming the same stale bits over and over again, safe in the knowledge that the Windows customer base will lap it up all the same. Monopolization has its privileges.
Of course, the secret to maintaining a de facto monopoly is to not push your customer base too far. Every industry segment has its breaking point, a fact Microsoft learned the hard way with Windows Vista. With Vista, they ignored IT, choosing to instead kowtow to big media and the DRM crowd. The result was an unprecedented backlash as angry IT shops spurned Vista and drove the Save XP campaign to international attention.
Now we learn that Microsoft's one chance to get it right - to atone for its sins and perhaps salvage some modicum of respectability - is really just another PR stunt. Windows 7 will be Windows Vista "Part Deux." Same clumsy, monolithic architecture. Same crippling legacy baggage. Whatever hope may have been sparked by the whole "MinWin" fantasy has now been officially snuffed out.
If I sound frustrated it's because I am: At Microsoft for refusing to leverage its vast technical resources to address Windows' myriad shortcomings; and at the customer base for agreeing to take each new batch of Windows lemons and make lemonade.
When will the Windows community wake up and realize how much power it has? We've already demonstrated what can be done when enough of us decide that, hey, we really don't like lemonade all that much. Vista is a debacle precisely because we decided "enough is enough" - and because a viable alternative (XP) still existed. Microsoft's response? Try to squash the "rebellion" by pulling the rug out from under us (i.e. XP's impending expiration date) . Talk about sour grapes!
That's why I say it's time for the Windows community to take a hard look at alternative platforms, like Linux and Mac OS X. It's over there, on the other side of the fence, that the real innovation is occurring. By contrast, Windows - including the over-hyped version 7 - is an architectural dead end. We, as a community, need to accept this fact and move on.
Posted by Randall Kennedy on June 3, 2008 03:00 AM
May 29, 2008 | Comments: (0)
Microsoft to logo applicants: Support Windows 7...or else!
Lessons. Lessons. Everywhere you look, there are more lessons to be learned from the Vista debacle.
Don't overpromise. Don't under-deliver. Get the ISV/IHV community involved early and often. And most importantly, make sure that whatever changes you introduce are indeed "fully-baked" before the OS goes out the door.
Judging by the level of secrecy surrounding Windows 7, it seems that Microsoft has taken the first two lessons to heart. Now comes news that Microsoft is revamping its logo requirements for vendors wishing to obtain the company's "Certified for Windows Vista" seal of approval. In addition to the normal mountain of test documentation and paperwork, companies seeking logo status will have to provide an additional set of results from a special compatibility test tool that will ship with the first Windows 7 beta.
Note: This does not mean that the products in question will need to pass the test -- just that the vendors seeking certification for Vista must provide the results data for their product running under the Windows 7 beta, too. Click here for the gory details (see pages 36-37).
It's all part of Microsoft's effort to address point number three above. By requiring that new logo applicants at least try their products under the beta -- and then share the compatibility results data with Microsoft engineers -- the company hopes to identify potential trouble spots early in the release cycle, giving it more time to address them and/or work with vendors to correct any problems the tool identifies.
Frankly, it makes a lot of sense. Microsoft has leverage over its vendor partners in the form of the aforementioned logo program. Using that leverage to prod these partners into testing against the next Windows seems like a judicious way to ensure a smoother migration across the myriad components of the Microsoft ecosystem.
Now, as for lesson number four -- not shipping "half-baked" changes -- well ... only time will tell. But I have to admit, I like what I'm seeing from this leaner, more-focused Windows development team. Kudos to Steve Sinofsky, the true "anti-Allchin."
Posted by Randall Kennedy on May 29, 2008 08:37 AM
May 28, 2008 | Comments: (0)
Windows 7 gets all "touchy-feely"
What a difference a week makes! Just last Friday I was dissecting Microsoft's latest pro-Vista marketing spin and lamenting the lack of corroborating evidence to my "ready for Windows 7" missive over at the Windows Sentinel blog. There must have been something in the Kool-Aid at that annual Memorial Day picnic, because when the employees returned their previously hog-tied tongues were suddenly loosed.
First, there was the interview with Steve Sinofsky, in which he emphasized how Windows 7 would build on the foundation laid with Vista. Then came the Windows Vista team blog posting by Chris Flores stating that there would be no "new kernel" in Windows 7 (sorry "MinWin" fans) and that their goal was to run on the "recommended hardware" they specified for Vista.
[ Read more on the Windows 7 touch-screen features in our news story. ]
In other words, I was right. About Windows 7. About its Vista underpinnings. About everything. My detractors (and by now you are legion) may commence with the crow consumption.
But the "pièce de résistance" had to be the Windows 7 "demo" conducted during a Walt Mossberg/Kara Swisher interview with Bill Gates and Steve Ballmer. Though the video (scroll down the page a bit) of the demo portion of the event is a bit grainy, you can at least make out some aspects of the cool Surface-derived UI direction that Microsoft is taking with Windows 7. Someone else mentioned seeing a Mac OS X-like "dock" in the video, however, I couldn't make it out -- though I did glimpse a couple of objects that seemed similar to the "wheely" things you can see in this collection of supposedly leaked Windows 7 screen shots.
Bottom Line: Nothing revolutionary -- just a logical integration of multi-touch principles into the core Windows interface. More important, it's all stuff that you could build easily using the Vista/2008 code base as your foundation, which is encouraging from a "can they really pull this off?" perspective.
What we've learned this week:
- Windows 7 will be built upon the foundation laid down with Windows Vista. No real surprise here. I've been saying this for months (though it's always nice to be proven right).
- "MinWin" and other "academic exercises" are just that: research projects. The real Windows 7 kernel is a natural evolution of the Vista kernel, including seamless support for Vista device drivers. After the debacle of Vista's early driver compatibility woes, this is a good thing.
- Microsoft's Next Big Thing (NBT) will be touch ... and voice, and digital ink, and all forms of alternative input metaphors. Combined with the next generation of touch-enabled PCs, this could be a game changer.
After 20 years of mice and keyboards (and all manner of ergonomic tweaks to make them less crippling to our weary hands), I think the human race is ready for a change. Multi-touch could be the next "killer app," the one cool, must-have feature that drives Windows 7 adoption. I know I want it!
Have the floodgates finally opened? Has Microsoft finally turned the corner on Vista in order to focus full-time on promoting Windows 7? Maybe yes, maybe no. There's still way too much we don't know about the next Windows -- like how the UI will change for us "touch-challenged" users with older PCs. However, if Microsoft continues on its current path of revealing tidbits though myriad outlets, we'll have plenty to dissect in the coming weeks. Stay tuned!
Posted by Randall Kennedy on May 28, 2008 12:18 AM
May 13, 2008 | Comments: (0)
Update: Since first posting this entry I've been in communication with Microsoft about the BSOD I encountered with the ATI installer. In an effort to assist them in their investigation, I recreated the scenario that caused the failure and proceeded to capture memory dump information for them to dissect. It's also worth noting that bug continues to be reproducible under Hyper-V Release Candidate 1. It seems to have something to do with the installer attempting to probe the hardware in order to identify the specific device make, model and revision - a common task performed by driver installation programs from myriad vendors. My advice is that, if you must deploy Hyper-V, make sure you perform any driver updates - including those for plug & play or hot-pluggable devices - with the server in an idle state and with any hosted VMs shut down or with their running state saved to disk. Given the catastrophic nature of this failure mode, and the general fragility of the Hyper-V driver architecture, it is my opinion that you simply cannot be too careful when maintaining the host/root partition of a Hyper-V server
A house of cards -- that's how I'd describe the current state of the Windows device driver ecosystem. With so many Windows-compatible devices and so few competent driver developers, it's no surprise that hunting for driver updates has become a necessary part of every power user's skill set. Most of the time, the search ends in frustration: Either the new driver doesn't correct the existing problem(s) or, worse, creates a set of new ones. And now, with the introduction of Hyper-V, we have a whole new failure vector to think about.
In a nutshell, one of Hyper-V's advertised strengths -- the host partition's ability to work with generic Windows device drivers -- is also its greatest weakness. That's because the quality level of Windows device drivers, especially those from third-party developers, is notoriously inconsistent.
I found this out the hard way while experimenting with the Hyper-V Release Candidate on a newly configured Windows "Workstation" 2008 system. After enabling the Hyper-V role in Server Manager, I made the mistake of trying to install the latest ATI Catalyst (8.4) software for the system's X1300 display adapter. The resulting Blue Screen of Death was both alarming (I hadn't seen one of these in months) and puzzling: I had successfully installed this driver before, on the same system, without incident. The only difference this time around was Hyper-V (uninstalling the role and rebooting allowed me to complete the driver installation).
Even more disturbing was the fact that I had just finished watching an old (December 2007) Channel9.com interview with Mark Russinovich, a Technical Fellow at Microsoft and one of the smartest guys I know. In the interview, Mark talks about Hyper-V and how its ability to leverage existing Windows drivers in the host partition gives Microsoft a competitive advantage over certain unnamed competitors (read: VMware), which require custom drivers for their proprietary hypervisor OS layer.
It all sounds great on paper, until you realize that it effectively places Hyper-V -- and the rest of Microsoft's virtualization architecture, for that matter -- at the mercy of the single most glaring weakness of the Windows ecosystem: third-party device driver developers, most of whom have no idea what Hyper-V is or how to avoid tripping over it during driver configuration/installation.
I point this out because it runs counter to everything that makes VMware's ESX platform so compelling. With ESX, you get, effectively, a black box: a proprietary environment, but one with its own, rigorous testing and development model. The pieces that go into that box -- the drivers and services that extend the Console OS layer (which is, itself, a derivative of Linux) -- are carefully vetted to ensure at least a baseline level of robustness.
By contrast, the Windows device driver landscape is more akin to a Wild West shoot-out. And while you can try to minimize the risk by sticking to Windows Hardware Quality Lab (WHQL)-certified products, there's no guarantee that they'll work reliably under the added stress introduced by the shared VM bus architecture on which Hyper-V is built. Eventually, something is going to cause a conflict, resulting in the kind of catastrophic system failure I experienced during the aforementioned ATI driver installation.
Bottom line: What Microsoft needs is more and better certification options. The company needs to expand WHQL to include Hyper-V testing and/or create a parallel program that further tests WHQL candidates for Hyper-V compatibility. Until then, it'll be hard to take its virtualization plans -- desktop or server -- seriously.
Posted by Randall Kennedy on May 13, 2008 03:00 AM
May 07, 2008 | Comments: (0)
How Unix politics are killing OS innovation
It's frustrating. Each time I think I've found a viable long-term replacement for my Windows development and testing environment, along comes some stumbling block to trip me up. And while these hurdles are mostly technical, the "root" causes (pun intended) are almost always political in nature.
Case in point: My various bouts with the disease known as "Ubuntu-itis." Every six months or so I get the urge to jump ship and join with the great hippie masses swaying to the open source beat. But then "the man" has to come and spoil the fun. All that finger pointing about the ACPI bug -- nVidia pointing to the kernel team pointing back at nVidia, with me pointing at Canonical for failing to sort the whole mess out. It's like trying to decipher that Battlestar Galactica "Last Supper" picture: Everyone's got a knife out for someone else (FYI, I'm leaning towards the doe-eyed Dualla as the final Cylon).
This week it's OpenSolaris, the new kid on the FOSS block that may not be quite as "open" as Sun would like us to believe. That's because, despite public statements to the contrary, Sun may not "own" the Unix IP in the way that most of us think of ownership. In fact, it's looking more and more like the only true IP holder is Novell, the same company that just got done grinding SCO's bones to make its bread. If they get hungry, might they turn on Sun? How much damage could Novell inflict if Sun decides to go ahead with a GPL-3 license for OpenSolaris and the folks from Provo object? More importantly, would you feel comfortable adopting an OS platform that may get litigated out of existence before its first birthday?
It's a shame because I actually like OpenSolaris. The 2008.5 release is polished, easy to install/configure and seems chock full of promise. During my own preliminary testing, the Gnome-based UI had me feeling right at home, though re-inventing the package manager wheel seemed a waste. Most of my devices were supported (I tested on a Dell OptiPlex 745 instead of my usual XPS notebook), including such esoteric stuff as the bay-mounted 12-in-1 memory card reader (Memory Stick Pro Duo support -- yeah!). Even VirtualBox seemed to work correctly, which isn't surprising since Sun now owns the code base.
Overall, it was far more pleasant experience than my various PC-BSD misadventures. I got the sense that Sun actually knows what they're doing with Unix, which makes the thought of Novell stomping this nascent Linux challenger into oblivion that much more disturbing. Here's hoping that OpenSolaris survives and serves to keep the increasingly insular Linux community -- including the "hear no evil, see no evil" crowd that controls the kernel -- honest.
Posted by Randall Kennedy on May 7, 2008 12:10 AM
April 21, 2008 | Comments: (0)
Note to Popular Mechanics: Leave the PC reviewing to us professionals
As a veteran IT professional, I often get a kick out of how the mainstream media views technology. Whether it's some pseudo-custom UI in a Hollywood blockbuster (take "True Lies" and the Arabic Mac-in-Windows, for instance) or a newscaster trying to explain the intricacies of the DOJ/Microsoft antitrust ruling, I can't help but snicker when I see or hear something that shows just how ignorant the presenter really is.
Case in point: The recent "Ultimate Lab Test" showdown in Popular Mechanics. Why this bastion of insight into experimental flying machines and homemade survival shelters felt the need to comment on the whole Apple vs. PC debate is beyond me. However, I'm not one to look a gift horse in the mouth -- and as biased, uninformed "puff" pieces go, this one's a doozy!
Some observations:
- The hardware configurations weren't identical. In fact, they weren't even close. In some cases the systems were separated by as much as 2GB of RAM. In others, they weren't even using the same CPU generation. Clock speeds were all over the map. The whole "methodology" was a joke.
If there is a Cardinal rule to benchmarking, it's this: Make sure the systems are similarly, if not identically, configured. This includes things like hard disk rotational speed (never addressed in the PM article); Front Side Bus (FSB) speed (again, ignored by the article); memory speed/latency (another omission); and so on. Just saying the system has "2GB of DDR2" and a "160GB hard disk" doesn't cut it. Subtle variations in system specification can have a big impact on performance. You need to be precise in your disclosure or the tests are worthless.
- There was also only minimal disclosure of the software stack. For example, did the Vista systems have Service Pack 1 installed? Also, was it a clean install? Or was the system still full of the 100+ layers of crapware that every PC vendor seems to bundle these days? How about driver revisions? Vendor-specific tweaks or fixes?
Again, saying it was running Vista is meaningless. Unlike Apple, the Windows universe revolves around a diverse ecosystem of complementary components. When and how these components are integrated, including which drivers are employed and how the overall software stack is constructed, can have major consequences for performance.
- They're Mac enthusiasts, and this skewed the coverage. I know, I know, I'm going to get flamed to damnation for this statement. However, if you take a moment to look at the situation from a PC enthusiast's perspective, you'll begin to notice the well-defined Apple bias permeating the article.
For starters, when specifying the PC test bed, they chose form over function. While not unique to Apple enthusiasts, the bias toward good design over raw performance has always been a hallmark of the "enlightened" RDF (Reality Distortion Field) crowd. That any competent PC buyer could assemble a more powerful, capable bundle that would run rings around both test beds -- and do so for half the stated price -- is lost on them. They looked at their iMacs and saw an all-in-one design. Then they looked at the PC landscape and chose its corollary. Never mind that the system they chose was a piece of crap iMac knock-off designed to woo would-be Macolytes at the local Best Buy. It looked the way they thought a computer should look: Sleek. Refined. Artistic.
Then there's the obsession with startup times. Apparently, Mac users spend a lot of time booting their systems (instability?). Regardless, the fact that Vista boots like molasses is irrelevant: Most users don't power their systems off anymore anyway -- they soft-power them into a suspend/hibernation state and resume them when they need to use them again. This focus on startup times shows that the reviewers are out of touch with how the PC world thinks and works, which is not surprising since they're obviously Mac enthusiasts masquerading as "objective" reviewers. Typical.
In the end, it doesn't really matter that much to me since no competent system buyer will be taking their cues from Popular Mechanics. All of which leads us to the true audience for the PM article: Mac enthusiasts, a crowd so myopic and delusional that they have nothing better to do than read about how smart they are for buying a Mac in the first place. The folks at Popular Mechanics told us so!
Posted by Randall Kennedy on April 21, 2008 10:17 AM
April 10, 2008 | Comments: (0)
Ubuntu: More doomed than ever...
UPDATE: I just tried a clean install of the Ubuntu 8.04 RC build. Setup completed, the system rebooted and I logged into the desktop. I then clicked the Power button in the upper right corner and chose Suspend from the list of options. Went to resume and...wham! Black Screen of Death! On a pristine install with no proprietary drivers (first boot after setup completed). Unacceptable!
I consider myself a patient person. When it comes to OS quirks and difficulties, I've put up with more than my fair share. After all, I was an original Windows NT 3.x early adopter (feel my pain), which means I've come to accept that obscure, niche computing platforms invariably suffer from a long list of compatibility issues and functional compromises.
By contrast, I have little tolerance for such quirks or anomalies under more "mainstream" computing environments. A buggy, half-baked device driver might be "de rigueur" for PC-BSD. But produce a similar result under Windows XP or even Vista, and you have the makings of a public scandal.
That's why I simply cannot ignore the ongoing debacle that is ACPI support under Ubuntu. Despite six months of user complaints, dozens of bug reports and one very public scolding (by me), Ubuntu still does not run reliably on notebook PCs.
That's right: The ACPI bug I encountered with Ubuntu 7.10 "Gutsy Gibbon" has been carried over to Ubuntu 8.04 "Hardy Heron." In other words, the suspend/resume "black screen of death" is back, and nastier than ever!
This is unacceptable. Canonical, Ubuntu's publisher, wants us to see their "distro" as a mainstream alternative to Windows. Yet, even as they pile on new features - some of which, like WUBI, are designed to entice Windows users to kick Ubuntu's tires - they blatantly ignore glaring holes in the distro's underpinnings.
To clarify: I installed the Ubuntu 8.04 "Hard Heron" BETA on the same Dell notebook (XPS M1710, nVidia GeForce 7900GS graphics, 4GB RAM, Core 2 Duo T7200 CPU) that I tested Ubuntu 7.10 "Gutsy Gibbon" on last year. Using the default open-source nVidia driver I got an immediate "black screen" upon resuming from a suspend-to-RAM state. Switching to a proprietary nVidia driver left me with a "white screen." In both cases, I had to use the ACPI-override technique (hold down the power switch for 5 seconds) to shutdown the system.
Six months to correct the problem and they still can't get laptop power management right! This is just crazy! If Microsoft delivered anything close to this level of dysfunction there'd be calls for an FTC investigation!
Thankfully, the folks from Redmond got their act together long ago and made Windows work fairly reliably with mobile hardware. In fact, Vista has pretty much perfected the suspend/resume experience (with XP not far behind). By contrast, Ubuntu turns my $3,000.00 USD laptop into a very expensive (in terms of price/performance) desktop. Without suspend/resume, I'm screwed.
The whole situation really does boggle the mind. How Canonical can expect to be taken seriously as a mainstream OS provider when they can't get something as basic as power management working is beyond me. I had high hopes for "Hardy," if for no other reason than I expected my "showstopper" ACPI issues to have been resolved. That Ubuntu 8.04 remains unpalatable because of a stale, well-documented holdover bug from the previous version is really disappointing.
Posted by Randall Kennedy on April 10, 2008 09:55 AM
April 09, 2008 | Comments: (0)
Burned by Acrobat and Windows Update...on the same day!
I'm starting to hate Windows Update. No matter how many times I try to disable the Automatic Updates feature it somehow manages to re-enable itself, often with disastrous results.
Case in point: This week's "Patch Tuesday" batch of updates for Server 2008. I went to manually check for the updates and force a download only to discover that they were already 95% complete - this despite the fact that I had very deliberately disabled Automatic Updates when I first installed Server 2008 as a "Workstation" OS. Worse still, once the download had completed I started getting those "nag" screens about how I needed to reboot my PC, etc., to complete the updates.
Since I was in the middle of working on something, I clicked the "Postpone" button. When the "nag" screen appeared again, I reset the "Reminder" interval to 4 hours (the default is 10 minutes) and again clicked the "Postpone" button. I figured by then I'd be done with my day (it was already late evening) at which point the system-initiated reboot could proceed unhindered by my constant interference.
Unfortunately, I never got the chance to execute my plan. A few minutes after clicking the "Postpone" button a second time, Windows decided that enough was enough and proceeded forcibly reboot my system without my consent - this despite the fact that I was still actively typing at the keyboard! I was left to watch helplessly as my unfinished web posting disappeared in a blur of closing windows and fading UI effects.
After a longer-than-usual boot cycle (due to the large number of updates being applied), I finally got to log back in and assess the damage. To its credit, Windows tried to ease the pain by re-opening some of the applications that had been running before it so rudely intervened. However, nothing could bring-back my now vaporized web posting. I then checked my system's Windows Update settings and, lo and behold, it had been reset to Automatic again. I've since disabled the entire Windows Update service in Control Panel. I can only hope that'll be enough to slay this monster once and for all.
They say that calamities travel in packs, so it was no real surprise when, shortly after my system was forcibly rebooted, it hung solid. The culprit: Adobe Acrobat Reader. I had noticed for some time that, whenever I opened a PDF file, my mouse pointer would mysteriously "disappear," only to "reappear" just as mysteriously a few seconds later. I chalked it up to some minor flakiness in Adobe's rendering engine. The bug seemed harmless enough - until I made the mistake of actually moving my mouse to try and resurrect the pointer.
Suffice to say that Windows Server 2008 hung-up quite nicely at that point. In addition to the missing pointer, my keyboard was now dead. I tried disconnecting/reconnecting the mouse dongle (I use a Microsoft Wireless Notebook Laser Mouse 7000), pressing CTRL-ALT-DEL, the works. I finally realized that I was in fact screwed when the system's "soft" power button didn't respond (normally it should trigger a graceful shutdown). I ended up having to execute the infamous "ACPI override" technique (hold down the power button for 5 seconds or more) in order kill the beast.
My next stop - after waiting through another painful Windows reboot cycle - was Google. A quick search on the term "Adobe Acrobat disappearing cursor" brought up a host of message board complaints about this very same phenomenon: The cursor going missing during PDF loading, and sometimes never coming back, leaving the user with a locked-up desktop.
I'd like to assign sole blame to Adobe for the bug (I've since dumped Reader in favor of Foxit's free alternative), but the fact is that no application should be able to lock-up the Windows desktop in this fashion - at least not since the mass migration from DOS/Windows to the Windows NT code base. As those familiar with early NT design parameters will attest, a major robustness selling point was the introduction of asynchronous, per-process input queues for mouse and keyboard I/O. In fact, this was one of the marketing bullets used by Microsoft when pitching NT as a competitor to OS/2. The latter used a shared input queue model that was susceptible to lockups from a misbehaved application. NT's model was more reliable, though it did wreck havoc with window focus assignment in certain instances.
Frankly, I thought we were beyond this sort of thing with Windows. However, given the amount of "kludging" that's gone into the code base since Microsoft "unified" its desktop offerings under Windows XP, I wouldn't be surprised if they compromised this feature in the name of some consumer-focused requirement, like improving video game input throughput under DirectX.
Regardless, it's sad to see my once robust NT reduced to a quivering mass of bloated Vista hacks and compromises. And since I normally run Windows Server 2008 as my desktop, this latest crash does not bode well for Microsoft's enterprise reputation. After all, nobody should be able to take-down a multi-million dollar server farm simply by loading a PDF document at the system console.
Posted by Randall Kennedy on April 9, 2008 12:55 AM
April 08, 2008 | Comments: (0)
Bitter fruit and broken promises: My "hackintosh" odyssesy (and more)
A week ago I solicited suggestions on which version of *nix to try next. I'd been "jonesing" for a new OS experience, and it made sense to see how some of my previous choices had evolved during my six month hiatus. So, after collecting a long and varied list of possible targets, I set out on my odyssey to find out if any of the current crop of *nix variants could serve as a full-time replacement for my satisfying - yet entirely unsupported - Windows 2008 "Workstation" configuration.
Since I was starting from scratch, I decided to go with the most radical suggestion first: Turn my Dell XPS M1710 notebook into a "hackintosh" by installing OS X. I've always been curious about OS X - just not enough to spring for a new notebook. So the "hackintosh" route seemed like a nice alternative.
My previous attempts at creating such a beast, using a modified OS X 10.4.9 "Tiger" installation DVD, had all been unsuccessful. Either the OS wouldn't install at all or, when it did, the video was so distorted that I couldn't continue. I was, therefore, quite pleased to discover that an intrepid group of "hackintoshers" had put together a new 10.5.1 "Leopard" version of the modified OS X DVD image (i.e. the "iATKOS" DVD) . This new compilation promised a "one step" installation process as well as better device support for the myriad non-Apple hardware peripherals that a "hackintosher" might encounter.
Unfortunately, the experience didn't quite live up to the hype. Yes, I was able to successfully install OS X 10.5.1. And yes, the video worked reliably on the first try (using the "NVinject" kext). However, I ran into all sorts of problems with the OS X kernel and its interactions with my dual-core T7200 CPU (lots of pointer stuttering and delayed keyboard/mouse input).
I was able to work around this issue by disabling dual-core support in the Dell's BIOS (thus turning my notebook into a single-core system), but it seemed like a kludge fix at best. Then, when I realized that my notebook's Intel 3945ABG wireless adapter was not supported (and likely never would be since Apple doesn't use this device in any of its models), I knew it was the beginning of the end for my "hackintosh" odyssey. Since I also could not get my Broadcom wired Ethernet adapter to work (making searching for a solution online nearly impossible), I finally threw-in the towel and ditched OS X in favor of the next OS on my list: PC-BSD 1.5.
When I first tried PC-BSD (version 1.4) last fall I found an OS that did a fairly good job of masking the complexities of the underlying BSD UNIX. Unfortunately, spotty device support (that annoying wireless card again) ended my experiment prematurely. So when I heard that the PC-BSD folks had improved wireless support with version 1.5, I became optimistic that my next foray into BSD-land would be more successful.
Foolish me! Yes, PC-BSD is still quasi-user-friendly (the installer was a breeze). And yes, they've put some "spit and polish" on their KDE-derived UI. However, my Intel 3945ABG adapter *still* is not supported. Given how prevalent the adapter is (i.e. part of the whole "Centrino" package) this is simply unacceptable. All major Linux distros have gotten this right a long time ago. The PC-BSD folks need to wake up and smell the modern hardware.
Note: I even attempted to compile my own driver using the "ndisgen" utility and the Windows XP driver for my card. Now the OS won't boot (gets past the boot loader menu and then restarts - over and over). Add to this the bizarre behavior of the accelerated nVidia drivers (screen will suddenly freak out and become unreadable, forcing me to hit the Big Red Switch) and I decided that, for my purposes at least, PC-BSD is still not quite "fully baked." Perhaps when they move to the BSD 7.x base things will get better.
Two attempts, two failures. Maybe I've gotten soft. I've become so used to the stellar device support under Windows that I no longer have the patience to tinker endlessly with my OS. Even Windows NT 3.1 wasn't this hard!
Anyway, time to move on. Next up: Ubuntu 8.04 "Hardy Heron." I just hope they've fixed that showstopper ACPI bug!
Posted by Randall Kennedy on April 8, 2008 09:53 AM
April 04, 2008 | Comments: (0)
This week, the blogosphere has been chock full of ranting about Windows XP's impending demise. The confirmation by Microsoft that Windows XP will cease to exist as a commercial product at the end of June has triggered all kinds of commentary, including at least one exhortation to just "let XP die, already!"
The problem with this logic is that it assumes there is a viable alternative. Unfortunately, Windows Vista is not it, a fact attested to by the OS' meager 6 percent installed base in the enterprise. And while Windows Server 2008 has proven to be a formidable workstation OS, such a non-standard configuration will never achieve mainstream desktop status.
This leaves the typical Windows IT shop with few options. They can jump ship and try a competing platform, like OS X, UNIX or Linux; or they can try to stick with Windows XP until something better (Windows 7) comes along.
As I've shown, you can indeed skip Vista without any long-term repercussions. By doing so you'll save time, money and resources - all of which can then be applied to more pressing issues, like improving end-user productivity (i.e. what happens when every other new CPU cycle isn't being chewed-up by DRM and excessive code bloat).
Simply declaring XP "dead" won't change the IT community's opinion of Vista anymore than artificially delaying critical Windows XP bug fixes (i.e. Service Pack 3) will magically transform Vista from unwanted "bloat-ware" into "must have" upgrade. The market has spoken. The damage is done. The betrayal is complete.
Instead of trying to ram Vista down our throats, Microsoft should face facts and start thinking about how it can rebuild all those bridges they burned along the way. A good starting point would be allowing us to continue purchasing new systems with Windows XP on them. That, plus engaging us early in the planning and development of Windows 7, would go a long way towards appeasing the Windows faithful.
But simply pulling the rug out from under us - without providing a viable alternative - is not the way to treat your loyal customers. In fact, that's how you turn them into disloyal customers - and create the opening that your ultimate successor uses to take down your empire.
Posted by Randall Kennedy on April 4, 2008 03:24 PM
March 20, 2008 | Comments: (0)
You can never have too many cores
Or be too young. Or too thin. Or too rich.
It's a truism: Ever since the introduction of Windows 2000 Workstation - which was the first mainstream Windows client OS to support Symmetrical Multiprocessing (SMP) - desktop PCs have been in a position to exploit multiple CPUs and/or CPU cores. However, most early users couldn't understand why they might need or even want more than one "brain" in their systems. After all, how fast does Word need to run before you start to see diminishing returns?
Of course, what these early users didn't see (and what many current users still fail to grasp) is the fact that there's more going on under the hood on their PCs than just Word executing a global search/replace. Each new generation of Windows and Office has introduced additional layers of overhead - new services, malware detection, encryption/compression, auto-complete/spell-checking/formatting - that steal CPU cycles from the foreground task: Word, Excel or whatever you're working on.
Back when I was under contract to Intel's Desktop Architecture Labs (DAL), we even had a name for this phenomenon: "Constant Computing." The idea was that, as software complexity grew, the number of "idle" cycles available on a given desktop would (and should) decrease. More complexity = more demand for CPU cycles. This was especially true in enterprise computing environments where a "base" system image usually included several dozen layers of agents, services and background tasks that would run in parallel with the user's day to day application tasks.
Unfortunately, in the Windows 2000 timeframe, dual-core CPUs were still the stuff of fantasy. If you wanted SMP on your desktop you bought a system with two or more discrete CPUs - a cost-prohibitive prospect even today. However, with the introduction of competitively-priced dual-core CPUs came the first mainstream shift to SMP-based computing.
With dual-core (and now quad and even six-core) CPUs, users are finally learning what high-end SMP workstation users have known for years: That having more than one CPU allows Windows to multitask smoother and generally deliver a more responsive experience, even with lots of background services running.
With the number of cores going up (Intel plans to deliver its six-core offerings later this year), chances are that you'll continue to see good foreground performance no matter how much enterprise computing "baggage" gets tacked onto your computing stack. All of which makes statements like "Who would want all those cores?" seem silly. As we've seen with Windows Vista, Microsoft is more than capable of finding a use for available CPU cycles. In fact, given the level of Windows and Office code bloat I've witnessed over the past few years, the better question is: "What will you do without all those cores?"
Bottom Line: You don't need specialized, multi-threaded applications to reap the benefits of SMP support in Windows. If nothing else, those additional CPU cycles will help to offset the code bloat that threatens to bury each new generation of PC hardware. And with Microsoft at the helm, it's a good bet we'll all be wishing Intel would crank-up the cores-per-CPU count even faster.
Posted by Randall Kennedy on March 20, 2008 02:10 AM
March 17, 2008 | Comments: (0)
As if the commotion over Windows "Workstation" 2008 weren't enough, a recent survey of IT shops shows that over 70% of respondents will still be using their "current OS" in 2009. Since the overwhelming majority (92%) of these sites are still running Windows XP, that means that Vista will likely never achieve critical mass in the enterprise.
To those of us working "in the trenches," this really comes as no surprise. Resistance to Vista has been stiffening in recent months, with many shops crying a Roberto Duran-esque "no mas" as they leap off the Wintel treadmill in droves.
[ Tell Microsoft to keep XP available indefinitely. Join the 100,000 who've signed the "Save XP" petition. ]
So, if Vista is doomed, and if IT shops are indeed rejecting the OS en masse, the question has to be: Was Microsoft's new OS dead on arrival?
I asked myself this very question as I was assembling my 10 reasons why it's really OK to stick with XP (It is, honest! See "Death Match: Vista vs. XP" for details). As I thought back through Vista's first year - the struggles with buggy drivers, WGA's invasiveness, the disappointing SP1 - I realized that the writing was indeed on the wall. In fact, many of us who were beta testing Vista back in 2006 quietly expressed our concerns to one another in web forums, chat rooms and the occasional email thread. After all, we were privy to some of the earliest Vista bits, and what we saw disturbed us.
Here was an OS that, from an enterprise IT standpoint, had almost nothing going for it: No major new technologies; no paradigm-shifting architectural changes; nothing to whet a system administrator's appetite. What it did have was layers and layers of consumer-focused baggage: Pervasive DRM plumbing; dubious multimedia prioritization tweaks; OS X-envy driven eye candy. Basically, it was an OS designed to secure Microsoft's seat at the RIAA/MPAA roundtable, and little else.
I'll never forget the day early in 2007 when one of my contacts at a Wall Street trading firm asked me how I liked Windows Vista. I responded with a half-hearted "great," to which he replied: "Really? So tell me why you think we should upgrade."
I was stumped. I couldn't think of a single reason why one of the largest financial institutions in the world - with tens of thousands of desktops and a multi-billion dollar IT budget - should move to Vista from their well-tested, proven Windows XP configuration.
It was a seminal moment for me - the point at which I realized that the vague sense of unease I'd felt early on was in fact my subconscious telling me what I knew to be true all along: Vista was a lame duck; a false hope; a cadaver before it ever hit the operating table.
So, as we start to formulate an epitaph for Windows Vista ("Here lies, in bloated agony, all that's wrong with the Wintel duopoloy"), we must look to the future and hope that Microsoft finally learns from its mistakes.
Windows Vista - 2006-2008 - R.I.P.
Posted by Randall Kennedy on March 17, 2008 10:19 AM
March 12, 2008 | Comments: (0)
Windows "Workstation" 2008 results lead to backlash from Vista zealots
I love irony. After a year of rabidly defending their platform, the Vista zealots are now eating their young. Specifically, they're attacking those of us who've discovered that the core Vista bits run great, just not when packaged as Windows Vista.
In case you've been living under a rock these past few weeks:
It has been discovered that Windows Server 2008 in "desktop" mode (a.k.a. Windows "Workstation" 2008) runs circles around Vista, thus proving that - if they set their minds to it - Microsoft can produce a solid, enterprise-class OS using the Vista code base.
The problem is that Microsoft didn't put this same effort into Vista, resulting in an OS that - whether due to different kernel switches/tweaks or the inclusion of certain DRM layers - is a bloated pig on even modern hardware. To those of us seeking a better "Vista" experience, Windows "Workstation" 2008 is salvation.
Of course, none of this sits well with those in the Vista zealot camp. Some claim that the test results are inaccurate, that Vista and Server 2008 share the same code base and thus cannot perform differently. Others are claiming that the tests were invalid because Server 2008 ships with a much "leaner" default configuration. They say that if you enable all of the "desktop" features on Server 2008 - or vice-versa with Vista - you'll see that they in fact perform comparably.
However, if these people had bothered to read the disclosure part of the test scenario in question, they'd discover that the exo.performance.network researchers did turn on all of the "desktop" features in Server 2008 (Indexing, SuperFetch, Aero, et al). In fact, they afforded Vista every opportunity to perform, and yet it still fell well behind "Workstation" 2008 in a variety of test scenarios.
Note to the Zealots: The numbers are what they are. If you don't believe them, run the tests for yourself (all of the tools used by the xpnet.com research staff are freely available through their web site). Personally, I've yet to encounter a "Workstation" 2008 convert that isn't ecstatic with the results. It's faster. Period.
In the end, I can't help but pity these misguided Vista zealots. As true believers, they've steadfastly defended Vista as being as fast as Microsoft could make it given the level of complexity involved. To now have their benefactor "cut them off at the knees" - by providing evidence (Server 2008) that Vista is, in fact, slower than it needs to be - must be a bitter pill indeed!
Posted by Randall Kennedy on March 12, 2008 04:10 PM
March 10, 2008 | Comments: (0)
Windows "Workstation" 2008: One week later
It's been just over a week since I took the plunge and nuked my Vista SP1 installation in favor of a desktop implementation of Windows Server 2008 (aka Windows "Workstation" 2008). So far, it's been a smooth ride. All of my core applications are working flawlessly, including SQL Server 2005, Visual Studio 2008 and Office 2007. In fact, outside of the multimedia issues I mentioned in my previous entry, I'd be hard pressed to find fault with the experience.
Some observations:
- Visual Studio 2008 flies on "Workstation" 2008. This is no joke. I was ready to throw in the towel on Studio 2008 under Vista. Now, time-consuming operations -- like selecting a complex ASP.Net object on a heavily populated Web form -- that would bog down under Vista just snap right along under 2008. The IDE loads faster, as do my projects. As far as Studio 2008 is concerned, "Workstation" 2008 has delivered an all-around speed boost and has proven to be a real productivity enhancer.
- VMware Workstation also runs better on 2008. I'm a big VM user because I need to test my code against so many different OS permutations. With "Workstation" 2008, juggling even large, multi-gigabyte VMs is a breeze. You immediately sense the performance improvement as even hard-to-virtualize OSes, like Vista x64, run more smoothly. It's made the process of testing my latest revisions that much more pleasant.
- The OS never feels "sluggish." Under Vista, you inevitably reach a point where the OS starts to "slow down." It may be after a day of heavy use or even a week of on-again/off-again (or in the case of my Dell XPS M1710 "notebrick," suspend-again) computing. But eventually you'll feel the need to reboot and start clean. With "Workstation" 2008, I've yet to encounter such a malaise. Whether it's better memory management or simply a more mature, polished code base, "Workstation" 2008 delivers a level of robustness and consistency that Vista can't touch.
Of course, the really bizarre aspect to my "Workstation" 2008 experience is that, from a technical standpoint, it doesn't make sense - or at least, it shouldn't. With the same kernel (as of Vista SP1), the OSes should in fact behave similarly.
To be sure, the Windows Server 2008 kernel is configured differently at boot-up. Different switches are applied to tune the kernel for server duty. In fact, this was the norm with all "NT" client and server releases prior to Windows XP: A shared code base differentiated primarily by boot-time tuning of the kernel image. However, it's hard to fathom how tuning alone could cause what is essentially the same OS to behave so differently in identical workload scenarios.
Something else is going on here - or perhaps isn't going on. Some of my "Workstation" 2008 compatriots have speculated that DRM is to blame, that Windows Server 2008 boots with less of the DRM plumbing than the consumer-oriented Vista and that this, in turn, frees up cycles for more important tasks (like the applications you're running to actually get some work done).
Whatever the cause, I will continue to dig into the differences between the Vista and "Workstation" 2008 runtime environments. In particular, I'll be looking for evidence of OS layers that might be missing from the overall "Workstation" 2008 stack, layers that might be the source of the up to 17 percent performance hit that tests show Vista's particular flavor of the "NT 6.0.6001" kernel introduces.
I'd also like to hear what other users are finding as they experiment with Windows "Workstation" 2008. Let's get the dialog going and see if the initial hype stands up to some old fashioned scrutiny. Fire away!
Posted by Randall Kennedy on March 10, 2008 12:21 PM
March 05, 2008 | Comments: (0)
Windows "Workstation" 2008 Clobbers Vista in Benchmark Testing
Just when you think you've got it all figured out, along comes another curve ball to keep you guessing. This time around it's a set of new benchmark test results from our old friends at the exo.performance.network. Apparently, these guys heard about the brouhaha surrounding some Microsoft's engineer's blog post about using Server 2008 as a "Super Workstation OS" and decided to put the concept to the test. They loaded each OS onto identical hardware, tweaking the Server implementation to make it look and act like Vista. Then they tested them under a variety of productivity and multitasking scenarios.
The net result: Windows "Workstation" 2008 (i.e the tweaked Server 2008 installation) trashed Windows Vista with Service Pack 1, outscoring its desktop sibling by as much as 17%.
You can read all the gory details over at the exo.blog site. Suffice to say that there's a new option for power users who are fed-up with Vista's sluggishness: Windows Server 2008, or as I'm now calling it, "Windows NT 6.1 Workstation."
I made the switch myself this past weekend in support of my upcoming feature on the "Top 10 Reasons (Not) to Switch to Vista." And after just a few days running this beast I can honestly say that I will never go back to the sad piece of "bloatware" that is Windows Vista Ultimate. "NT 6.1 Workstation" is simply a superior OS. It's faster, feels more responsive and seems to do a much better job of managing the 4GB of memory I've thrown at it (Vista always seemed a bit page file-happy, even with the 4GB).
To be sure, there are things I miss about Vista. For starters, there's no Media Center. I had to scrounge around for a bunch of 3rd party CODECS just to play a DVD. Nor are any of the Vista Games available on Server 2008 (Solitaire, I'll miss you!). Useful Vista accessories, like Fax & Scan and the Windows Sidebar, are MIA, while some 3rd party tools are just plain broken (e.g. I had to downgrade my Skype install to version 3.2 since anything newer would crash consistently).
On the flip side, I can now run any and all Microsoft server applications locally, which makes debugging things like ADSI and SQL Server's Integration Services that much easier. In fact, as a pure development platform for Windows applications, Server 2008 is without equal. There's the performance (this OS really does rock). And, of course, you can tap Hyper-V to create a near-bare-metal VM environment. Visual Studio 2008 flies on this release. There really is no downside, especially if you have an MSDN account or are similarly licensed so you can use Windows Server 2008 on your own box for development purposes.
Given all the positives, I can't imaging why Microsoft didn't break-out the consumer aspects of Vista and offer a leaner, meaner "Workstation 2008" version for us hard core types. It would have gone a long way towards satiating our thirst for a "meatier" desktop Windows while rendering much of the "Save XP" messaging moot.
Maybe Microsoft just got lazy...oh well, at least now there's an alternative for those of us who are fed-up with Vista but who just can't live without Aero and the rest of the "6.x" Windows GUI.
Posted by Randall Kennedy on March 5, 2008 10:35 AM
March 03, 2008 | Comments: (0)
Microsoft owns up to Vista's flaws (sort of)
I love lawsuits. The smell of money has a way of dredging up all sorts of interesting and (previously) confidential information.
Take the case of the internal Microsoft email thread that surfaced recently in the wake of the pending "Vista Capable" class action suit. Here you have Steve Sinofsky, the newly appointed head of the Windows development team, confessing that Microsoft knew Vista wasn't ready to ship in late 2006. As he puts it:
"No one really believed we would ever ship so they didn't start the work until very late in 2006."
It sounds to me like he's admitting that even Microsoft's own developers had given up on ever getting Vista out the door. Of course, once they realized they were facing a real ship date (and not yet another moving target), the panic set in and they had to scramble to to meet the November RTM deadline. In other words, Vista RTM was the product of several weeks of Red Bull-infused "all nighters."
Sweet!
But the really juicy part comes later in the exchange. Here, Sinofsky points out that -- even after the OS went RTM -- a great many Windows XP drivers "didn't really work under Vista." He further explains that the fault lay with the "associated applets" -- i.e., the Control Panel icons, Task Bar widgets and shell extensions -- which would not "run within the constraints of the security model or the new video/audio driver models."
How nice!
So, basically, they knew Vista would break a whole lot of stuff (Sinofsky admits that even his own home printer wouldn't work with the RTM drop), yet they kept their mouths shut and shipped the OS anyway. Not exactly what you'd call "full disclosure," but then again forthrightness has never been one of Microsoft's shortcomings.
Of course, those of us who've been using Vista since the early betas knew all of this, at least empirically. After dozens of bad driver experiences you begin to suspect that Microsoft's vaunted backwards compatibility is not what it should be.
Now, with the Sinofsky comments coming to light, we can finally confirm what we all believed to be the case: That UAC was more than just an annoyance. It actually broke things. Important things. Like the UI mechanisms for myriad device drivers.
The folks at Microsoft keep asking us to trust them: That they know what they're doing; that the changes they're making are for the best; and that they'll preserve our investments in each generation of Microsoft technology. But when the "dirty laundry" gets aired, and I come across exchanges like this one, I can't help but feel a bit betrayed.
Note to Microsoft: If you're trying to implement an important and worthwhile new technology -- like UAC -- and you know you need to break some stuff to get it done, please just own up the the problem and let the IT community make up its own mind. Because, chances are good that -- if you deal with us honestly and present your case convincingly -- we'll accept the "no pain, no gain" logic and go along with you. But playing "hush-hush" with a major compatibility issue when your own people are struggling with the problem, well that's just bad form all the way around.
Posted by Randall Kennedy on March 3, 2008 06:11 AM
February 24, 2008 | Comments: (0)
Comparing Windows versions: apples to oranges to grapefruit
One of the arguments I hear in defense of Windows Vista's bloated footprint is that it's simply a repeat of the situation faced by users when Windows XP first shipped. Back then, the logic goes, users were complaining about Windows XP's CPU and memory requirements, with many resisting the upgrade push because they simply didn't want to make the necessary hardware commitment.
This argument would make perfect sense if Vista were merely another in a long line of similarly architected OS. However, the truth is that "Windows 6.0" is really only the second mainstream iteration of the current Windows platform (Windows 2000 doesn't count since it was never a mainstream product). As such, there simply is no real precedent from which to draw such conclusions. Windows XP users typically upgraded from Windows 98 or Me. And while there was significant pain associated with that migration, it had more to due with the move to a new kernel and driver architecture (i.e. from extended DOS to NT) than anything else.
As those of us who remember can attest, the jump from DOS/Windows to Windows XP was a quantum leap forward in Microsoft's OS architecture. For the first time, users could run multiple applications reliably, with real preemptive multitasking and memory protection. And while it took time for new drivers to appear, when they did they helped take previously flaky technologies, like Plug & Play, to new heights of usability.
The introduction of Windows XP was a watershed moment for the PC industry, one that firmly cemented Microsoft's role as the pace-setter for the desktop. Contrast this with Vista, which is basically Windows XP with more "stuff" heaped on top, and you begin to see why so many users are balking at the upgrade message. There's simply not enough "meat" to justify the pain involved.
With Windows XP, users of 98 and Me knew what they were getting: A real OS that would finally take advantage of their (at the time) powerful 32-bit machines. Vista boasts no such compelling shift in power or reliability. It's basically "XP Plus," not so much an apples-to-oranges comparison as it is oranges-to-grapefruit: fatter, less tasty and generally tough to swallow.
Posted by Randall Kennedy on February 24, 2008 03:24 AM
February 20, 2008 | Comments: (0)
Despite SP1, Vista is still slower than XP
So here I am, sitting in the main terminal at Dubai International, killing time during my six hour layover by sifting through the headlines surrounding the release Vista SP1. Over at a competitor's site, two prominent bloggers are really going at it, posting contradictory benchmark results that show Vista to be either a) on par with Windows XP or b) much slower than XP on the same hardware.
In each case, the bloggers are focusing on areas in which Microsoft claims to have improved Vista performance with SP1: file copies, network transfers, etc. However, neither author seems be paying attention to the myriad other areas -- productivity applications, services, multimedia tasks -- where Vista is an absolute dog compared to Windows XP.
Did they not read my previous postings on the subject? I made it pretty clear last year that Vista was struggling big time vs. XP on comparable hardware, and that SP1 would be no panacea.
It's like the Microsoft PR machine flipped a switch somewhere and instantly reframed the entire discussion of Vista performance around just those areas it improved on in SP1.
News flash, people: File copying is the least of the problems affecting Windows Vista. Test after test shows that the new OS is a performance slug across the board.
Even when you disable all of the bells and whistles (Aero, Search) and turn-off every conceivable background service (Superfetch, ReadyBoost, etc) -- in other words, strip it down to something comparable to XP in terms of underlying OS footprint -- Vista is still a good 40 percent slower than XP on a variety of basic productivity tasks.
The only solution to this generalized performance malaise is to throw hardware at it: Vista performs quite tolerably on state-of-the-art hardware. Unfortunately for Microsoft, so does XP SP3. In fact, it absolutely screams on today's high-end, multi-core desktops and laptops, which puts customers in the position of having to choose between functionality and raw performance.
In conclusion: Don't be confused by all of these headline-grabbing "performance tests." They're focusing almost exclusively on areas that Microsoft tweaked with SP1. The fact remains that Vista will always require roughly 2X the hardware performance to deliver an end-user experience on par with Windows XP.
And when you finally do give in and buy that new "Designed for Vista" PC, do yourself a favor and provision yourself a small XP partition, just as an experiment. Don't settle for Vista until you've seen how much performance you're trading for that shiny new UI and whatever other bells and whistles you find so irresistible. You may be surprise at just how fast your new PC really is - once it's no longer encumbered by the bloat and sluggishness of "Windows 6.x."
Posted by Randall Kennedy on February 20, 2008 10:23 AM
February 02, 2008 | Comments: (0)
Dell servers + virtualization: a disastrous combination
OFF TOPIC RANT MODE: ON
I like Dell. Over the years I've owned several dozen Dell systems, including notebooks, desktops and servers. So naturally, when it came time to spec out a new server for the exo.performance.network Web site, I went with what I know and bought a shiny new PowerEdge 2950.
The 2950 is a sweet box. Our unit is tricked-out with 8x 2.66GHz 45nm Xeon cores, 8GB of RAM and 1.2TB of usable disk space in a six-disk RAID configuration. It's powerful and also deceptively sleek - the entire unit fits in just 2U of rack space, saving us on co-location costs.
Unfortunately, it's also useless for any kind of server consolidation/virtualization tasks. That's because the unit ships with a pair of integrated Broadcom NetExtreme II gigabit Ethernet NICs, the most virtualization-unfriendly NICs on the planet.
Our original plan was to run SQL Server on the bare iron using Windows Server 2003 R2 x64 edition while hosting our Web site (which includes some proprietary 32-bit ASP.NET components) in a Windows Virtual Server 2005 R2 SP1 virtual machine running the 32-bit version of said OS.
However, after a week of struggling to get the NetExtreme II adapters to maintain the Web site's connectivity (the virtual machine would randomly drop its connection and go "deaf" every few hours, requiring a VM reboot), we had to scrap our plans and instead run the Web site code directly on the Host OS (a process that involved reconfiguring the 64-bit IIS service to run32-bit worker processes - i.e. UGLY!).
In the end, we got the site up and running sans virtualization (see for yourself at www.xpnet.com), but I've now been soured on Dell as a server vendor. Not only was their technical support entirely unhelpful (basically, they passed the buck to Broadcom, even though the adapter is integrated with their hardware), we could find no mention of the problem in any Dell or Broadcom knowledge base entries or support articles. Yet a search on Google yields copious examples of customers encountering the very same problem with this, and similar, Dell servers.
Bottom Line: If you're looking to consolidate servers through virtualization, buy HP..or IBM...or Sun. Anyone but Dell. And stay away from Broadcom NICs! You'll thank me for it...
OFF TOPIC RANT MODE: OFF
Posted by Randall Kennedy on February 2, 2008 11:01 AM
December 29, 2007 | Comments: (0)
Everyone's got an end of year list, so...
- WGA Nightmares
After nearly losing my primary development workstation to this Orwellian scam I began to appreciate why so many power users have switched to Linux. Hopefully, Microsoft will honor its commitment to remove the Vista "kill switch" with SP1.
- Linux ACPI Woes
I was *this* close to switching to Ubuntu. Then I realized that the power management scheme had more in common with NT 4.0 (i.e. effectively non-functional) than NT 6.0 (i.e. a very functional Vista). Perhaps they'll get it right with "Hardy."
- Broken Vista Backup
Inexcusable. If something's stored in a user's personal *data* folder structure (i.e. Document, Picture, Music, etc.) it should be backed-up. Period. That I have to ZIP-up my work each day (including all my my .aspx files) to ensure that Vista's Backup actually picks-up the data is ridiculous. What could've been, what might've been...
- VMware Arrogance
Note to EMC: Rein these guys in a bit, will ya? All that talk about VDI and world domination is getting a bit stale. The real threat to Microsoft's hegemony will come from the browser, not a virtual machine.
- Longhorn Nostalgia
Let's see: Take some aging bits from an incomplete (and now defunct) Windows beta release, mix-in some clever photo-chopping and a few install script tweaks, and voila! You have a hunk of steaming, semi-functional crap that is *still* subject to international copyright laws. Of all the stupid schemes...
- User Account Control
Everyone hates UAC for the wrong reasons. Yes, its annoying. And yes, you're worried that users will just blindly click-through the warning dialogs. However, the real issue is the false sense of security: Even if you pay attention to every elevation prompt you're still not secure. It took less than six months for some clever hackers to discover a potential loophole in UAC's "non-elevated" administrator scheme. Take a cue from the Linux crowd: Dump Vista's default security scheme and run as a true "Standard User" whenever and wherever possible.
- Forking Linux!
Talk about your hyper-sensitive types! I had the audacity to comment on the internal politics of the Linux community! Shame on me! On the plus side, the resultin

