Windows Rot


Recommended Posts

mrp04

Why does windows slow down over time? The answer I always see is that the registry gets bloated, and from experience that seems true.

BUT, I still don't know why it doesn't IMPROVE when you uninstall a lot of programs, it just stays the same. This is removing data from the registry is it not?

I just checked, and my Vista registry is 84MB, I don't know what the normal size is for a Windows Vista registry. What is everyone else's size?

the file is windows\system32\config\software (the file is "software" it has no extension)

Why doesn't Microsoft move away from the registry? It causes so much performance issues, and all the other modern OSs just store settings in config files. Why doesn't Windows do the same?

Also, I am sick of horrible drivers, a week or so ago I posted a thread asking how to fix my choppy sound (it cuts out when I scroll or minimize/restore windows), but no one knew how and I am pretty sure it is either my graphics or sound drivers.

Link to post
Share on other sites
somethingthatrhymes

My work PC's (year old XP install) is 35.7 MiB, and it runs fine (1.8GHz C2D, 2GB, GeForce 7300 GS). I haven't noticed any Windows Rot on my C2D machines, but it might just be that it was only noticeable on my P4 and earlier, since Linux on the P4 didn't suffer from it.

You can't blame MS for drivers unless they wrote them.

Link to post
Share on other sites
Brandon Live
Why does windows slow down over time? The answer I always see is that the registry gets bloated, and from experience that seems true.

BUT, I still don't know why it doesn't IMPROVE when you uninstall a lot of programs, it just stays the same. This is removing data from the registry is it not?

I just checked, and my Vista registry is 84MB, I don't know what the normal size is for a Windows Vista registry. What is everyone else's size?

the file is windows\system32\config\software (the file is "software" it has no extension)

That's just one section of the registry. Although I suppose it's probably the largest. It doesn't even include the per-user section, though. That said, the registry is basically a database, it's not like all of that 84MB is always loaded into memory, or really ever even used, depending on how you use your machine.

Why doesn't Microsoft move away from the registry? It causes so much performance issues, and all the other modern OSs just store settings in config files. Why doesn't Windows do the same?

Why would we move away from the registry? You don't even know how it works, or have any ideas for a better solution - but you think it should be replaced? That makes very little sense to me.

Other OSes have equivalents for things like file associations, even if they store them in files. And they tend to suffer significant limitations because of that, including a lack of coordination and consistency across the OS and apps. Also, most OSes don't support COM. Apparently the Mac OS actually does, but without a registry - so you have to know exactly where the binary containing the COM object lives, no indirection, no CoCreateInstance, no registration of proxy stubs, etc. Registry-free COM works on Windows too, and you can just define everything you need in your application manifest. But that gets very little practical use, since most COM servers you use probably don't ship with your app.

Most importantly - the registry provides a layer of abstraction, so that individual applications don't need to handle things like caching, transactions, permissions, etc. I think losing that would be very unfortunate - even if you didn't consider the fact that it would break every application/component/driver on the planet, and basically everything in the OS. So yeah, even without all that, it'd suck if everybody had to re-implement the same thing when we already have a perfectly good abstraction.

If it's how the registry is stored on the disk (opaque binary blob), then certainly re-implementing the registry using something like XML as its persistence format would be possible. But dear god would it be slow. It'd be hard to beat the binary serialization format used today for performance, which is exactly what it seemed like you were concerned about.

So again - what about the registry would you change? The persistence format? The APIs? The design / layout? Usage? The regedit tool for visualizing the registry's contents?

Link to post
Share on other sites
chfields

Even though removing/deleting programs does remove some registry components, alot are left behind. Get a good registry cleaner and you will increase its performance.

Link to post
Share on other sites
Unto Darkness
Even though removing/deleting programs does remove some registry components, alot are left behind. Get a good registry cleaner and you will increase its performance.

Common misconception, cleaning your registry with registry cleaners will not give you a significant performance boost. Some cleaners can even destabilise your system. Leave it as it is, unless you know what you are doing.

Link to post
Share on other sites
ozgeek
Common misconception, cleaning your registry with registry cleaners will not give you a significant performance boost. Some cleaners can even destabilise your system. Leave it as it is, unless you know what you are doing.

Very true and the system defrags the registry at times. The only boost in speed is Disk Defraging and that is what Vista does at times also.

Link to post
Share on other sites
Steven P.

On a personal note, since I had Vista (x86) installed last year in January, I have only done a reinstall once since then and that is only because I moved to x64 (on the same machine) due to better driver availability for my machine. I never noticed any performance problems aside from the issues we all had before SP1 (slow file transfers etc).

