Category Archives: Operating Systems

Articles on Windows, Linux/Unix, etc.

What does Microsoft have to do to make Windows 7 what Vista wasn’t?

The Gadget Zone had an article on the 20 things Windows 7 MUST include and that got me to thinking…

Of course, the first thing that I thought about was that the Gadget Zone is apparently unaware of the bold or italic features of HTML and CSS when they used the classical ASCII model of uppercasing part of their headline. Hey guys, modern technology provides a better emphasis mechanism, you should use it.

Leaving the minor quibble aside, the list breaks down as follows (in the order they gave them):

20. Modularized OS. The funny thing is, Windows is supposed (note the emphasis style) to be a modular OS. It is a microkernel architecture and just about everything is in a library. Of course, the problem is that Microsoft has drifted to more monolithic options and Windows has become less modular as a result. This is in contrast to an OS like Linux that is not only modular in the kernel, it’s modular in just about everything you install.

19. XP Virtual Machine. Huh? The reason Apple did such a thing is that OS X was radically, to put it mildly, different from OS 9. There was no real option but to emulate there. However, Windows 7 won’t have that issue, but what Microsoft needs to do is fix its library mess. It’s about a fourth of the way there, but it needs to go the distance so that apps that run fine on XP also run fine on Windows 7.

18. New UAC. No, get rid of it. Apple and Ubuntu do it right: when you perform an administrative action, it asks for your password. This may seem more of a pain than UAC, but with Ubuntu, for example, I can become an administrator, perform all of the actions I need, and then stop being an administrator. It is massively less intrusive than UAC which, ultimately, I turned off on Vista because it drove me nuts. The Vista model just encourages users to click the OK button.

17. Gaming Mode. What? How about creating an OS that wasn’t so intrusive that it ate up your resources forcing you to boot into some console hybrid to play games? I don’t want to have to restart my machine to play Civilization IV, I want Windows to stop hogging everything. This suggestion really means buy a Wii, Xbox, or PS3.

16. Customised Install. This is just point 20 in a different approach. Without 20, you can’t have this and Windows is definitely got some interesting interdependencies. In any case, presumably, if you have a modular OS, you have an OS that can be customized.

15. Productive GUI. I laughed at this one… So much for the Windows “user friendly” myth! Actually, the problem with both Windows and OS X is that productive GUI means different things to different people, but they have to try and figure out the middle of the pack. Apple is okay at it, Microsoft has never figured it out. On the other hand, the open source community has figured it out. Yes, the array of options are dizzying, but one thing you can do is absolutely tailor your GUI to you. Windows and OS X cannot do this. I should know, I have all three.

14. All for One and One for All. I actually disagree with this. I like choice, hence the reason I like Linux. I can pick the environment that suits my needs with Linux and so the collection of Vista versions was actually a good thing in my book. Why should a user pay for features that they don’t need?

13. WinFS. This is a dumb idea. Let’s introduce the overhead of a database engine to a filesystem and make it distinctly slower. Actually, lets not and say we did. There’s no need for this.

12. Home User Licensing. Well, duh. Apple does this, I have the 5 machine license for OS X because it was cheaper than buying two copies of the OS. All in all, I prefer the Ubuntu model (amongst other Linux distributions): install on as many machines as you want as often as you want, for free. Of course, neither Apple or Microsoft is going to do this.

11. Driver Availability. Another duh. Of course it makes sense to ensure the widest range of hardware support before shipping. One way of doing that is by having a stable API.

10. Standards Compliant Browser. First, if you use IE for regular browsing, wise up. However, IE 8 is supposed to be aiming for standards compliancy and I’m happy to hear that. To be fair to Microsoft, there has been a movement around standards in a few of their products that is positive, notably in IE and in their C++ compiler.

9. Program Caching. I suppose, if you were dumb enough to have WinFS, this would be really necessary. Beyond that, I don’t really think it is. Hardware is filling the gap with faster drives, better bus speeds, and faster and more powerful CPUs. Basically, I’d rather not have the OS idling pumping stuff into memory that has to be dumped when it is needed by something else. Yes, on the surface, it seems like a good idea to put the unused RAM to use, but if an executing program needs that RAM, the freeing of it isn’t without cost. Net effect, I can wait the microsecond or two to have my app load.

