Slashdot Mirror


Windows 8 To Reduce Memory Footprint

bheer writes "Microsoft's Windows 8 blog has a good post about the work being done to reduce Windows 8's memory footprint. The OS will use multiple approaches to do this, including combining RAM pages, re-architecting old bits of code and adding new APIs for more granular memory management. Interestingly, it will also let services start on a trigger and stop when needed instead of running all the time."

38 of 306 comments (clear)

  1. About friggin' time... by DaneM · · Score: 4

    ...especially the bit about the services.

    1. Re:About friggin' time... by tech4 · · Score: 5, Insightful

      Except for the services part, Windows memory management has been improving a lot with each version. It made a huge difference when they let the OS decide more intelligently where to put resources not in use to.

      Most people who don't really understand memory management will just look at the processes and start bitching how much memory each program uses, or how Windows shows there isn't any memory available (while in fact it's just used for caching things). They're only half-intelligent, which hurts them even more than not knowing at all. The fact is, non used memory goes to waste. Every time there's memory that's free, well, it's just wasting it. It's much better approach that OS tries to use it all intelligently.

      This same pattern of stupid comments can be seen in browser comparisons too. It's always full of people going "omg Firefox/Opera/IE is using this much memory!" while it shows that they don't understand what is really happening. The browser and OS reserves that memory because it speeds up things. If the memory is needed elsewhere, it can and will free it up. That's something that seems to be really hard for people to understand, as the same thing always happens in every browser story or story about memory management.

    2. Re:About friggin' time... by torako · · Score: 4, Insightful

      By what mechanism can a browser know when the memory it has reserved is needed elsewhere in the system? I don't think it works that way.

      When people complain about browsers needing excessive amounts of memory they usually refer to memory leaks, not to intelligent use of memory through caching.

      The bit about how some people misinterpret the amount of free memory the OS reports is totally true, though.

    3. Re:About friggin' time... by mickwd · · Score: 3, Insightful

      "Except for the services part, Windows memory management has been improving a lot with each version."

      Are you forgetting Vista? It's only two versions of Windows ago. Windows 7 certainly improved on Vista, but Vista's memory requirements were hugely greater than XP's, for seemingly little benefit (despite all the little tricks they introduced).

      "The browser and OS reserves that memory because it speeds up things. If the memory is needed elsewhere, it can and will free it up."

      I understand the concept of RAM caching - it's not exactly rocket science. But how does Firefox/Opera/IE free up memory when the OS needs it? What is the mechanism by which the OS tells the browser to free memory?

      I hope you're not referring to paging. Excessive paging to and from disk as you switch between applications is not a sign of a well-performing system.

    4. Re:About friggin' time... by ArcherB · · Score: 3, Insightful

      By what mechanism can a browser know when the memory it has reserved is needed elsewhere in the system? I don't think it works that way.

      When people complain about browsers needing excessive amounts of memory they usually refer to memory leaks, not to intelligent use of memory through caching.

      The bit about how some people misinterpret the amount of free memory the OS reports is totally true, though.

      I recall people complaining that their Vista system with 8GB of RAM had no free memory. This was true of systems running with 2 GB RAM and 16 GB RAM. This tells me that much of that was cache but that didn't stop people from claiming that Vista was a memory hog.

      However, you do have a point about the browser. If I leave Firefox running on a page that refreshes itself, like Slashdot, over the weekend, when I come back to the machine, Firefox is using over up to a GB or RAM and everything else is swapped out to the HDD. It takes several minutes for the system to become spunky again, and it usually requires a force close of Firefox. Firefox has pages cached on its own and OS knows nothing about it. All it sees is that Firefox.exe "needs" 1GB RAM.

      --
      There is no "I disagree" mod for a reason. Flamebait, Troll, and Overrated are not substitutes.
    5. Re:About friggin' time... by Kjella · · Score: 2

      I recall people complaining that their Vista system with 8GB of RAM had no free memory. This was true of systems running with 2 GB RAM and 16 GB RAM. This tells me that much of that was cache but that didn't stop people from claiming that Vista was a memory hog.

      One thing is cache, leaving things in memory after you've used them. But early Vista had a very aggressive idea of SuperFetch, pre-caching applications and other resources it thought you might need in best Clippy-style. So no matter how much RAM you had, Vista would churn on your disk. I think most people mistakenly identified this as swapping because Vista was out of memory. From what I understand later SPs and Win7 dialed it back to far more reasonable levels.

      --
      Live today, because you never know what tomorrow brings
    6. Re:About friggin' time... by Baloroth · · Score: 3, Informative

      In 7 at least you can go to "Resource Monitor" under the task manager Performance pane, and windows has a detailed breakdown of the way it is using Ram (Hardware Reserved/ In Use / Modified / Standby (i.e. cache) / Free). The last two add to be "available". It also shows how much on-disk cache you are using. Interestingly, 8 isn't using all my memory for pre-fetching any more (it was when i upgraded from 2GB to 6GB).

      --
      "None can love freedom heartily, but good men; the rest love not freedom, but license." --John Milton
    7. Re:About friggin' time... by hairyfeet · · Score: 2

      Actually windows HAS been getting better about memory with each version except Vista of course. For example Win 7 has delayed start services and with superfetch and readyboost RAM is used much more efficiently for the things you actually do. as for why so many services on at once? I can answer that....grandmas. You'd be surprised how many times I've had to deal with someone's PC because they have a "power user" in the family that killed some service like imaging support and now their scanner won't work. folks have NO CLUE how to get to that stuff and most are afraid to mess with it, so by having the most common services running they save a hell of a lot of support calls. Hell I'm waiting on a remote assistance invite now from a little old lady who can't get her sound and printer working and 5 will get you 10 her nephew tweaked something.

      But having trigger on event sounds like a good idea, now if they will only get rid of that stupid ass cell phone UI. I have YET to meet a single person that has anything positive to say, and I've shown the screencaps to over a hundred customers now. The closest I got was this exchange "That is a nice looking cell phone, what is that? Android? I've heard of that, its supposed to be nice....what do you mean Windows? Windows what? Well that is just stupid! why would I want a cell phone for a desktop?" and from the mouth of the clueless comes brilliance. nobody wants a cell phone for a desktop yet that is exactly what win 8 is! dumb MSFT, just dumb.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    8. Re:About friggin' time... by benjymouse · · Score: 2

      By what mechanism can a browser know when the memory it has reserved is needed elsewhere in the system? I don't think it works that way.

      I don't think that any browsers actually use this, but Windows has since Vista allowed memory to be prioritized. It is used by the various caching algorithms to ensure that even though a memory page has been used for caching, it will be given up instantly when memory is needed by an actual application (allocating with higher priority). When the cache later tries to access the page it will get a page fault. If it then tries to allocate and there is no free or lower-prioritized memory it will simply not allocate more memory. This tends to ensure that the available memory is actually put to good use, without leading to the after-lunch syndrome.

      Conceivably a browser or another application which could benefit from caching could take advantage of this system, perhaps choosing a priority for its own cache somewhere between normal memory and the Vista/7 readyboost cache.

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
  2. CPM by ArgumentBoy · · Score: 4, Funny

    My first self-owned computer was a Kaypro 4-84. The OS was CPM and the machine came with 64K (yes, K) of RAM. When it booted up the screen said it had 63K of RAM. I thought I had been ripped off so I called the company. The tech explained that the other 1K was being used by the OS. So I don't think Windows 8 is going to impress me.

  3. "let services start on a trigger" by Rufty · · Score: 5, Insightful

    So windows is finally getting inetd?

    --
    Red to red, black to black. Switch it on, but stand well back.
    1. Re:"let services start on a trigger" by mustangsal66 · · Score: 5, Funny

      So windows is finally getting inetd?

      and I hear Windows 8 SP1 will run the 2.6 kernel

      --
      Why worry? Each of us is wearing an unlicensed "nucular" accelerator on his back.
      Sig changed for readability by G.W.
  4. Hope so... by IANAAC · · Score: 5, Interesting
    It's been a long time since I've dealt with Windows other than XP in a VM, and even that is rare.

    My old Asus netbook recently died, so I was forced to go out and buy another. I bought an Aspire One loaded with W7S. I really wanted to like W7. Really. I liked the interface. But damn, it was really slow and memory hungry. With no pgms running, it was taking up about 560-580M of memory, compared to Ubuntu (11.04) taking 260-270M with no pgms running.

    I really couldn't have more than two programs running in W7 without hitting 900M memory use. Granted, they were big pgms - Thunderbird and Firefox, both latest versions. But contrast that with Ubuntu where I ran TB, FF, Pidgin, Hotot, Tobmoy, LibreOffice and Rhythmbox all at the same time and never go above the 850M mark in memory use (at least not yet).

    This release of Ubuntu has its own set of problems (Compiz, anyone?), but I much prefer it to W7. If MS can get Window's memory usage down I'd be more inclined to use the latest version.

    1. Re:Hope so... by Xelios · · Score: 2

      I don't understand this way of looking at memory. Unused memory is just that, unused. It's basically wasted. Why is this seen as an advantage? As long as enough memory is freed up when it's needed then I'd rather have the OS find a use for it, hopefully for things like cutting down application loading time. Whether W7 puts it to good use or not is up for debate, I personally have no idea.

      Besides, 4 GB is pretty standard these days, I really don't see the problem in an OS taking ~12% of that when it's not needed. Hell, take more. Take a full 2 GB if you can put it to good use, as long as it's cleared when another program requests it then why not?

      --
      Murphey's fighting Occam, and we're in the stands.
    2. Re:Hope so... by tgd · · Score: 5, Informative

      The vast majority of people -- even those who think they know how to interpret windows memory statistics -- don't know how to interpret Windows memory statistics. The common tools (like Task Manager) give meaningless numbers for both process and total system usage. Sysinternal's Process Explorer is better, but you still need to understand how the Windows kernel and memory management works to properly interpret the numbers.

      I wouldn't read anything at all into the numbers you were seeing. 900M memory usage for two programs in Task Manager is just fine -- you quite literally *can't* get the real information through Task Manager.

      Modern OS memory management is one of the most complicated things an OS does, and unfortunately no one has ever come up with a good way to distill all the information about what is really going on in your physical memory into a single number or statistic that lets people know if something is wrong. The only real statistic that matters is the percentage of pages that the total sum of processes are actively using relative to the commit charge... a process with a gigabyte of memory mapped files, or a hundred megabytes of shared code pages, or hundreds of megabytes of allocated and populated pages that only infrequently use them is running just fine.

      Reducing memory usage in Windows 8 is more about reducing the churn of pages through the various kernel data structures in the memory manager. As the article says, that involves things like optimizing old code to not trigger page faults all the time, or to suspend threads or otherwise idle background services that aren't being used. (A thread waking up, and going immediately back to sleep because it has nothing to do will still potentially cause a page to be re-loaded from disk.)

      The Russinovich/Ionescu book "Windows Internals" has some pretty good sections that talk about how Windows memory management really works, if you're curious about it -- it would likely be enlightening about some of the misunderstands that people have about Windows.

    3. Re:Hope so... by Runaway1956 · · Score: 4, Interesting

      I find it difficult to believe that people are buying new machines with less than 4 gig of ram. Memory was cheap by the time Win7 came out - cheap enough to load a new machine with 4 gig, anyway. Maybe I'm something of an asshole, but anyone who invests hundreds of dollars in a new machine, and decides to go cheap on the memory deserves to have a shitty running machine. I don't care if it's an Apply fanboy, a Windows drone, or a Linux nut. BUY MEMORY, or don't complain about performance!

      Now, if you had said that you installed all the memory that the mainboard would support, and you were getting 60% to 80% usage before you even started any programs, THEN I would agree that there was a problem, I would sympathize with you, and I would be willing to look for the problem.

      A couple of guys have commented on how much memory their browsers use. Well, I've seen FF using around 1.5 gig, while at the same time, Chromium was using in excess of a gig of memory. As someone else commented - the memory is there, why not use it? It's better than waiting for "virtual memory" to thrash the hell out of my hard disks!

      --
      "Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
    4. Re:Hope so... by LordLimecat · · Score: 2

      but anyone who invests hundreds of dollars in a new machine, and decides to go cheap on the memory deserves to have a shitty running machine. I don't care if it's an Apply fanboy,

      Quite relevant for the apple folks, since extra RAM for them (preinstalled) is quite expensive-- can be ~10% of the price of the machine to upgrade the RAM. I think they charge $200 to upgrade to 8GB from 4.

      Dell, HP, et all arent always that much better either, often they peddle upgrades like that for $100 (when RAM costs about $6 per GB right now).

    5. Re:Hope so... by LordLimecat · · Score: 2

      Unchanged cache can be dumped. If you need it again, you can pull it into cache again from its original location.

    6. Re:Hope so... by IANAAC · · Score: 4, Interesting

      The Russinovich/Ionescu book "Windows Internals" has some pretty good sections that talk about how Windows memory management really works, if you're curious about it -- it would likely be enlightening about some of the misunderstands that people have about Windows.

      I will fully admit to not knowing the internals of memory management. But I can say without a doubt that W7 definitely takes more of a performance hit than Ubuntu with the same programs. Thunderbird and Firefox bring the machine to a crawl in W7, while they don't in Ubuntu. Memory management is the only reasonable cause I can think of. It certainly not the processor - it's an Atom 570 dual core running at 1.66GHz. Add a third largish program (Media Monkey in my case) and W7 becomes unresponsive - REALLY unresponsive.

      I don't get this behavior at all under Ubuntu, with more programs running, Granted, Ubuntu makes it slightly easier for me to see how memory is being used - probably because I'm a bit more familiar with it - by showing me buffers/cache. So as a layperson, I come to the conclusion that it's memory management.

    7. Re:Hope so... by WorBlux · · Score: 2

      DSL is kind of cheating, all the software is frozen to circa 2003. A lot of features and code have been added to packages sense then. Not to say you can't still make a 200 MB distro fairly easily, but anything under a 100 is really hard to do unless you make a lot of sacrifices in usability.

    8. Re:Hope so... by blahplusplus · · Score: 2

      " into a single number or statistic that lets people know if something is wrong."

      You don't need numbers for memory leaks, applications usually slow down/crash because they are poorly programmed. Firefox's memory leaks become definitely obvious just by observing how the program slows down over time. Indeed interpreting memory data is difficult but that doesn't mean there aren't obvious give-aways from the user perspective of badly used resources or resources that become hijacked, especially when dealing with browsers/websites and flash over the past 10 years.

    9. Re:Hope so... by Solandri · · Score: 2

      I find it difficult to believe that people are buying new machines with less than 4 gig of ram. Memory was cheap by the time Win7 came out - cheap enough to load a new machine with 4 gig, anyway. Maybe I'm something of an asshole, but anyone who invests hundreds of dollars in a new machine, and decides to go cheap on the memory deserves to have a shitty running machine.

      If you buy a pre-built machine (which 99% of people do), the worst thing you can do is buy it with lots of memory. Desktops and laptops have ridiculously thin margins. The big manufacturers rely on upgrades and add-ons for profit. Consequently, the 4GB which costs them $10 from their supplier and sells for $15 retail, will cost you $50 if you buy it with a new machine. I buy lots of computers for family, friends, and clients. If possible, I'd buy them all with no memory and just buy my own memory modules to add in. The base configurations usually do stupid things like put in two 1GB SODIMMs into a laptop, forcing you to throw them away if you upgrade it to 8 GB.

      And so we end up in a situation where laypeople don't get the memory upgrade in the pre-built system because techies like us taught them that it's a rip-off. But they don't know how to buy/add new memory on their own. So they undeservingly end up stuck running low memory systems.

  5. Re:Sounds good - but so did Cairo by neokushan · · Score: 2

    If you actually bothered to read the blog, you'd see that these memory optimisations were one of the very first things they did and have, in fact, been in the code for about 2 years now.

    --
    +1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
  6. Re:Services by Junta · · Score: 2

    In a normal program in traditional desktop programming, state information in ram cannot be disposed of willy-nilly. Notably, Android took the opportunity of a new platform to declare out-of-view applications as having ram content considered disposable by default to get this benefit in 'normal' programs'. Hard for Windows to realistically do that. On the other hand, as an Android user, it is sometimes painfully obvious when an app I was 'running' in the background was killed by Android, so despite the promise of how seamless it is, it has warts depending on application implementation of saving and restoring state data.

    With many services, memory resident state information is less important and you also have a smaller, better defined population to roll through. Also, if you are in the multi-window mode, you can't reasonably kill background applications, you never know when the user might be eyeballing it despite window manager focus. With a service, you know it's needed because some IO entry point got tickled.

    Surprised that it took them this long to get inetd though...

    --
    XML is like violence. If it doesn't solve the problem, use more.
  7. Re:Sounds good - but so did Cairo by LO0G · · Score: 2

    Longhorn (and more specifically WinFS) was one of the very few times MSFT's ever talked about features that weren't delivered. For Windows 7, I can only think of one feature which was announced that wasn't actually delivered (bluetooth audio).

    Except for Longhorn features, what Windows features were promoted but not delivered?

  8. Sure by kbg · · Score: 2

    Ye sure, this is what always happens they promise some new and better stuff, and then they drop half the stuff and the OS is just crap. I wouldn't hold my breath for any of this. It's better to wait for the actual release. This is just hype talk.

  9. Re:Services by Daltorak · · Score: 4, Informative

    > it will also let services start on a trigger and stop when needed instead of running all the time.

    Nice.

    Although I have to wonder, why are "services" treated differently than other programs, in this context or any other? Does it have any positive effect?

    First of all, it's worth noting that Service trigger events shipped with Windows 7.... they're just making better use of this capability in Windows 8. (This is a common flaw with Microsoft's development process for Windows.... they include some really smart new APIs but then take another 5 years to start really using them thoroughly in Windows itself.)

    But to your main question -- why are services different from other programs? A service is actually a regular program, with one exception -- it hooks into the operating system to receive events telling it to pause, continue or stop its operation.

    Why do this? Management. You don't want 20 different programs with 20 different ways of starting & stopping them.

    A feature the Windows Service Control Manager offers is the ability to run your service in a single pooled process alongside other services that require roughly the same privileges on the system. You can see this at work in the Windows 7 task manager -- go to the Services tab and sort the list by PID. If you ever wondered what "svchost.exe" is on a Windows system, or why there are several running on your system, each under different user accounts...... there you go.

  10. And this matters? by grasshoppa · · Score: 4, Interesting

    With windows 7, memory has become less an issue to me. I just don't care that much; I have 4 gigs, and stuff starts right up when I click on it. As a user, that's all I care about. I could obsess about how much memory is being used at all times, I guess, but what does that metric even mean? I currently have fo:nv, mstsc, 10tabs in ie and ~20 in chrome, everything is still snappy. What does it matter that the system is showing high ram utilization?

    What I'd like to see them focus on instead is the file system, and making searches work at least as well as they did in XP. Vista utterly broke file searching ( which is amazing in and of itself ), and while w7 brought back some of the functionality, it's still a crap shoot.

    --
    Mod me down with all of your hatred and your journey towards the dark side will be complete!
  11. Re:Won't matter by postbigbang · · Score: 2

    Hey-- 640K is all you're every going to need. You have my word on that.

    --
    ---- Teach Peace. It's Cheaper Than War.
  12. Re:Half right and half wrong.. by LordLimecat · · Score: 2

    Too many people view 'free' memory as a good thing

    Windows Task manager does not include cache in its "physical memory" stat, which is the new "memory load". Either that, or none of the (several) boxes I use with Win7 do any caching whatsoever.

  13. Re:I have a Windows XP box running... by gman003 · · Score: 3, Insightful

    It shouldn't need to - you quite literally cannot buy new memory in less than 512GB capacity. That would be like saying "I can run Linux on a Motorola 68000, will Windows 8 do that?" - it won't, because there's very very little market demand for running a new operating system on decade-old hardware.

  14. Like Mac OS classic by tepples · · Score: 2

    A mechanism would be interesting where a certain process (say firefox.exe) would have a physical memory cap (say 256MB)

    That sort of reminds me of how Mac OS worked in the dinosaur age.

    Then again, swap is starting to be a relic of the old days

    Not on netbooks and tablets, where the operating system has to regularly swap out applications (on netbooks) or close background applications (on tablets) to free up memory for new tasks.

    1. Re:Like Mac OS classic by ninetyninebottles · · Score: 2

      A mechanism would be interesting where a certain process (say firefox.exe) would have a physical memory cap (say 256MB)

      That sort of reminds me of how Mac OS worked in the dinosaur age.

      Well, early MacOS and Windows. I had MacOS 6 and Windows 3.1 running on the same system (two motherboards shared disk and peripherals). When I tried to run an app with preallocated memory footprint in MacOS that would bring my total over the cap, the OS stopped me from launching it until I quit something. Windows 3.1 just crashed; which also stopped me :) Then Windows leapt ahead with Win 95 which crashed some of the time, but usually actually handled the memory for me.

    2. Re:Like Mac OS classic by Altrag · · Score: 3, Insightful

      More useful would be a message asking tasks to free up memory if they can. Tasks that can't (or were from prior to the new message existing) would simply ignore it and the OS would deal with them just as it currently does.

      Tasks that are just holding onto memory for caching or other non-immediate uses could potentially free up a lot. Obviously wouldn't apply to a whole lot of programs, but being applied to a handful of important ones (say, browsers) could make a lot of difference.

      Of course the OS would still need to be smart about it.. it would be too slow to try that on the fly.. but the OS could easily determine when it thinks its own cache is getting too small and can start bugging programs to free up theirs.

  15. Oh even the "tech savy" can be morons about this by NotSoHeavyD3 · · Score: 3, Interesting

    I still remember at one place I worked they had me clean up a memory leak. Unfortunately I couldn't get it past QA because they didn't understand caching. Basically the deal is that when you free memory it goes back to the memory pool for the process and then the pool decides when to release it to the OS.(Which may be never) So when I freed my memory in debug build the pool immediately returned it to the OS. When QA did that in release the pool held on to the memory and reused it. I even showed them how if you did multiple processes one after the other you could actually see the app use more and more memory while after the fix it would plateau. (Because it was just re-using the memory it had already allocate.) They totally didn't understand, I might as well have explained it to the pavement outside the building. (In the end it just got marked as unfixable. After that if I saw any memory leaks while coding I fixed them as part of other bugs and then didn't mention it to QA.)

    --
    Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
  16. Re:About time. by LO0G · · Score: 2

    The Black Viper list is pretty good, but the reality is that from Win7 on, the list of OS services that's enabled is the set which won't break something (if you read Black Viper's list they point out what breaks with each service disabled).

    And I've not yet figured out how to convince Google Chrome to stop auto-updating (and I don't want to stop flash from auto-updating, flash and pdf are the two biggest vectors for malware out there). I just wish their auto-updaters respected the user and recognized that they should. Larry Osterman wrote an article about this a couple of years ago: http://blogs.msdn.com/b/larryosterman/archive/2007/08/20/applet-mitigations-updaters.aspx

  17. Re:I have a Windows XP box running... by mikael · · Score: 3, Interesting

    In the old days, there was two ways for a programmer to optimize code; for speed, or for size. You couldn't afford to not design your code, otherwise you would immediately run into memory and performance issues. 16-bit compilers wouldn't allow you to allocate more than 64K at a time. After your application loaded, there would be less than 128K free anyway.

    So you would have to take care to plan ahead where and when you were going to use memory. Is the variable going to be a persistent data block that is allocated when the module is first started (IO cache block), something that is just loaded and then discarded (configuration parameters), or loaded until the user no longer wants it (data file). For every variable, you would have to decide whether it was 8-bit, 16-bit or 32-bit, signed or unsigned and assign it accordingly.

    Floating point was expensive and you would use fixed-point integers whenever possible, at least until the 80486 came out.

    2D FFT on a large image (512x512) was
    implemented by loading in each row of pixels separately from disk, applying the transform, and writing out that row again. This would be repeated again for each column.

    Even if you did get everything planned out, there was still the chance you would run out of memory. Then you would have to go back and prune every variable for size. Do name strings really need 128 bytes? Do attribute flags really need to be 16-bit? Do coordinates need to be 16-bit?

    These days, there are two ways to write code; for shortest project completion time; or for reusable code. Either deadlines are so tight that everyone just throws in code on top of each other, or there is actually time to design and plan ahead.

    No one really bothers with whether structure or class variables are 8-bit, 16-bit or 32-bit, or whether an array should have an upper limit of 32, 128 or 1024, whether result codes should be returned to indicate whether the memory was allocated. Just defining variables as 'int' is good enough, and C++ container classes takes care of the dynamic allocation of arrays.

    --
    Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
  18. RAM is cheap, let's spend it wastefully? by DragonHawk · · Score: 2

    I find it difficult to believe that people are buying new machines with less than 4 gig of ram.

    General objection: Just because something is cheap doesn't mean we should spend it wastefully. I'd still rather that RAM be put to better use than code bloat. I'd rather the PC be faster, or do more things, or do new things, or be cheaper still. Maybe if software wasn't bloated, PCs would be less than $100 these days. Then we could put that money towards better support.

    Specific examples:

    • For a business with 100s or 1000s of PCs, spending an extra $50 on more RAM just because it's cheap means thousands or 10s of thousands of dollars. Code bloat means we have to. We would prefer to save the money.
    • For a smaller business with 100 PCs (like where I work), upgrading PCs isn't something that happens every 3 years. We've got 10s of older desktops with only 2 GB RAM. (And they've been upgraded to their max.)
    • Even top-of-the-line compact and subcompact notebooks are often limited to 2, 3 or 4 GB RAM max.
    • Tablets and handhelds are limited to even less RAM. Microsoft wants Windows running in that space. So do their customers. (I'm no fan of Microsoft, but fact is a lot of stuff is Windows-only. Given that fact, I'd like to be able to use Windows-based software more effectively.)
    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.