Guest wsxedcrfv Posted May 14, 2011 Posted May 14, 2011 To my understanding, there are 5 or 6 resource heaps used by win-9x/me. Some of them are 32-bit, some are 16-bit (the 32-bit ones have a heap size of 2mb, and the 16 bit ones are 64kb I believe). It's sometimes mentioned that a deficiency in win-9x/me is the fact that these heaps are of a fixed size (and perhaps small) compared to those in the NT line.The error "Unable to create control" is frequently mentioned in conjunction with running low (or even running out of) user resources on win-9x systems, and that has me scratching my head because I don't believe I've ever seen that error on any win-9x system I've ever operated or managed.So my question is - under what circumstances would a user experience system instability or system malfunction if the the 64kb or 2MB heaps have been used up? Are these circumstances likely to be reached during a "normal" or average usage session? To what degree is badly written software (with GDI leaks) to blame instead of pointing a finger at Win-9x heap design?Or to ask this another way - are the heap sizes chosen for win-9x/me satisfactory for many (or most, or all) use-case situations?
loblo Posted May 14, 2011 Posted May 14, 2011 A topic from a couple of years ago that might interest you:And then Tihy's GDI Heap expander topic which came in response might also be of interest:
Guest wsxedcrfv Posted May 15, 2011 Posted May 15, 2011 A topic from a couple of years ago that might interest you:Thanks for the background information, but my main question is this: Why does it seem that some people had such bad luck (or bad experiences) with resource or heap depletion running win-98, while others didn't ? Is this really more of an issue of badly-behaving applications?
TmEE Posted May 15, 2011 Posted May 15, 2011 Try running something like Photoshop for a while and some other programs aswell, particularly internet browsers
Glenn9999 Posted May 15, 2011 Posted May 15, 2011 (edited) It's sometimes mentioned that a deficiency in win-9x/me is the fact that these heaps are of a fixed size (and perhaps small) compared to those in the NT line.More of a legacy of the 16-bit part of Windows 3.1 which carried over to 9x/me. A decision was made long ago that there wasn't much need for that many resources. And there couldn't be given the amount of memory available on the machines at the time, and the ability of programs to address it (memory managers exist as ways to help deal with that).The error "Unable to create control" is frequently mentioned in conjunction with running low (or even running out of) user resources on win-9x systems, and that has me scratching my head because I don't believe I've ever seen that error on any win-9x system I've ever operated or managed.You really haven't been very far around the block. Either that or any 9x systems you've dealt with have been rebooted repeatedly by the end-users (the cure for this). Or the users knew well enough to reboot when those symptoms come along and never said a word to you (my average for 98 and ME both was about 2 hours before a graphics glitch, program crash, or BSOD). It's a VERY common issue relating to the GDI resources. If not this message, corruption in the windows and how they are drawn. In fact, if Microsoft and the other companies didn't lobby the governments to eliminate product liability for their software (e.g. defective product), they would have gotten hit with a ton of lawsuits and would have lost them all. The numerous problems related to just GDI resource problems were/are THAT bad. That was one of the leaps of quality that XP represented over the 9X series. You didn't have to have OCD mannerisms regarding saving your work to make sure a random crash or graphics defect didn't take it all out. I was so glad to be rid of the last 9X machine I had to deal with in my sphere (an XP install onto this same machine that 9X was running on), simply because the complaining about it "never working right" ceased.So my question is - under what circumstances would a user experience system instability or system malfunction if the the 64kb or 2MB heaps have been used up? Are these circumstances likely to be reached during a "normal" or average usage session? To what degree is badly written software (with GDI leaks) to blame instead of pointing a finger at Win-9x heap design?A lot of this is programming/technical (again). When you put a graphics object on screen (there's lots of them on forms), you have a GDI resource associated with that graphics object. Now there were two or three problems that most software would encounter in 9X. One is you would put too many graphic resources onto the computer. 64K was generally sufficient for the 3.1 series and the lack of multi-tasking people did, but when you got into the 9X and ME series, people tended to do more. Then the software developers would do more (graphics programs, things like Print Master, even personally had problems with things like Word & WordPerfect) Of course, you have very few games on 3.1 and even 9X simply because GDI couldn't take that many resources. As we all know, this fact about games changed with DirectX and the redesign of how graphics were handled.Then you would have heap leaks (as with any dynamic allocation of resources) and heap fragmentation. XP did a better job at cleaning up after the applications that didn't release their resources (and fragmentation), but it's not as much of an issue anymore with the GDI implementation there. But fact is, there were some programs written well in regard to releasing resources and many that were not. Then fragmentation is something that couldn't be helped anyway on the application side. But both relates to the increased complexity of many applications that came along during the 95 era (along with tying the IE browser to 9X-ME, but that's another topic entirely.As another vote, I've found Tihiy's GDI heap software to be a great help and found using it coupled with stripping IE has made my 9X/ME installs (both VM and real) run in a much more stable fashion and actually rendered it usable for longer than an hour.Or to ask this another way - are the heap sizes chosen for win-9x/me satisfactory for many (or most, or all) use-case situations?In the 3.1 era, yes. In the late 98-ME era, no.Thanks for the background information, but my main question is this: Why does it seem that some people had such bad luck (or bad experiences) with resource or heap depletion running win-98, while others didn't ? Is this really more of an issue of badly-behaving applications?Depends on the mix of applications (both quality and resource usage), multi-tasking, and recognition of the problem. Most that probably don't recognize it involve the scenario described above. But given all of what was known when 95-Me was new, they were well known to be very crash-prone and unusable for long periods by the majority of the population. So rebooting them and expecting crashes was part of the game and expected for using a 9X/Me OS. Edited May 15, 2011 by Glenn9999
Guest wsxedcrfv Posted May 17, 2011 Posted May 17, 2011 You really haven't been very far around the block. Either that or any 9x systems you've dealt with have been rebooted repeatedly by the end-users (the cure for this). Or the users knew well enough to reboot when those symptoms come along and never said a word to you (my average for 98 and ME both was about 2 hours before a graphics glitch, program crash, or BSOD). Wrong on all counts. I think I've been around the block long enough when it comes to PC's (my first Wintel PC was the IBM PC back in 1983).Funny how I can have 10 or 20 running instances of Firefox, Outlook 2000 (not OE), Coreldraw 9 (a moderately complex graphics program) and VLC playing a FLAC file, and I have no problems. It's complete hyperbole to say that a win-98se system can't run for more than an hour or two without needing to be re-booted. At my office, the win-98 systems there run standard software (Office 2K) plus a very large (and expensive) accounting package (ACC PAC) and can do that all day without falling over. And none of that requires these heap-helpers or extenders.I think it's more along the lines of having a P4-based motherboard (or at least a motherboard made in or after 2002), having a decent amount of RAM in it (at leart 512mb) and having a competent video card (again, an AGP card with at least 128 mb, made in or after 2003). I think a lot of the problems that you saw related to graphics that you attributed to heap deficiencies were probably caused by buggy graphics cards or drivers. I think that ATI cards made circa 2000 - 2002 were problematic. Or maybe you had hard-drive problems (bad sectors) that you didn't know was happening that was causing the instability you saw. I saw an inordinate amount of faulty or buggy hard drives in the 8 to 20 GB range back during 2000 - 2002.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now