8. Microsoft Toolbox. Having diagnostic utilities is a good thing, so I don’t dispute the basics of this. However, I think this already exists.

7. OS Restoration via imaging. I thought this was the purpose of system restore. However, there are a lot of options in this area already, so I don’t really see an all-pressing need for it to be inside of Windows. Generally, it is really better to image a system with the system offline anyways.

6. Barebones Kernel. Where have I seen this before? Oh yeah, item 20 above.

5. 64bit only. Yes. Finally, one that actually isn’t already addressed, half-baked, or irrelevant. It is high time that 32 bit Windows dies. Microsoft is doing that with Windows Server 2008 r2 and needs to do this out of the box with Windows 7. Lets be honest, if Vista is any indication, the hardware needed to run Windows 7 will have to be 64 bit capable, so there is no reason to futz around with 32 bit anymore. Besides, the 64 bit OS can run 32 bit apps. Yeah, it won’t be running 16 bit apps but if you are still doing that, you’re an idiot.

4. Better out-of-box burning capabilities. I’m sure Nero would prefer otherwise, but this should be a given. The simple fact is that DVD burning is pretty much expected on a modern PC and Windows is pretty shitty at it without 3rd party tools. While they’re at it, Windows should be able to mount disc images without the need to burn them first.

3. Diagnostic Tools. Hardware diagnostic tools already exist. There are, for example, very specific Linux distributions designed to boot off of portable devices (such as a USB key) for this purpose. I suspect that such tools in Windows would be next to useless if you had to run Windows to get to them. This is the kind of thing that really needs to be extremely lean and Windows isn’t remotely close to that.

2. Faster Boot and Shutdown. I suppose that has value if you do these often. I don’t shutdown my computers unless there is a very specific need. As for booting, that’s a pain in Windows because a large number of updates need you to restart. Also, if the author of this article gets his way with a gaming mode, I suspect this would be more relevant…

1. Simplify and manage startup items. To do that you would have to be less modular…

Well, that’s the story at the Gadget Zone. Now, in my opinion, here’s what I think it needs to do (this time in a numerical order that human beings use):

1. Get rid of UAC. I’ve discussed this above.

2. Fix the insanity of Aero. Hey, I don’t mind eye candy, but I’m getting significantly more and better eye candy from Compiz Fusion under X Windows for a fraction of the resources. Aero is a piggish mess.

3. 64 bit. I did mention it above, 32 bit has to die. I’ve already spec’d my next PC and it has 8 GB of RAM and that means a 64 bit OS. It also has the advantage of letting the hardware guys focus on 64 bit drivers rather than both.

4. Cut back the aggressive caching. Caching is good, when it is implemented well and the hits to it are frequent or regular. Caching everything, though, has a price.

5. Fix or scrap activation. I despise product activation and it was one of the things that, literally, drove me back to Linux. If you insist on this model, then at least provide a means of buying one physical copy and many (much cheaper) virtual copies. However, I hate the whole concept. I have 13 computers, which is a lot I’ll admit, but when I use one of them, I want the software I paid for available when it is appropriate. The whole licensing scheme ties me to a machine and, worse yet, makes it difficult to upgrade them. I turn my desktop over about every 18 months and I do not want to have to pay again for software that I have already bought. At the very least, let me deactivate on the old machine (like Adobe does) so I can activate on the new one.

6. Be faster and leaner. It’s not going to happen, Windows has gotten so huge that they have development teams dedicated to a dialog box, but this bloat is going to kill it. For example, a recent Windows update that added 5 words to the English and German dictionaries was 56.3 MB. To give you a frame of reference, War and Peace (one of the largest novels ever written) checks in at a massive 3.2 MB or 5.6% of the file size of a mere 5 word update to Windows.

I really could go on, there is so much that could make Windows better, but none is likely to happen. What is happening to Windows is what has happened to Netscape: bloated and slow. It is destined to collapse under its own weight unless Microsoft takes the steps that Apple did.