XP after SP2 was the same, I remember being on Win98SE and having to do a reinstall every 6 to 8 months simply because everything got too slow :p

I can't really say that Windows needs a reinstall every 6 to 8 months like it used to anymore, but then I also don't install every crap piece of software or alpha/beta drivers any more either!

Link to post
Share on other sites
+allan
I can't really say that Windows needs a reinstall every 6 to 8 months like it used to anymore, but then I also don't install every crap piece of software or alpha/beta drivers any more either!

I have a lot of systems (most XP, a few Vista) and have NEVER done any reinstalls on any of them. Of course, I think the above quote may account for most of Neobond's past issues :).

Link to post
Share on other sites
rtk

I'd say your definitely in the extreme minority. a 7 year old XP install can't be fun to work with.

I'd wager that most people on these forums have done yearly reinstalls at a minimum, prior to Vista.

Link to post
Share on other sites
+allan
I'd say your definitely in the extreme minority. a 7 year old XP install can't be fun to work with.

I'd wager that most people on these forums have done yearly reinstalls at a minimum, prior to Vista.

I'm a firm believer that if someone maintains his or her system correctly and practices safe and smart computing, the system should never require a reformat and OS should never need to be reinstalled (absent HD failure, of course). The possibility that "most people on these forums have done yearly reinstalls at a minimum" speaks volumes (at least to me) about their inability to maintain the system properly. There are certainly exceptions - such as Neobond and others who are frequent alpha & beta testers - but for the typical home or business user a properly maintained 7 year old system should run almost as efficiently as the day it was unpacked.

Link to post
Share on other sites
Menge

most of my Windows XP installs lasted over 1.5yrs without degrading performance that much. but then again, i don't go around installing every single random piece of program i see ;)

only exception was when i got Blaster-ed back when i had dial-up or when i had significant hardware failures

Link to post
Share on other sites
RangerLG

Who here remembers the old Win3.1 style of having .ini files for everything installed?

Link to post
Share on other sites
Steven P.
Who here remembers the old Win3.1 style of having .ini files for everything installed?

That's like saying, remember how cars only had 3 gears and not 5? (or 6 in some new cars). :p

Link to post
Share on other sites
+allan
Who here remembers the old Win3.1 style of having .ini files for everything installed?

My friend, my first computer (other than an Atari 800) was an AT&T 6300 in 1985 running DOS 3.3. It came with a whopping 640 Kilobytes of RAM and a 10 Mebabyte HD!!!

Link to post
Share on other sites
grid001

im running a 3.5 year old XP Pro install - still runs fine like it was installed yesterday.

as +allan quoted up there,

I'm a firm believer that if someone maintains his or her system correctly and practices safe and smart computing, the system should never require a reformat and OS should never need to be reinstalled

...stands true.

Link to post
Share on other sites
C_Guy
I'd say your definitely in the extreme minority. a 7 year old XP install can't be fun to work with.

Sure it is. If you have a basic understanding of Windows there's no reason to have to re-install on an interval. I've never re-installed Windows XP and have zero complaints. (Also, zero malware) My installation was in 2003.

If you are careful what software and drivers you install on your system, have a good firewall, a good backup, and maintain your system it will continue to work properly.

As with any OS, if you neglect it the performance will decrease over time.

"Windows rot" is really just the inability to do basic computer maintenance.

Link to post
Share on other sites
MrFuji

SOFTWARE is 18,7 MB here. Followed by SYSTEM, 15,5 MB and COMPONENTS, 10,7 MB.

The install (Vista btw) is about 6 months old now, but I have to admit that I got very careful when installing software recently. I even search for deinstalled programs in the registry to make sure everything's deleted.

Link to post
Share on other sites
Phrive

Ive been using Vista for around a year, Re-installed once too put x64 on. I don't like to re-install ever, if you schedule tasks, do frequent defrags i dont think you'll ever have too. I'm not sure about any of you guys, but ive been using OneCare for about 6 months now, and the tune-up feature in that seems to keep my system running on top form. Making sure there aren't UN-necessary start up items i would say is a must, im also using Diskeeper which will keep my Hard drive (as much as possible) free of defragmentation.

But i would say the most important thing, never turn your machine. Add sceduled tasks for all the things you dont want running when you are using your machine, disk cleanup full defrag etc...

Link to post
Share on other sites
xcguy87

