Execution Drift
-
Call this "execution drift" for want of a better term. Everyone who uses a PC knows about this problem: A computer must be rebooted periodically or "things go wrong." Some software in the system (frequently many programs) will begin behaving erratically, or not function at all. Mainly, I'm looking for more information on the phenomena, and in particular, is there a standard name for this? I tried several topics with Google, pc drift, program drift, execution drift, etc. and nothing valuable came up. Presumably, the culprits are mostly applications and add on code rather than system code, drift in system code is perhaps not uncommon.
:doh: Eschew Obfuscation :doh:
Its called Visual Basic ;P
I know the language. I've read a book. - _Madmatt
-
I don't think you need any fancy term. Its just bad programming. Either at the OS or Application Level or firmware. If everything released resources correctly, cleaned up after itself correctly when being uninstalled, dumped temporary files correctly etc. etc. etc. then things should work for ever. Look at mission critical systems where money is no object and every level of detail is looked into. They don't get powered off and on all the time do they?
Dave Don't forget to rate messages!
Find Me On: Web|Facebook|Twitter|LinkedIn
Waving? dave.m.auld[at]googlewave.comI don't think you can say "it's bad programming" and leave it at that: it's an environment where the compromises are pushed towards faster development rather than reliability. As an embedded programmer for more years that I want to think about, with desktop on top of that, I am aware that two different mind sets and two different approaches are needed for the different environments. Some of it is bad programming, yes. But a lot of the problems are forced into the product by the "ship it now" mentality of the desktop world.
You should never use standby on an elephant. It always crashes when you lift the ears. - Mark Wallace C/C++ (I dont see a huge difference between them, and the 'benefits' of C++ are questionable, who needs inheritance when you have copy and paste) - fat_boy
-
NowIsForever wrote:
is there a standard name for this
I just use the name "memory leaks". :)
Me, I'm dishonest. And a dishonest man you can always trust to be dishonest.
Honestly. It's the honest ones you want to watch out for... -
I don't think you can say "it's bad programming" and leave it at that: it's an environment where the compromises are pushed towards faster development rather than reliability. As an embedded programmer for more years that I want to think about, with desktop on top of that, I am aware that two different mind sets and two different approaches are needed for the different environments. Some of it is bad programming, yes. But a lot of the problems are forced into the product by the "ship it now" mentality of the desktop world.
You should never use standby on an elephant. It always crashes when you lift the ears. - Mark Wallace C/C++ (I dont see a huge difference between them, and the 'benefits' of C++ are questionable, who needs inheritance when you have copy and paste) - fat_boy
Sooo... poor management then. :-D Bad managers hire bad developers and give them bad deadlines. Plus, in an environment where having a system crash affects everybody (mainframe, mini-computer), more effort is made to deliver a quality product. But when each user has his own system and a crash only affects one user, quality tends to go down the drain. X| (5)
-
Call this "execution drift" for want of a better term. Everyone who uses a PC knows about this problem: A computer must be rebooted periodically or "things go wrong." Some software in the system (frequently many programs) will begin behaving erratically, or not function at all. Mainly, I'm looking for more information on the phenomena, and in particular, is there a standard name for this? I tried several topics with Google, pc drift, program drift, execution drift, etc. and nothing valuable came up. Presumably, the culprits are mostly applications and add on code rather than system code, drift in system code is perhaps not uncommon.
:doh: Eschew Obfuscation :doh:
To me this is something that happens to others, not everyone. My work computers and servers have the programs they need, nothing more. And they don't need restarts except for windows update once a month or if there's a new version of a necessary program. If I need to test a program I do it in a virtual pc. BTW, a better name is "Attention Deficit Ooh Shiny".
My postings are a natural product. The slight variations in spelling and grammar enhance their individual character and beauty and are in no way to be considered flaws or defects.
-
I don't think you need any fancy term. Its just bad programming. Either at the OS or Application Level or firmware. If everything released resources correctly, cleaned up after itself correctly when being uninstalled, dumped temporary files correctly etc. etc. etc. then things should work for ever. Look at mission critical systems where money is no object and every level of detail is looked into. They don't get powered off and on all the time do they?
Dave Don't forget to rate messages!
Find Me On: Web|Facebook|Twitter|LinkedIn
Waving? dave.m.auld[at]googlewave.comdaveauld wrote:
Its just bad programming. Either at the OS or Application Level or firmware.
I don't think that's the case. memory leaks are indeed bad programming, but they don't explain the issue daveauld complains of. More likely it's heap fragmentation, which will eventually kill any OS that implements dynamic memory allocation to an arbitrary collections of applications. Sooner or later, an APP that needs a large block of contiguous memory will fail to get it, then things begin to unwind. In your example of mission critical systems (particularly the 24/7 process control type applications) the memrory is is tightly controlled (often preallocated and dedicated), so leaks and fragmentation are by design not an issue.
-
daveauld wrote:
Its just bad programming. Either at the OS or Application Level or firmware.
I don't think that's the case. memory leaks are indeed bad programming, but they don't explain the issue daveauld complains of. More likely it's heap fragmentation, which will eventually kill any OS that implements dynamic memory allocation to an arbitrary collections of applications. Sooner or later, an APP that needs a large block of contiguous memory will fail to get it, then things begin to unwind. In your example of mission critical systems (particularly the 24/7 process control type applications) the memrory is is tightly controlled (often preallocated and dedicated), so leaks and fragmentation are by design not an issue.
If an application has memory leaks which ties up most of the available memory, and then you attempt to launch another application which needs more memory than is free, it would explain some of the symptoms that daveauld is describing. I'm sure that MS.Word is riddled with memory leaks and have found that the occasional reboot is necessary to "clean" up the memory.
-
Call this "execution drift" for want of a better term. Everyone who uses a PC knows about this problem: A computer must be rebooted periodically or "things go wrong." Some software in the system (frequently many programs) will begin behaving erratically, or not function at all. Mainly, I'm looking for more information on the phenomena, and in particular, is there a standard name for this? I tried several topics with Google, pc drift, program drift, execution drift, etc. and nothing valuable came up. Presumably, the culprits are mostly applications and add on code rather than system code, drift in system code is perhaps not uncommon.
:doh: Eschew Obfuscation :doh:
I thought that this was because of memory fragmentation. This will be more evident if the OS relies on a time based paging algorithm to determine which blocks goes to the page file. Oh wait, while this explains why applications will be slow when reactivated after being left open for a long time, it does not explain why anything may appear erratic. :doh:
-
I know how it feels (on a Monday). :sigh:
Join the cool kids - Come fold with us[^]
-
Call this "execution drift" for want of a better term. Everyone who uses a PC knows about this problem: A computer must be rebooted periodically or "things go wrong." Some software in the system (frequently many programs) will begin behaving erratically, or not function at all. Mainly, I'm looking for more information on the phenomena, and in particular, is there a standard name for this? I tried several topics with Google, pc drift, program drift, execution drift, etc. and nothing valuable came up. Presumably, the culprits are mostly applications and add on code rather than system code, drift in system code is perhaps not uncommon.
:doh: Eschew Obfuscation :doh:
-
Sooo... poor management then. :-D Bad managers hire bad developers and give them bad deadlines. Plus, in an environment where having a system crash affects everybody (mainframe, mini-computer), more effort is made to deliver a quality product. But when each user has his own system and a crash only affects one user, quality tends to go down the drain. X| (5)
Not necessarily poor management. Just management. There is a cost/benefit analysis that goes into deciding how much development and debugging time goes into a product. So if a management decision is made that says, "OK, for this $100 product, X number of bugs is acceptable," that's not poor management, that's just management.
-
Call this "execution drift" for want of a better term. Everyone who uses a PC knows about this problem: A computer must be rebooted periodically or "things go wrong." Some software in the system (frequently many programs) will begin behaving erratically, or not function at all. Mainly, I'm looking for more information on the phenomena, and in particular, is there a standard name for this? I tried several topics with Google, pc drift, program drift, execution drift, etc. and nothing valuable came up. Presumably, the culprits are mostly applications and add on code rather than system code, drift in system code is perhaps not uncommon.
:doh: Eschew Obfuscation :doh:
I call it Windows grunge. I've had a Linux server that was only rebooted to upgrade the operating system. It went for 3 years once, with no problem at all.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
-
Not necessarily poor management. Just management. There is a cost/benefit analysis that goes into deciding how much development and debugging time goes into a product. So if a management decision is made that says, "OK, for this $100 product, X number of bugs is acceptable," that's not poor management, that's just management.
"Good enough" isn't. :-D
-
"Good enough" isn't. :-D
Not when I'm the one laying out the money for the product, it sure ain't. :thumbsup:
-
I call it Windows grunge. I've had a Linux server that was only rebooted to upgrade the operating system. It went for 3 years once, with no problem at all.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
Why do people associate servers with work computers? They might be the same hardware, but they're completely different animals. It doesn't suirprise me in the slightest if a Linux, Mac, Windows, or any other server stays up for a decade or two with no errors. A work machine, that's used to write and build code, to create and modify graphics, to use God-knows how many rich text editors, watch youtube videos, open PDFs, operate 600 background processes, fill in web forms, act as a telephone, compile and manage documents for printing, etc, etc, etc. might not be quite as stable. I point and laugh at idiots who think that Linux is stable because it can run a server.
I wanna be a eunuchs developer! Pass me a bread knife!
-
Why do people associate servers with work computers? They might be the same hardware, but they're completely different animals. It doesn't suirprise me in the slightest if a Linux, Mac, Windows, or any other server stays up for a decade or two with no errors. A work machine, that's used to write and build code, to create and modify graphics, to use God-knows how many rich text editors, watch youtube videos, open PDFs, operate 600 background processes, fill in web forms, act as a telephone, compile and manage documents for printing, etc, etc, etc. might not be quite as stable. I point and laugh at idiots who think that Linux is stable because it can run a server.
I wanna be a eunuchs developer! Pass me a bread knife!
Mark Wallace wrote:
I point and laugh at idiots who think that Linux is stable because it can run a server.
I point and laugh at idiots who generalize too much. My Linux work machine, which is used for most all the things you mentioned, ran 5 or 6 months without rebooting. I've been testing the waters to see if I could totally get rid of all Microsoft products for about 20 years or so. In stability and reliability, Linux wins hands down. In user friendliness, it comes in pretty bad. In office products software and interchanging with other companies, it is hurting. But in system stability, it wins hands down. On the other hand, I've never had a Windows server that could go a whole year without rebooting. Maybe the later versions are better? Maybe Windows 7 will finally catch up?
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
-
Mark Wallace wrote:
I point and laugh at idiots who think that Linux is stable because it can run a server.
I point and laugh at idiots who generalize too much. My Linux work machine, which is used for most all the things you mentioned, ran 5 or 6 months without rebooting. I've been testing the waters to see if I could totally get rid of all Microsoft products for about 20 years or so. In stability and reliability, Linux wins hands down. In user friendliness, it comes in pretty bad. In office products software and interchanging with other companies, it is hurting. But in system stability, it wins hands down. On the other hand, I've never had a Windows server that could go a whole year without rebooting. Maybe the later versions are better? Maybe Windows 7 will finally catch up?
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
Walt Fair, Jr. wrote:
I point and laugh at idiots who generalize too much.
Pointing and laughing is so much fun! I think the two main things that helps Linux maintain its stability rep are: 1. That no self-respecting Linux user will buy anything from Adobe. 2. That open source apps, while they might be a pain in the backside, user-unfriendly, and often lack polish, are generally coded a lot better than much of the freeware and shareware available for Windows. That said, and even though my machines are loaded with Adobe malware, they never crash, and I never shut them down unless a really annoying update demands it (and demands it and demands it -- I've left "restart now?" boxes floating around for weeks). I don't think that Linux is really more stable at all; it's just that people spend more time setting it up to be stable, and don't install so much broken code on it.
I wanna be a eunuchs developer! Pass me a bread knife!