Ubuntu Linux – 1 Week (or so) Later

Well, things are actually pretty darn good. Not that has all been a bed of roses, see my last posting, but after that it has gone exceedingly well. Here are some of the more interesting experiences:

1. Open Office.

Well, I knew this was actually a pretty good piece of software, but I didn’t really know how good it was. I’ve been sick this week and so I’ve been, sort of, working from home. This mostly meant writing a design for a piece of software for work and, because I had to know, I decided to do the design using Open Office rather than Microsoft Word. Well, it worked beautifully. So well, in fact, that I’m very likely going to install it on my machine at work because I hate the interface for Office 2007. It’s an absolutely nightmare to find anything. The other big, and pleasant, surprise is that Open Office handles the Word 2007 “docx” format quite well. I don’t think it’s 100%, but I didn’t see any oddness for the two documents I had to open with it. All in all, I’m impressed. Mind you, I haven’t tried the spreadsheet side of things and, to be honest, Excel is the real crown jewel of MS Office, but I expect it is good too. I’m less concerned about the other parts since I very rarely use those in MS Office either.

2. WINE.

If you’re not familiar, WINE (WINE Is Not an Emulator, yeah, it’s an open source thing) is a implemantation of the Windows application programming interface on an x86 UNIX (or UNIX-like) operating system. Basically, the idea is that it allows you to run Windows programs on, for example, Linux when a suitable alternative doesn’t exist. For the most part, there is almost always a suitable alternative, but not for everything. For example, while the GIMP is great for graphics destined for the Web, it’s not so much for those destined for print; Adobe Photoshop does rule the roost there. Of course, the GIMP is a awesome piece of software, but so is Photoshop. The other area is games. Yes, there are some truly fun and well-written Linux games, but the absolute vast majority of PC games are written for Windows, it’s a simple fact. So this is the gap that WINE is intended to fill.

Bearing in mind that WINE is a clean-room implementation of the Windows API, it’s still lagging what Windows actually does. Having said that, it runs a remarkable set of Windows applications very well. For me, the big one is Civilization IV because it’s the only game I really play and I want to play it on my current desktop. So, rather than using the Ubuntu WINE installation, which didn’t work, I trekked over to the WINE site and configured my software repository to include them and got the latest (RC-3 at that point, RC-4 just came out today). It installed very nicely and so off I went to install Civ IV and the various expansion packs. Sadly, they didn’t all work, but Civ IV Warlords, fully patched, does and that’s good for now. I’m waiting for the Ubuntu packages of RC-4 to come live and then I’ll see if any of the fixes for it sort out my Beyond the Sword behaviour. Warlords is fun though, so I’m not really complaining.

A couple of interesting things out of all this is that I also tried Cedega (a commercial version of WINE aimed at games). It’s a bust. A total waste of cash and I’m dumping the subscription. The real WINE is way ahead of it and doesn’t cost. Lesson learned. I should have just ignored it, but the lure of Civ IV BTS was there. The other thing I found odd is that my Linux box ran Warlord better than my Windows box. Yes, my Linux box has a lot more horsepower: AMD Athlon X2 5000 with 4 GB RAM and an nVidia 7950 (512 mb) versus 3.0 GHz P4 (hyperthreaded) with 2 GB RAM and an older nVidia card (256 mb). Having said that, I was running it in a window on Linux with high resolution and high effects while pushing dual wide screen and Compiz. On the other machine, I ran it single screen with less resolution and medium effects. Also, for whatever reason, it uses a lot less RAM under Linux. I never climbed about 35% usage and under Windows Vista x64 on this machine I’d regularly hit 85% plus when running the game. Got me.

3. Fonts.

Admittedly, doing a search on Google for Linux and fonts returns what can only be described as a bit of horror story. It’s reasonably true, the default fonts available for Linux do blow goats, but this is easily rectified with little effort, especially if you’re the owner of several powerful desktop publishing and graphic arts programs and have thousands of fonts available to you. Needless to say, I sorted out the basic font issue fairly quickly for my machine. However, having done that, Firefox and Thunderbird still looked like shit warmed up on a BBQ.

