Slashdot Mirror


New Way To Grade Decay of Computer Installations

skojt writes: "I saw this link in Dr Dobb's Journal (the paper edition) about the behaviour of a slowly decaying computer installation. It refers to a Windows installation, but as the author writes, 'But there will shortly be ports to Linux, Mac OS X, and other Unices; we are confident these OSes are just as prone.'"

21 of 534 comments (clear)

  1. Decayed Windows Installation? by sllort · · Score: 5, Funny

    Just graph the Kb size of the registry...

  2. From the article, a question answered... by Idarubicin · · Score: 5, Funny
    "A service has failed to start - BLT300." What is BLT300? Nobody knows.

    Obviously, BLT300 is part of a new strategic alliance between Microsoft and Subway. In addition to having that wretched "Connect to the Internet" shortcut, Microsoft is now trying to influence the user's choice of submarine sandwich.

    Fight back. Install new open source RedHot Club Sandwich Service instead.

    --
    ~Idarubicin
  3. Windows decay by laserjet · · Score: 5, Insightful

    Based purely on my own experience, Windows does decay quite a bit faster than Linux - but I don't think it's mainly the OS's fault:

    It's mainly the users and the applications. There are so MANY applications for Windows out there that want to put an icon on your descktop, in your system tray, in your start menu, etc. It is no wonder when the decay takes place. All these applications do their own thing to Windows.

    Then, on top of that, you have many, many, many bad installers. They remove some files, sure, but rarely do they get rid of everything, including registry entries.

    Linux has a bit different type of users, and most of the software made for linux is by people who hate "Take-over-your-system-ware" sofware. It also doesn't have the central registry system like Windows. Sure it will have it's problems, but right now it does not. More users and more bad or poorly written apps will cause bloat and decay.

    So, as usual, we must blaim the users and the applications for software decay for the most part. The OS should do some cleanup as well, but gone are the days when uninstalling mean deleting the directory it was installed to.

    --
    Moon Macrosystems. Sun's biggest competitor.
    1. Re:Windows decay by jonathan_atkinson · · Score: 4, Interesting

      Sure it will have it's problems, but right now it does not. More users and more bad or poorly written apps will cause bloat and decay.

      I agree; which is part of the reason I quit using Mandrake and rolled my own LFS system. Anything I'm not sure about I make install to /opt/whatever, then add the /opt/whatever/lib path to ld.so.conf. This way I can check out new apps, and if they don't make the grade, I just rm -rf the whole directory. My whole system has stayed pretty clean this way.

      --Jon

      --
      Cleanstick.org: Dumb weblog about nothing
  4. What is it with media players? by SIGFPE · · Score: 4

    Quicktime, Windows Media, RealWhatever. They always appear in the task bar and the little icon tray thing at the bottom right. No matter how many times I try to remove the startup items it's guaranteed they will have returned on reboot. Aarrgghh! They even have Control Panel entries. This is software at its most rude and obnoxious. Why does RealWhateverItsCalledThisTime need a goddamned 'Start Center'? What's so special about low quality streamed audio and video that ot needs this special treatment? If every application did this I'd need a 3rd monitor for all the itty bitty icons. No wonder I need 2Gb of RAM!

    --
    -- SIGFPE
  5. More levels. . . by Aerog · · Score: 4, Funny

    Cruft Force 8.5 Larry Flynt. OS has now filled its system drive partition, thereby reaching more than 3 times its original install. Web browsers will not download files more than 640k, swap file now resides permanently on F: yet C: still has less than 1MB space, all non-essential portions have been removed to a "Temp C: Files" directory on F:, essential system files are beginning to be moved to the temp files, windows/inf is the first target to be moved when an install is needed. Writes random data to HD for fun, windows/sysbackup deleted at regular intervals in order to keep registry errors at bay, more porn than most porn sites.

    Now I have a 10gb system drive and win2k. Only disk errors can slow me down now!

    --

    - Relativistic? That's barely Newtonian!
  6. Next month, in Doctor Dobbs' Journal: by Hobart · · Score: 4, Funny
    Building websites for magazines that can survive the "Slashdot Effect"
    --
    o/~ Join us now and share the software ...
  7. Plug, plug by Phexro · · Score: 5, Informative

    Use Debian. I'm not saying that it's immune to cruft, but the fact that they have close to 9000 packages which all comply with the Debian Policy (as well as the FHS) means that everything plays nice together, and if it doesn't, it's a bug. There's even a tool called Cruft, which will locate cruft on your system.

  8. Keeping MacOS and Linux, esp. debian, clean by stere0 · · Score: 4, Informative

    I used to keep my macs working for 3-4 months before having to reinstall the whole shebang. I only reinstalled Mac OS X once since october. Macs are quite easy to keep clean, after some time you know where "cruft" accumulates. If anyone's interested, Alladin sells a product called Spring Cleaning, which I don't use. I clean my mac by hand. Seriously, on Mac OS X the only messy places are ~/Library and /Library. If you put your personal mess in your home folder, that is.

    My Gnu/Linux distro of choice is Debian. If you use debian, you know how quickly apt installs those libraries. Have a look at deborphan, which "finds 'orphaned' packages on your system. It determines which packages have no other packages depending on their installation, and shows you a list of these packages. It is most useful when finding libraries, but it can be used on packages in all sections". I run apt-get remove `deborphan` about once a month.

    Another great tool for the Gnu/Linux user is cruft, which, as the name says, tries to find the cruft on your system. It generates many false positives (e.g. /vmlinux), so use with many grep and caution :-).

    Which tools do you guys use to keep your system clean?

    --
    Trollem mirabilem hanc subnotationis exigiutas non caperet
  9. never decay - VMWare non-persistant by reverse+flow+reactor · · Score: 4, Insightful

    You can get a windows install to never decay:

    1) install favorite OS as the host system.

    2) install VMWare

    3) install windows as a guest OS. Flavor to taste.

    4) set the Guest OS drive to non-persistant. Set you home directory to a share form the Host OS.

    5) reboot the guest OS as needed. Everytime you reboot, the system is restored from the image stored on the Host OS. Crap does not stay unless you tell it to stay.

    or for slightly different purposes, install the OS and tailor it as you like it. Image partition. Reimage the drive when there is too much fluff and bloat hanging around.

    --

    The significant problems we face cannot be solved by the same level of thinking that created them. -Einstein

  10. Windows decays because... by g4dget · · Score: 4, Informative
    Windows decays because its package management and system resource databases suck. Sorry, but there is no more polite word for it. The registry is a prime example of those gee-whiz solutions ("why don't we put all this information into a 'real' database") that looks neat but just doesn't work well in practice; Microsoft seems susceptible to implementing those kinds of systems.

    MacOS's preferred installation method ("drag-and-drop") doesn't suffer quite from the same problems as Windows. It's clean, simple, and easy to understand, and it doesn't leave junk all over the disk in mysterious places. But some applications install differently, and there is no single software update mechanism. Still, so far, OSX is holding up well on my systems, showing no signs of decay. But maintaining applications at the latest versions is a significant amount of work compared to Linux.

    For Linux distributions, it depends on the installation and update method. Debian systems can be updated for years without "decay". In fact, I haven't seen one "decay" yet, either ones that are updated regularly or ones that aren't. Because all packages come from a single source, they are all integrated, cross-checked, and tested together, a luxury that neither Windows nor MacOS have.

    The fact that, in Linux, each program has its own configuration files, often one system-wide one and one in the user's home directories, also makes Linux enormously more robust. There is no single point of failure and if some program's defaults get corrupted, it's trivial to fix and trivial to tell users how to fix it ("rm .foobar" and you should be fine).

  11. This is no surprise. by Dthoma · · Score: 4, Funny
    Cruft is a fact of life. It exists within everything, even real life. The only reason people notice it with computers is because computers demand 100% accuracy and require perfect install/uninstall techniques. Cruft/bit rot/software rot/deprecation is guaranteed to occur eventually despite the best efforts of coders and users because the physical conditions under which computers work are imperfect. Remember the last time you spilled a sugary drink on your keyboard? Or accidentally ripped the power cord out of the back of the machine whilst it was busy defragging?

    The only way to eliminate cruft (or whatever you want to call it) is to make computers into machines which can function just as well under imperfect physical conditions. A book is still functional, even if you partially break the spine and remove the cover. Fitting lots of failsafes and/or restricting the freedom of installation programs should help reduce cruft. When was the last time satellite control modules suffered from cruft? Or the machines which work our nuclear power stations?

    Uninstallers tend to not bother removing everything because some of the old program components may be being used by some other program. The obvious solution would be to stop all programs using each other, but there are two problems with this:

    1. You can't force all programmers to not rely upon other components which may or may not exist
    2. All programs will have to come bundled with EVERYTHING they need.

    So this policy would be unenforceable, and would require much, much bigger hard disk drives. The only obvious solution to his problem would be to stop making the programs integrate themselves into the system so well, so they can be removed with a simple 'rmdir'.

    Someone has already mentioned entropy and decay as a cause of cruft, but if it plays such a big part in it, why will a computer still function fine if you leave it in a cupboard for a decade, blow the dust off it, and plug it back in? The reason is that entropy is caused by crappy coding, crappy operating systems, crappy users, crappy physics and crappy integration. Until these three things cease to exist (not likely), then cruft will continue to occur. I don't think anyone could be expected to keep track of the things a 6-year-old PC has to keep track of:

    Uninstaller: Duh! I think I'll randomly leave behind 7 files, due to the 0.02% chance they might be used by some other shite program!

    OS: Duh! I think I'll randomly fragment the hard disk drive, and fuck up the file system!

    User: Duh! I think I'll randomly install the first software I happen to catch my eye on, and install it wherever it's most convenient!

    Physical environment: Duh! I think I'll randomly deposit dust on the surface of the motherboard and the hard disks!

    Integration: Duh! I think I'll randomly use DLLs from other programs, but not say which!

    At the end of the day, it comes down to a balance between convenience and simplicity. Convenience occurs when everything promises to install itself, and to latch onto everything else. This goes wrong because a program simply can't know where and how to install itself to avoid cruft. Simplicity occurs when everything on a PC is in its own self-contained bundle, interacting as little as possible with everything else. This goes wrong because a program has no way of efficiently obtaining data from other hardware or software.

    And in case you were wondering, my computer's at cruft force 3 - Lived-in. Surprising, considering it's a 2 year old Windows machine.

    --

    Note to M1-ers: a curt but otherwise insightful message is not "Flamebait" or "Troll".

  12. Cruft Level 11! by Valgar · · Score: 5, Funny

    I dub my SunPCI Win2k install as running at cruft force 11 "Undead"

    It shouldn't run, it shouldn't even boot into safe mode, but some odd digital alchemy has occured that has resulted in some necromantic miracle, resulting in a cantankerous, yet unkillable install of Windows.

  13. Real Player is a Great Example by 0xA · · Score: 5, Interesting
    I have this big time beef with Real One Player (free version). I make a point of cleaning my startup items out whenever some stupid thing like Real's Start Center gets in there. That is anoying enough but Real has taken it to a new level.

    On my XP box Real One put "eventsvc.exe" in the run key of my registry, I removed it. Every time I run Real One it puts it back. This thing is even more anoying than the start center, it just sits in the background until another app steals one of it's file associations. It then pops up a little box saying "this app has stolen my media type". The box has two options, "OK" and "remind me later", there isn't even an X in the corner to close it, you have to use alt + F4. If you don't say OK and this stupid thing is running it will pester you again every 15 minutes or so. You have to kill the process and then remove it from the registry (or use msconfig).

    This IMO is the worst kind of cruft. Maybe I want to use Winamp for MPEG 1 audio! Please fuck off!

    This piece of junk just sits in the background sucking up a couple megs of ram and using some cpu time when it needs to check that nothing else is moving in on it's turff. The fact that I am playing WC3 when it decides to do this, isn't relevant, Real must protect thier position as the number one most anoying piece of shit in existence. God only know how many memory leaks and all round crappy code is contained in this thing.

    Real guys, last time I checked it was still My Computer. Leave your bullshit at the door.

  14. Maybe, maybe not by Restil · · Score: 4, Informative

    Linux MAY be prone to SOME of these problems, but I'm willing to trust that the great majority of what causes windows systems to go nuts on a regular basis simply won't affect linux, not because its immune, but because its not used in the same way.

    First of all, I'm willing to take at face value the fact that a 2K/XP system running only well supported, stable drivers on stable hardware running only a small set of vital application programs will be unlikely to encounter any serious problems. I have no personal evidence to support this, but a few people I know swear by it, so I'm willing to accept it under these conditions.

    However, 2K/XP might have gotten it right, but it took MS 20 someodd years to get around to getting it right. And it requires a fairly new computer to be useful. Win 95 runs great on old (read: CHEAP) hardware as far as performance goes, but it has serious stability problems. If I want to run a 7 year old version of Linux, I'm willing to bet
    that the last release in the 1.0.x series is just
    as stable in a production environment as the latest 2.4.x release is. Sure, it might not be
    as feature packed, and might not have the extensive driver support, but if it serves the purposes I require, it will work flawlessly.

    As for drivers, Windows virgin installs come with a set of drivers for a lot of legacy hardware. If your system is a couple years older than the version of Windows you're installing, it probably has the drivers for all your hardware. For any other hardware, you'll have to use vendor supplied drivers. If these drivers are unstable, Windows can misbehave, and it wouldn't necessarily be the fault of Windows. Certainly Linux must have the same problem, right?

    The simple fact of the matter, those who support Linux tend to support the same software methodology. The drivers, like the kernel, are all open sourced. They're heavily peer reviewed, and those that are integrated into the kernel are solid. And if bugs are found, they're fixed. If the original programmer doesn't/can't/won't fix it himself, there are countless others who can. In many/most cases, the drivers aren't even written/produced by the manufactuerers of the hardware, but by kernel hackers, on their own time. These guys have no interest in being first to the market. They have no desire to play the "just get it working, we can fix it later" game. Their only interest is in releasing solid, efficient code, becuase if they don't, they know someone else will be tearing it apart.

    Therefore, the drivers used on linux systems tend to be rock solid. So you have a rock solid kernel and drivers. Now for the applications.
    Applications for linux based operating systems tend not to overwrite system libraries with their own versions. General purpose applications are not generally run as root. The worst a normal user can do on a linux box by running buggy applications is to cause it to crash. Certainly, he can send the machine into thrashing or fill up the hard disk, but there are ways the administrator can restrict the type of activities that cause such outcomes. 2K/XP have methods to prevent these same problems, but many of the problems involved with installing misbehaving applications simply shouldn't be a problem in the first place.

    As for adding cruft to the operating system, my linux box has the same number of directories off of / as it did the day I installed it, with three extras added for each mounted HD on the system. My /home directory has one directory for every user on the system. My personal home directory, as I suspect others might be as well, is an organizational nightmare. But all that "cruft" is isolated. I know where the mess is, and I know only where the mess is. I don't have /etc, /bin, and other important directories littered with files that have no business being there. And no rogue application is likely to change that fact. Sure, an application program might add a directory to /usr/local and leave a large bloated mess under there, but if I decide later that I want to remove it, I can do a recursive delete of one directory and its gone. There aren't any mystery registry values that are going to cause me fits the next time I boot the system. There might be some entires in /etc/rc or crontab, but they won't hurt anything and can be removed later as they're discovered.

    I suppose its possible that a poorly managed linux box can cause massive problems, just as a perfectly managed windows box might work flawlessly. But all I can say is this. It's been 154 days since my last power failure, and my linux server has been up for 154 days. None of my windows boxes have that track record.

    -Restil

    --
    Play with my webcams and lights here
  15. Cruft can be keep in check with some work. by bedessen · · Score: 4, Informative

    I decided to build a new system some time in the fall of 2000, but prior to that I had been running the original Windows 95 install that I did some time in mid 1996. There were some hardware upgrades, sure, but I never resorted to reinstalling. My systems are highly customized, I like to set everything just the way I like it. So to me a reinstall is not something I do lightly. The system was not unstable at all, it was quite a workhorse. Sure, every now and then it would have a lockup of some sort, but we're talking once every few weeks. Now that I run win2k it's very rare indeed.

    You can manage the cruft in windows. It's not impossible, even if you install/uninstall a lot of stuff. The important things are to know what's running (task list, services, run at startup, etc) and to get to know the registry. You must babysit for poor installation programs. Often they will add crap to startup, or icons on the desktop, or other weird things, which I would always delete. You also have to help some of them wipe their ass when you uninstall, as a lot of them leave junk behind. You have to be willing to go into the Windows system directory and examine questionable DLLs. There a lot of tools to help with this. I recommend everyone who is interested go to www.sysinternals.com. There you will find programs such as REGMON and FILEMON which show you every registry access or file access in realtime, with the ability to filter. Also very useful is LISTDLLS which shows you which DLLs are loaded by every process in memory. If there is a file that's locked you can often find out who is using in with this program. The 2k resource kit has a free utility called Dependancy Walker which will show you the library dependancies of any .EXE, sort of like ldd. You must also be familiar with certain areas of the registry, such as the part where stuff is loaded on boot, the "pending file rename" section, the section where apps install their preferences, etc.

    I find a lot of times when I use someone else's windows machine I am appauled by the amount of crap they have loaded, and most of the time aren't aware of it. Programs that load stuff on startup without being very clear about it and asking you first really peeve me. I patrol the startup folder+registry entries very strictly, and keep the task list small.

    You of course have to make sure your hardware is stable and you have to go through the process of finding a driver combination that is suitable. It can be very frustrating to mess with crap drivers and a ton of strange BIOS settings. But if you stick with it you can eventually find a combination that is bulletproof and will yield stability. If you don't put in the effort to do this, though, you will forever be messing with strange crashes.

    It can be done, but it is not for the faint of heart.

  16. Mac OS 9 by Phroggy · · Score: 4, Informative

    Certainly a system that has been in use for a long period of time can become less stable due to increased complexity as new software is added. However, the real question is, how easy is it to clean up the mess and return to a smoothly running system, without reinstalling the entire operating system?

    The problem with Windows is the Registry. Practically nobody, including Microsoft's own programmers, knows exactly what to clean up in the Registry to get the system running as good as new, without breaking something important. In Mac OS, however, it's really quite simple. Granted, you do have to have an understanding of how the system works, so I wouldn't expect a novice to know how to do this intuitively, but I'd expect far less of a Windows user.

    The most obvious thing is the Desktop file (actually a couple of files now). This is the closest thing the Mac OS has to a Registry, and it's not close at all. Every six months or so, reboot while holding the Command and Option keys (technically, you just have to hold the keys while the Finder is loading) and it will ask if you want to rebuild the Desktop file for each mounted volume (filesystem). A couple minutes later, good as new.

    The next thing is extensions and control panels. Perhaps you've downloaded some cheezy shareware thing that's conflicting with some other cheezy shareware thing. Open the Extensions Manager, and have a look. Usually you can easily identify where most things came from; if you don't recognize something, you can turn it off, reboot, and see what happens. You can create multiple extension sets to experiment with if you want.

    Finally, preferences. Some app misbehaving? Trash the Preferences file. Everything reverts to defaults, but nothing is really broken.

    And of course, if you want to uninstall an app, usually you just need to trash the folder the app is in. Sometimes it may come with control panels or extensions; just trash those too (they're easy to identify). If you want to be thorough, trash the prefs too, although it won't hurt to leave 'em.

    I have yet to see anything easier to maintain.

    --
    $x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
    $x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
  17. Re:Windows? Try Linux...or learning a little by johnlcallaway · · Score: 4, Informative

    Most cruft can be attributed to users who do not take the time to learn about their computers and what it takes to maintain them. How many people go out and buy a new hard drive when they run out of disk space instead of going through the add/remove programs in Windows, RPM manager in Linux, or wander through all directories and check for things no longer needed.

    I have lived with 10GB for two years now just by pruning cruft whenever I get less than 300MB free. I would love to spend $100 on 80GB, but that would only lead to more cruft.

    Linux/Unix does hold one bit over Windows, there is no single directory that becomes crufted. (Please ... I know everything falls off of slash ... work with me here...) How big is your WinNT directory?? Mine is 1.24GB, and contains 9,191 files. That is 12% of my hard drive space, and 10% of all files, including my p0rn! Linux/Unix doesn't put all of its eggs into one basket, making it a little easier to prune the cruft that builds up, or at least a little less dangerous.

    Face it, unless you and I are willing to spend many hours pruning the cruft on a regular basis, it is often easier to delete and rebuild. Oh yeah ... another thing Linux/Unix has in its favor. If I put all the user directories on a separate partition, I don't lose all my settings when I reinstall Linux.

    Bad registry...evil registry...corrupted registry...

    --
    I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
  18. scatter-componets-across-10,000 directorys by crucini · · Score: 4, Informative
    Of course linux has the nice problem of scatter-componets-across-10,000 directorys. I use linux as a server platform instead of a desktop platform for precisely this reason. I can *never* find all the parts of some installs and I despise when a program places itself into 4-5 different directorys.
    If you installed from RPM, rpm -qlp some.rpm. If you installed from source, try make -n install.
  19. Re:What does the Debian policy offer over Windows? by rusty0101 · · Score: 4, Informative

    Being accepted as a Debian package means that your package does follow the Debian policy. That means that there are over 9000 packages where the developer was concerned enough about the policy to follow through with what put you to sleep.

    The dselect, apt-get, dpkg, gnome-apt, installers do just what you are asking a package installer to do. When you build a package, using Make, or other software building applications that support Debian packages, your package does identify what files are needed, what independently developed packages are required. It also handles uninstall very well.

    Is it perfect? Nope. But in comparison to Windows software installers, it is light years ahead.

    Of course BSD users will brag about how their installer works for any platform that has a C compiler... and that there exists drivers for the hardware... Sounds like a really lousy way to be set up to uninstall software later, but I am not judging the system, I don't use it.

    -Rusty

    --
    You never know...
  20. Re:Don't use it! by irony+nazi · · Score: 4, Interesting
    Another 30 second workaround is: Support the software by purchasing it!! It's amazing how effective it is. Since I purchased quicktime pro, it hasn't nagged me once when I started. This super-secret method also enables some super-secret features. For example, now I can save Quicktime in Mpeg or DV formats! I can cut and crop movies and parts of movies or even combine movies.

    Doing this with software such as Quicktime is also rebellious, as it sends the word to Apple that *hey your software is worthwhile to me*. It states that *I don't succumb to predatory bundle-it-with-the-OS techniques* and most importantly *I support capitalism and the free market*.

    Do you get to do that by playing with the calendar?

    --

    Bringing irony to the Slash-masses