I have to completely agree that I dislike the way the Windows registry works. Software that is installed on Windows systems almost always leaves unneeded registry keys in the registry. This and other activities lead to a gradual increase in the size of the registry overtime. An increase in the size of the registry means it gets fragmented throughout the hard disk (another flaw in the OS if you ask me and part of the performance issues). This all leads to slower startup times and more memory consumption. It also leads to sloppier programming. Vista may not show the same slowdown issues as older windows versions, but believe me the registry in Vista is a mess! Alot of this comes about because of the registry virtualization that Vista implements. If a program doesn't have acess to HKLM because it's not running as an admin account, it then attempts to write the key under HKCU under a virutalization directory. What does this mean? Finding a specific option becomes a huge hassle because keys aren't where their supposed to be. It also means redudant copies of information are stored.

I am a much bigger fan of the way other operating systems handle the issue. Programs should only check the configuration file on startup and write to it on exit. If necessary, a file system watcher can be placed to check for updates to the configuration file, but generally speaking the application should be restarted to read changes to the configuration. All in-program configuration is stored in memory until the program exits. This eliminates the overhead needed for a registry file to be resident in memory. Also, all communication between programs should be done with internal sockets or by other means, NOT through the registry. I see this time and time again from applications that constantly write values to the registry to communicate with other applications. Don't believe me? Check out the registry viewer from sysinternals (which is now owned by MS). Just look at the overhead from a ton of redundant registry checks and writes.

As far as COM components go, it would be much easier to have all of the COM components in the same directory on every machine. Most other OSs do it with shared libraries, and it works great. This eliminates the need to look up the location of the COM component because you always know where it should be!

I'm not a Windows hater, I'm using it right now. I just think their could be some improvements in the design of the OS.

Edited by xcguy87
Link to post
Share on other sites
MrFuji

^Don't want to contradict you - but shouldn't the uninstallers of programs take care of the crap in the registry? Half of them even leave their respective HKCU\Software\ entry untouched. I'm not a windows fanboy either but it's not all just the overall design of the OS...

However, I admit that the Vista registry virtualization feature (bug? ;) ) isn't implemented very well and leads to bigger registry sizes.

Link to post
Share on other sites
+allan
As with any OS, if you neglect it the performance will decrease over time.

"Windows rot" is really just the inability to do basic computer maintenance.

Couldn't agree more. Inability or lack of willingness - either way, computers don't maintain themselves ;)

Link to post
Share on other sites
ViperAFK

It's really the fault of the software makers when it becomes bloated because they have crappy installers/uninstallers.

Link to post
Share on other sites
grid001
It's really the fault of the software makers when it becomes bloated because they have crappy installers/uninstallers.

i'd agree with that comment as well - sub-par installers\uninstallers add to the problem of bloating

Link to post
Share on other sites
backdrifter

I must say the concept of registry is a lot better than individual config files everywhere, but the problem is here is that the os leaves the installation/unistallation to the individual programs.

If the system doesn't have a registry, then all programs should be portable, without installations. You just delete the folder when you're done with it, and it's gone completely with its config file.

But if you have a registry, meaning there is a seperate OS controlled database that all programs must participate, than there also has to be a central installation system. Something that takes the package of software, distrubutes it to your system, and when you're done with it, it should reverse everything it had done.

So basically, if you're going to have a managed system, push it to the end, and don't leave to a random guy's installer software.

Link to post
Share on other sites
5Horizons

I remember reformatting Windows 98 because it got slow, but ever since Windows 2000 I haven't had those sorts of problems. I would guess that *most* cases of computers slowing down over time have to do with lots of malware or apps that run in the background being installed, not the registry.

People complain a lot about the registry being bad, but I think those are probably the same people who need to have 98% of their RAM and hard disk free at all times :p

I must say the concept of registry is a lot better than individual config files everywhere, but the problem is here is that the os leaves the installation/unistallation to the individual programs.

How is the OS supposed to know that it's time to remove the data? Maybe you just want to re-install an application and keep all your settings. Or say you accidentally delete a program and the OS automatically removes your settings... I wouldn't want that. Leaving around a few registry values is not going to hurt anything IMO. It's kind of like the people who insist on using AppZapper on Mac OS to remove pref files, is it really that big of a deal?

Although, Microsoft has been pushing the use of .config files in the latest versions of Visual Studio for .NET apps, so maybe they'd like to get general applications to stop using the registry if it's not necessary. Maybe Brandon can comment on this.

Edited by 5Horizons
Link to post
Share on other sites
This topic is now closed to further replies.
  • Recently Browsing   0 members

    No registered users viewing this page.