Don’t get me wrong, Firefox is a great piece of software and I use it as my default on all of my machines regardless of the operating system, but all it took was one look to ask the question: Are these guys fucking blind?!? If you want a painful experience of reading text on a screen, then simply run Firefox on a newly installed Linux system. It literally hurts the eyes, it’s that brutal looking. So, faced with no other option beyond ripping out my eyeballs, I started to tweak the heck out of Firefox and Thunderbird and eventually got something half-decent. It still looks off compared to Firefox on the Mac or Windows (and I have both to compare), but it’s infinitely better than where it started. Not that I get a huge amount of traffic, but it would be nice if somebody in Mozilla world paid a bit of attention to this note.

Speaking of Firefox on Linux: turn off the “smooth scrolling” feature and it performs a lot better. I had that on and it would freeze for a second or two very frequently. Turning it off made the scrolling, well, smoother. Which is kind of funny when you think about. Also, enable the proposed packages for Ubuntu and get rid of the beta version for the release candidate version of Firefox.

The Journey Back to the Linux Desktop

Don’t get me wrong, I don’t actually have all of the complaints that others seem to have of it. It actually performed reasonably well and generally things worked. What didn’t work, however, was irritating. In addition, I was missing Linux on my desktop, a state of affairs that I had given up a few years ago for work reasons. Well, I have plenty of hardware for that purpose (including a Windows 2003 machine and a Vista x64 laptop), so there was no compelling reason to stick around Windows land on my main desktop. So, off it went.

Now, it has been about 5 years or so since I had a Linux desktop. Oh, I have 7 (yes, seven, what can I say?) Linux servers of various sorts running on everything from SunFires to Compaq Proliant Servers to Plain old PCs, so it’s not as though I was totally out of touch. However, they are servers, and so they have purposed software on them and that does not include X. So, anyways, I did a little digging around to see how the wind was blowing in Linux-land when it came to the desktop. When I was an active Linux user, I used Mandrake (now called Mandriva) and was involved in some package maintenance with it. So, I took a look. Well, I hate to say it, it looks like it’s falling behind. Kind of sad really, it was fun to run the bleeding edge with it. I thought about RedHat, SuSe, and other old-timers, and they too seemed to have become more, well, corporate. Where’s the jazz? There’s always Debian, of course, especially since it was my preferred option on servers, but that’s just it: servers. Debian really just doesn’t care all that much about the desktop, in my opinion, and that’s a perfectly reasonable thing. So then that really left, in terms of the mainstream, Gentoo and Ubuntu. Having tried Gentoo on a server, going through the massively painful install and compile of everything and having it fail on one of my Sun boxes, I wasn’t about face that concept on my desktop. Well, that left Ubuntu. Oddly enough, given the popularity of Ubuntu in the Linux world, I suspect that I’m not the only one that walked through these options.

So, having been in 64 bit land for some time now, I wasn’t interested in giving it up. Fortunately, Ubuntu has a 64 bit version and so off we went. Here now is the outcome:

The basic installation was, well, trivially easy. I’ve installed more operating systems than I can count and Ubuntu beats them all. This includes all versions of Mac OS X and Windows. However post-installation wasn’t quite as trivial… First, Ubuntu doesn’t enable closed-source drivers by default and so that means nVidia (and ATI) cards are generally crippled on install. When I enabled the “restricted” drivers for my nVidia card, my display got even worse and I definitely didn’t get acceleration. I didn’t think it was possible to become even more sluggish, but doing this managed to accomplish it. So, not being a Linux newbie, I went to the nVidia site, got the latest drivers, disabled the Ubuntu ones, built and installed the new ones, without, I might add, the constant reboot that every guide to this process on Ubuntu forums tell you to do. Hey guys, ever hear of rmmod and modprobe? Sheesh, that’s the point of kernel modules! Anyways, after hacking the xorg.conf file and figuring out there was a bug in the power detection for the card, I got exactly what I wanted but this was a major pain. In fact, enough of one, that I’m going to go on a tangent for a second:

