Linux vs Windows 7
It's something of a tradition that we pit the latest version of Windows against our trusty old operating system. This isn't because we want to raise the profile of Windows, or ignite further flamewars on which is better or worse. It's about understanding the market and understanding the competition. Microsoft Windows is by far the most dominant operating system on the planet, and as Linux users, we need to keep on top of new developments, new technologies and new ideas. This gives Linux the best possible chance to grow and remain relevant.
So, if you read our benchmarks comparing Windows 7, Vista and Ubuntu and are looking to find out more on what separates Windows 7 and Linux on the features front, read on...
Both operating systems now occupy a distinctly different part of the market. Microsoft has taken Windows down a purely proprietary route, forging relationships with content providers and hardware vendors that keep full control from the user. Linux is completely open. Out of the box, Linux even boasts better media format support than Windows, and it can be the only way to run older hardware at its fullest potential, especially if there isn't a new driver for Windows 7.
Forewarned is forarmed
Over the life span of Windows 7, public concern for privacy, digital rights management and locked-in upgrades should help Linux to grow as an alternative when users want to keep complete control over their own hardware and software. Microsoft is now operating in a considerably different, and more technologically aware, environment than nine years ago when Windows XP was released.
The European Commission has spent a lot of time, effort and money hounding Microsoft for its alleged anti-competitive behaviour and this is going to have an impact on Windows 7 in Europe, as well as the user's awareness of the issues surrounding choice and bundling. Many average Windows users, for instance, were unaware that Internet Explorer was only one option for browsing the world wide web. Thanks to the European Commission, When Windows 7 is released in Europe it won't feature any browser at all, and for the first time, Windows users will have to make a choice about what they want to install. And making choices can get addictive.
Round 1: Performance
Much has been said about the various performance improvements in Microsoft's next operating system. After the apparent gluttony of Vista hardware requirements, Microsoft has tried to make sure that as many people as possible could attend the upgrade party. Many benchmarks have put Windows 7 performance ahead of both XP and Vista, and we saw some improvements over Vista when we initially benchmarked the open beta earlier in the year.
But when we compared the 64-bit version of Windows 7 against its equivalent Ubuntu release, Linux was faster on most of the tests we ran, including boot time, shutdown time and most of the filesystem tests. The only test where Windows 7 was significantly faster than everything else was the Richards benchmark of overall system performance.
Amount of time taken to execute the Python Richards benchmark. Measured in milliseconds; less is better.
Four months later we performed some of the same tests again, this time pitting the most recent 64-bit Linux distribution (Fedora 11) against the Windows 7 release candidate (build 7100). The most dramatic results for Linux were seen on boot speed, which for the final release of Ubuntu Jaunty measured around 35 seconds, with Fedora 11 close on its heels taking 39 seconds from power-on to desktop. Windows 7, by comparison, took almost twice as long, leaving us waiting 69 seconds from power to desktop.
We also found that a default installation of Fedora 11 running the Gnome desktop uses significantly less memory than Windows 7, at only 233MB. Windows uses 458MB, which is nearly twice as much memory.
But benchmarks and system monitoring is only a small part of the story. Every fresh Windows install feels fast and responsive, and it's only after several months' constant use that any weaknesses will begin to show. In the several weeks we've been using Windows 7 alongside our Linux boxes, we found it to be much more stable than XP, and snappier than Vista. We did have one problem with a corrupted filesystem while crash testing the machine with a reset, but as this is pre-release software it wouldn't be fair to criticise Windows 7 until the final version is available.
There's little doubt that Windows 7 is a solid improvement over its predecessor, and we would guess that most Windows users who were previously reluctant to upgrade XP will be happy with Windows 7 running on a new machine. Windows' greatest asset is the variety of software available, and Microsoft is going to offer an XP compatibility mode as an add-on to Windows 7 Professional and Ultimate.
This solution bundles Microsoft's Virtual PC virtualisation software along with a copy and a licence to run XP. It's not native, so it's unlikely to run your favourite games, but it will enable you to run essential XP-only software in a window on your desktop. This stands in stark contrast to the cavalier attitude to backward compatibility that Microsoft took with Vista, and it's a step that's likely to make Windows 7 an essential upgrade for many XP users.
The same isn't quite so true of hardware, which still suffers from Vista's over-zealous attitude towards hardware signing and backwards compatibility. Even if your hardware is capable of running Windows 7 it's unlikely you'll be able to exploit its capabilities unless the officially signed drivers are available for your device. With no DirectX 10 drivers for your graphics card, for example, you won't be able to enable the Aero Glass effects on the desktop, which is one of Windows 7's best features.
Worst of all, you're locked into the resolution data provided by your screen. Our test system uses two 191D cheap screens from Hanns-G. They're perfectly capable devices that work well with Linux, but we wasted days trying every trick we could think of to get them working with Windows 7, and in the end we gave up. If you found Vista's hardware installation frustrating, you're likely to have the same problems with Windows 7.
- Better at synthetic benchmarks.
- Faster transfer of large files.
- Final version likely to improve.
- Suspend/resume works!
- Faster booting.
- Less memory usage.
- Smaller install size.
- Broader hardware compatibility.
Round 2: Desktop warfare
Despite the hyperbole surrounding performance tuning and increased efficiency, the battleground for success is going to be the desktop. This is where we spend the most time, and it's where small changes can make a massive difference in productivity.
Windows 7 promises big improvements, but at first glance you could be forgiven for thinking that very little has changed since the release of Windows XP, which never seems too far beneath the surface. The old device manager, for instance, is identical to the now discontinued version and there are many aspects of the desktop that feel the same. But to give the new desktop a fair crack of the whip, we'll take Microsoft's own list of what's good, and compare that with what Linux has to offer.
New features, according to Microsoft
Top of the list of usability improvements is the new task bar and full-screen previews. It's now easier to add your own applications to the task bar, using a process called 'pinning', and while this has always been possible through the use of the Quick Launch tool, Microsoft is making a big deal out its new easiness, as well as another major addition - larger icons. No, really. Another much-touted usability improvement is the window thumbnail that appears when you hover your mouse cursor over a minimised application.
Each one of these features has been part of the modern Linux desktop for some time. And while features such as the thumbnail preview of an application were initially a cutting-edge part of Compiz, we now take their inclusion on a modern desktop for granted. In KDE 4.2, for example, you get exactly the same task bar functionality, and if you use a cutting-edge distribution such as Fedora 11, you'll get all the latest enhancements.
With the panel in edit mode, right-click on any menu option and you can choose to either add an icon to the desktop or to the desktop panel, and once there you can drag it into a location that most suits you. Adding full-screen preview to your Linux box is also is easy. Either use Compiz on Gnome or enable the desktop effects in KDE to get exactly the same feature, and either panel is far more configurable than the Windows equivalent. The KDE one in particular can be resized, repositioned, re-aligned, set vertical or horizontal and augmented with any number of plasmoid additions.
Both KDE and Gnome users have been able to 'pin' applications and media to the task bar for years.
Let's see if Windows 7 can catch up in its next new feature - Jump Lists. These are a way to expose certain parts of an application to a menu revealed when you right-click on its launch icon. The most common example is right-clicking on an application to bring up a list of recent files, any of which can be loaded by simply selecting them. There's even an extension for Firefox.
This trick requires some communication between the applications themselves and the window manager, and the non-standard nature of the Linux desktop makes it a difficult feature to emulate. We can't honestly say Jump Lists are a paradigm shift in desktop use, but they're a nice addition, and it can't be long until either the Gnome or KDE developers come up with something similar.
Sticking with desktop usability, Microsoft is keen to show off the new window comparison feature, something it calls 'Snaps'. This is a semi-intelligent window snapping routine that can divide the screen into two and maximises two application windows into each half. Drag a window into one of these snap points, either the top border to maximise the window, or the left and right borders for a 50% view, and the window resizes.
While the average Linux desktop doesn't have this exact feature, both Gnome and KDE offer more comprehensive snapping options. From KDE's Window Behaviour panel, for instance, you can set separate snap borders for the edge of the screen, the edge of a window or even the centre of the display. And there are many more options for fine-tuning your window management and geometry, even down to selecting the types of window the options apply to.
Window snapping? We think KDE got there first.
Another feature that Linux desktops have been threatening for a couple of years, but have as-yet failed to deliver, is pervasive searching. Despite being a killer feature on the OS X desktop and the iPhone, and despite several highly efficient implementations, a simple search that can read documents, your email, and online communication with a degree of intelligence is still some way off.
Windows embeds its search icon search in the bottom-left corner, just above the launch menu icon. It feels very similar to KDE's launch menu, and will quickly find the content you're interested in. Microsoft's version expects the user to define libraries of content, and these are locations on your computer where you're happy to have the search engine provide pervasive results, or not.
Windows 7 also promises to move file search away from local storage and on to the internet. Searching for a photo, for instance, might take you from your local photo collection and on to those you're interested in online, such as an associated Flickr account or Picasa. The capabilities of this online search are dependent on an appropriate extension for the media and the online resource that you're interested in, but it clearly has a lot of potential.
The average Linux desktop needs to get its act together if it's going to to compete with Windows 7 for search functionality. And whether you use it or not, it's a great feature for newcomers. New releases of distributions like Fedora still package search tools like Beagle, but that's a long way from being a single solution for the Linux desktop, and this is what we're going to need. Developers are aware of these problems, but the KDE 4 team, for example, have put off discussions on integrating search until the 4.4 release, which is likely to come long after Windows 7.
How Linux will look when Windows 7 is released
At the time of writing, we've still got a short while to go until Windows 7 is released. This means there are several major Linux releases between now and then that could add some significant updates to the Linux desktop. Most recently released is KDE 4.3, and it seems the KDE team are finally getting on top of things. Rather than being a release purely full of bug- and usability fixes, 4.3 added some cool new features and some nice eye candy.
The whole KDE desktop and associated applications will now have general access to geolocation data, which could be useful for laptop users. The task bar panel should be able to distance itself even further from Windows 7 with the addition of spacers. These will let you group a collection of icons together, rather than as a single glut, and the system tray should also get better management functions. There are plenty more Plasmoid desktop widgets too.
More Plasmoids are being added to KDE with every release, bringing fast feature turnaround for all.
Most importantly, considering the emphasis in Windows 7 on merging local and remote data, the new KDE release resurrects the Nepomuk desktop idea - the so-called 'social desktop'. This means creating a connection between local and remote data, and making the desktop a seamless integration of the two. A lot of work has been done on the Akonadi PIM framework, for example - Nepomuk can analyse and annotate the body of an email automatically.
This means adding information like your location, people you're with and maybe events you're attending - the kind of information currently found on sites like Facebook and Twitter. There's also a new menu system, called Raptor, that attempts to guess what options you're most likely to want based on what you're currently doing. It's a cross between KLauncher and Gnome Do, and is a massive improvement on the current 'Lancelot' system.
- Desktop search is well implemented and can go online.
- Media libraries can be pinned to the start menu and task bar.
- Jump lists can genuinely help improve efficiency.
- Nepomuk blurs the border between local and online.
- Gnome Do replaces the task bar entirely.
- Google's Desktop widgets now on Gnome and KDE.
Round 3: Essential apps
The best example of a core application associated with an operating system is the web browser. But thanks to the legal wrangling that has surrounded Microsoft's browser bundling, Internet Explorer 8 isn't going to be as fatally intertwined in the operating system as its forebears were. The European release isn't even going to include a browser by default, which leaves users with the bizarre difficulty of not having a browser available to download an alternative.
This may also be why Microsoft chooses not to create more powerful applications for these core tasks, perhaps not wanting to risk the wrath of competing vendors or the European Monopolies Commission. And while these restrictions may seem harsh in today's online environment, it's a great opportunity for Linux to push integrated desktop applications as a serious bonus.
In Windows 7, these essential tools need to be downloaded separately under the Windows Live branding. Eight applications are selectable, and these include the latest generation of Microsoft's Messenger, Outlook Express, Word Pad, a content filter and Silverlight - Microsoft's competitor to Adobe's Flash. In Linux terms you might liken them to Pidgin or Kopete, Evolution, Kate and Gedit, DansGuardian and Moonlight. But the difference with the Microsoft offerings is that they feel very much cut-down, as the company would rather have you pay more for the fully functional versions.
Despite Windows ports of Pidgin, Windows Messenger is still the instant messaging client of choice for most people on the Windows desktop. This is probably because it offers Windows users a seamless way of communicating with other Windows users, and as long as your contacts are using the same client, video and voice chat is usually just a click or two away.
Over the years, there has been steady progress, but nothing revolutionary, and the same is true of the version currently shipping with the Windows 7 release candidate. It's the same version that was shipped as Windows Live Messenger 2009 at the beginning of the year, and the first thing the average Linux user will notice is the embedded advertising. You can't open the main window or a chat window without a small banner or text fighting for your attention.
If you're chatting to other Windows Live users you do get the advantage of seamless voice and video chat, but that's the only advantage that Microsoft's Messenger has over multi-protocol clients like Pidgin and Kopete. Kopete in particular is a brilliant application that can send messages to almost anyone and anything willing to accept them. AIM, Jabber, Google Talk, Windows Live and even Facebook are all catered for through a series of plugins.
The best thing about instant messaging with Kopete is that (unlike with Windows) there's no advertising.
Whether you choose Digikam or F-Spot, there's no doubt that Linux desktop users are well catered for when it comes to photo management. Both apps can both talk to the vast majority of digital cameras, enable you to organise your collection using tags, comments and geographical data, and then upload sections of your library to a variety of online photo repositories.
Microsoft's offering, by comparison, is far more modest, and a little creepy, as you have to sign into your Windows Live account when you first launch the application. This is because your library is closely tied to your online presence. They can be published on to Windows Live with a single click, and Flickr, Facebook and SmugMug are supported through third-party plugins. Google's Picasa photo hosting is a conspicuous absentee, but that's perhaps because it's associated photo management tool is a better application.
But Windows Live Photo Gallery is very fast, and it's an efficient way of getting photos from your camera on to an online repository with the least number of mouse clicks and CPU cycles. Like iPhoto, Digikam and F-Spot, it offers only bread and butter editing tools such as colour, contrast, crop and redeye reduction, but there are some weird usability errors. You can't drag tags on to photos, for instance, and photos that are part of your Pictures library aren't imported into the application unless they happen to be located under the My Pictures directory, which is confusing.
Another aspect of Microsoft's new operating system that isn't quite so obvious is the default installation of Silverlight. Silverlight is web browser plugin, and it's Microsoft's attempt to unseat the dominance of Adobe's Flash, and it performs much the same function. It helps web developers create accelerated and interactive online applications for their users that plain old HTML just isn't capable of, such as YouTube or BBC iPlayer, and represents the pinnacle of Microsoft's .NET framework, using it to both develop Silverlight and as a method for creators to add program logic within its online applications. Windows 7 is going to be the first Windows operating system to install it by default, with version 3 currently going through a period of beta testing before its planned release in July.
The interesting thing about Silverlight is that there's a Linux version being developed by the same team porting .NET to Linux, and it's called Moonlight. Moonlight offers only a subset of the functionality currently in Silverlight, but it represents an incredible effort by the programmers. Since January 2009, it's been fully compatible with Silverlight version 1.0, and a beta version released at the beginning of May implements some features from 2.0, as well as a few from the planned 3.0 release.
There's no doubt that Moonlight is a considerable way behind the Microsoft implementation, but there's a bigger problem. For some users, Moonlight represents a big chunk of Microsoft's intellectual property sitting at the heart of the Linux desktop. This is why the inclusion of Mono on distributions like Fedora and now Debian has proved such a contentious issue, and if Silverlight becomes as dominant on the Windows platform as Microsoft hopes, it's going to become increasingly difficult to ignore either its potential on the internet, or its potential as a patent time-bomb.
One of the most touted features in Microsoft's new operating system is its new-found ability to be controlled using a touchscreen interface. Microsoft has been experimenting with touch technology for years and its implementation has been overhauled for Windows 7, adding better hardware support and the ability to detect more than one finger press. Touch also seems to be the primary motivation behind the overhaul of the toolbar.
In its old incarnation, icons could be too small and their placement too unpredictable for fingers. In Windows 7, buttons have been resized, and custom spacing options should make it easier to hit the right target. This is also the first time multi-touch has been included, which must have been quite a task for an operating system than usually has difficulty if you connect more than one mouse, let alone 10 fingers. But Microsoft has also put hardware behind the rhetoric, demoing a hefty piece of multi-touch hardware called 'Surface'.
Until recently, multi-touch ability hasn't been a priority on the Linux desktop, despite various announcements on the subject in 2007. The ability to keep track of more than one controller on a standard desktop has been implemented by a project called Multi-Pointer X (MPX), and this is due to be rolled into the main X.org server code for the 7.5 release, due in August 2009.
But there is one important difference between MPX and Microsoft's Surface, and that's that multi-touch provides only a co-ordinate reference for each point. It can't interpret the shape and the size of the touch, which could be a problem if Microsoft pushes its advantage in this area. The most promising signs of progress comes from the netbook sector, where touch capabilities look like becoming the next big thing.
Windows 7 makes it easy to resize all the GUI elements to accomodate touch devices.
- Starter: No Aero and no 64-bit.
- Home Basic: Developed for emerging markets.
- Home Premium: Standard edition including Aero and touch.
- Professional: Adds remote desktop and encrypted filesystem.
- Enterprise: Unix application support and volume licensing.
- Ultimate: As with enterprise, but for individual users.
- Starter: No Linux is this restrictive.
- Home Basic: Crunchbang or Ubuntu.
- Home Premium: For eye candy, try Mint or Kubuntu.
- Professional: Fedora offers encryption as an installation option.
- Enterprise: OpenSUSE should work well with Windows.
- Ultimate: No matter which Linux you choose, there's no restrictions.
Round 4: Power users
One of the biggest criticisms levelled at Windows over the years has been its lack of proper user access control. Despite the last few versions featuring user accounts with different levels of authority and control, nearly everyone simply created an administrator's account and neatly side-stepped any attempt to rein in what the average user could and couldn't do. Windows 7 attempts to do things differently, upgrading Vista's User Access Control to finally achieve what Microsoft must hope is a major feature in an age where thousands of Windows machines run as zombies on the internet.
The idea behind UAC will be familiar to users of Ubuntu and OS X. When a user's application requires a higher set of privileges, a password requester asks for authentication. In Windows Vista, this password requester could be a little overzealous, appearing every other minute if you weren't careful, especially if you were configuring hardware. This annoyance was even seen as an advantage by some, as it forced software developers to avoid asking the user to elevate their privileges though UAC if they wanted to remain usable.
By default, a standard user will have no administrative control over their system, and neither will any viruses or trojans may have been inadvertently run by that user. Of course, this is nothing new for Linux users, as this feature is embedded within Linux thanks to its use of groups and permissions to restrict users and processes. It's our main defence against wayward applications wreaking havoc on our systems.
Even if a user's account is compromised and a virus is able to run on that user's desktop, a utility with limited privileges can do very little system-wide and network facing damage, although your personal data isn't likely to be so safe. This is part of the reason why there are so few Linux viruses, and why so few of us consider it any kind of threat.
User Access Control can limit what a user sees on the internet as well as the configuration options they have access to.
But the truth is that there's plenty of potential on the average desktop for any malevolent coder with enough motivation. How many of us install third-party binary packages on our desktops? And how many of us could check the source code if we had to? Even riskier is the number of times we resort to typing sudo or launching a shell with administrator privileges, effectively bypassing the security inherent in the normal/root user system.
Many distributions and developers think there needs to be an extra level of security, and the closest we can get to the technology behind Microsoft's UAC is PolicyKit, originally developed by Red Hat but now shipped as standard in Fedora, OpenSUSE and Ubuntu. PolicyKit gives application developers (and distribution builders) a finer degree of control over what an application can and can't do while it's running. It could enable a user to mount portable storage, for instance, but not allow the same user to mount a local filesystem, avoiding the potential hazard of sudo completely.
The impending KDE 4.3 includes PolicyKit integration, which means that many system administration applications for the KDE desktop will be able to take advantage of PolicyKit's finer-grained privilege control in much the same way that certain applications request authentication on the OS X desktop. Gnome has had this functionality since the beginning of last year, and its inclusion in KDE brings us a step closer to a unified desktop on the Linux platform and a unified system for accessing administrative tasks.
Despite all these improvements to User Access Control, Windows is still going to be the main target for hackers, and as such, a virus checker is always going to be necessary. For the first time, Microsoft is going to bundle a virus checker and spyware detector with the operating system. This is likely to raise considerable protest from manufacturers who sell competing products, such as Symantec and McAfee, as they're making a tidy living from plugging this lucrative hole in current Windows security.
But bundling a free virus checker with the operating system is a great step forward for the rest of us who have to endure a constant stream of attacks from compromised Windows systems. Microsoft's checker is going to be part of the 'Security Essentials' download package, and it replaces Windows Live OneCare, a similar package that Microsoft previously charged for on XP and Vista.
Microsoft's Security Essentials covers only the basics of online security: real-time virus checking, system monitoring and download scanning. This should leave plenty of room for the commercial solutions to fight over more advanced features and neurotic Windows users. As Linux users, we don't need to run a virus-checker unless you're receiving files from, and sending them to, Windows users. It avoids the extra CPU and memory load of constantly running a checker and keeping it up to date. But there are several checkers that are up to the task if you need them, including tools from BitDefender and AVG, as well as the excellent ClamAV.
The Windows System Monitor app has been redesigned to show more information and show it more clearly - it's actually very nice to use.
PowerShell vs Bash
- Integrated scripting.
- You can type ls to get a directory listing!
- Syntax highlighting.
- Remote execution.
- 30 years of refinement.
- Used by almost every Linux distribution ever.
- Plenty of online help and documentation.
- Can be used to administer the entire system.
As you should be able to tell from the scope of the features we've discussed, Windows 7 marks a significant point of maturity in the development of Windows, and is what the much-maligned Vista should have been three years ago. There's still a distinct lack of innovation, but the improvements to system stability and performance are what's going to matter to most users. And most users of Windows are businesses. They're not interested in eye candy, Twitter integration and hardware acceleration. They just need Windows to be a sober working environment that doesn't get in the way of helping people work.
And this is where Linux can make a big difference. There's nothing in Windows 7 that Linux can't do, and in most cases, do it better. Our machines are quicker and more efficient. Our desktops are more innovative and less static. Our apps are more powerful, cheaper and less partisan, and Linux security has never been better. But best of all, we have complete control over the future of Linux, and it's success or failure at the hands of Windows 7 is in our hands.
First published in Linux Format magazine