Enough you guys! There is way too much evangelical-like behaviour in the open source world and that is holding it back. The absolute vast majority of computers sold to the average person have one thing in common: they either have nVidia or they have ATI driving their video. They are not going to be impressed with the wonders of Linux when the first thing that greets them is an undersized and sluggish display that harkens back to the days of 2 mb video cards. Sorry, it just won’t. Add to that, Joe Blow consumer isn’t going to spend the time to do what I did. Why should they? The damn card just works under Windows. I don’t want to hear the explanation, the simple fact is that the same could be true on Linux if they wanted it to. This simple failure will keep Microsoft on top, plain and simple.

End of tangent, though it kind of applies to my Wacom Bamboo tablet. Mind you, I kind of forgive on this one because this tablet is pretty new, but the project site for Linux support already handles it. Net effect, the Ubuntu updates don’t have this. So… as someone who owns a couple of Macs, I see failure here as a problem for enticing the Mac world when they already have a Unix platform. Don’t kid yourself, Apple would love to be the new Microsoft and, in my opinion, they’re even worse for locking you down and in. Let’s not replace one “evil” empire with another. Anyways, I got my Wacom tablet working the same way I got video working, though I had to force the overwrite of the Ubuntu kernel module to do it. What did please me was that Gimp did a good job with it, so bonus marks there.

Now, despite the above two pains in the rear, the rest of the process has been really pleasant and kind of fun. I’ll still install a bunch of other things as I go, notably some development stuff and, probably Cedega (I’m addicted to Civ IV), but the main effort is complete. This is especially true now that I’ve skinned and themed up the UI a little. Ubuntu, in all honesty, is pretty boring to look at. You can see some screen shots on their site of the default, but I’ve attached mine. The actual shot has been split in 2 and shrunk since I have dual display. The Monitor 1 screen shot attached is the left side and Monitor 2 is the right side. It’s a bit Vista-like in looks, since I actually kind of like that style, but it’s generally a pretty slick looking interface in my opinion and takes a hell of a lot less resources than Vista did (pay attention Microsoft).

So, so far, no regrets. I’m actually pretty impressed with the overall setup and I’m liking the look and feel.

Windows Vista SP 1 and Memory

If you run the 32-bit version of Windows Vista (I don’t) and you have 4gb of RAM (I do), then you probably noticed something a little funny about the amount of RAM you actually have. Well, Microsoft has a “solution” for you.

Go to Google and search on Vista, 4gb of RAM, where’s my memory? A lot of people have and they’ve discovered that they are not alone in having the OS show barely over 3gb. In fact, Microsoft has a knowledge base article on this topic because the question has come up so often. However, the short version of why is really simple: a 32-bit operating system can only address 4gb of memory and a number of hardware devices are mapped to memory locations and so occupy a spot in memory that would normally be available as regular RAM. The 64-bit version doesn’t have this 4gb limit, so devices are actually mapped much higher and you get all of your RAM.

Needless to say, for the non-technical user, this is a bit odd. I mean, after all, you went out and purchased that RAM because it was so cheap and Windows, especially Vista, runs much better with lots of RAM. So, what do you do? Well, you could upgrade to the 64-bit version of Vista (it comes with your copy of Ultimate if you have that) and that’s not a bad answer in that respect. I have it on one of my machines and it has run all the software I use without any problems. Of course, if that’s not an option, you can install Vista SP 1.

Now, installing SP 1 is really just a joke in this regards. Why? Microsoft, tired of the questions around this, altered Vista so that it would show the full amount of your physical RAM instead of what is actually available to it. Bear in mind that this changes nothing about the reality of the amount of RAM you actually get to use, it simply hides it from you! Great solution, huh?

Come on Microsoft, this isn’t the answer. Don’t have the OS lie to people, tell them what is going on, even explain it in the dialog(s) and have done with it. 32-bit computing is old technology, get them moving to 64-bit so we can progress beyond the old stuff. There’s just no compelling reason for needing to continue to support the legacy of 8-bit (DOS) and 16-bit (Windows 3.x) software and so there’s no compelling reason to have people run x86 Vista. It’s got to be the marketing people there, nobody in the technology space would want to try and continue support back to the days of the 8086. Enough already.