|
That's a bit of a tough one, actually. 'Available MBytes' is the sum of physical memory pages that are free, those that have been zeroed, and those on the Standby and Modified lists.
This needs a bit of explaining. The difference between the four lists is in how much effort the OS needs to go to in order to give that memory to something that needs it (either a process, or some system component).
For security reasons, when a user-mode process allocates a page, the page is filled with 0s (otherwise the previous contents would be visible to the process, possibly disclosing sensitive information). To ensure that it can quickly satisfy the demand for 0 pages, there's a thread (the 'zero page thread') which simply writes zeros to free pages, moving them from the Free list to the Zero Page list. This thread runs in the context of the System Idle Process, and has a priority below everything else, and is never boosted (thread priorities are normally boosted if a thread hasn't run for a long time because higher priority threads are using all the CPU time). In effect, it only runs when the system is otherwise idle.
The Free list is used for allocations when a zero page is not required. This covers system allocations, and also user-mode allocations for memory-mapped files, where the data will be loaded from the file when the program reads the page.
If the Free list is exhausted the OS then tries the Standby list, and if that is exhausted it can try the Modified list. If it must take a page from the Modified list it first has to write the page back to disk, for the Modified list contains pages which have been changed since last written (or changed at all if never written).
That covers allocation but not how these lists fill up again. If a process or component stops using a page completely (uses VirtualFree), it returns to the Free list. More commonly though, pages are removed through working set trimming. The working set is the set of pages that the process or component has used recently. Each process has its own working set, and there's one system working set. The system working set consists of pages used by the system cache, and by pageable code and data in the kernel and drivers, and by paged pool (small data blocks used by the kernel and drivers). Periodically, and when there's memory pressure (signalled by low numbers of pages on the various lists), a system thread wakes up which trims the working sets - places pages that have not been used in a while on one of the Standby or Modified lists. If the page has been written to, it goes on the Modified list. Otherwise it goes on the Standby list.
Periodically, another thread wakes up, which writes a number of pages on the Modified list back to the disk. It tries to do this so that the pages it writes are close together, to reduce the number of I/O operations required.
You may be wondering what the point of these intermediate lists is. The point is that, if the data is still in memory, and the original working set tries to reference them, the OS just gives the page with the existing data on it back to the previous owner. This is referred to as a soft fault, but it's still counted as a page fault. When the page is moved from the Standby to the Free list, or allocated to another working set, the original working set has to be updated to indicate that the page is no longer available. These operations show up in the "Transition Faults/sec" counter.
Windows counts the Standby and Modified lists as 'Available', but it also counts them as 'System Cache'. I suppose they are cached, in a way, because the OS doesn't need to go back to the disk for the data. On this machine, I often see the sum of Available and System Cache exceed the physical memory fitted: right now Available is 510MB and System Cache is 590MB, and there's only 1GB fitted.
Stability. What an interesting concept. -- Chris Maunder
|
|
|
|
|
I've only got the one "good" machine, so I want to do this right without Windows eating itself. The target machine is a Windows 2000 Server with a lot of software installed and bunches of data I don't want to lose. It also contains many programs and settings that have been lovingly configured over the years that I might never be able to duplicate. All it lacks is a means of backing all this stuff up to another location.
In my hot little hands I have Win2K3 Server - Standard and Premium edition, along with multiple copies on Small Business Server 2003. The dilemma is, first - which should I install, and the second - how should I do so to minimize the damage done? Has anyone done this upgrade yet and survived? Tips would be most welcome!
BTW - I do have space for one more hard drive, IIRC, and installing it on a new drive is a possible option, though reconfiguring it would be quite tedious.
"...putting all your eggs in one basket along with your bowling ball and gym clothes only gets you scrambled eggs and an extra laundry day... " - Jeffry J. Brickley
|
|
|
|
|
|
The main reason is to try it out, and learn about it in depth. The tribe I work for is in the process of upgrading all their servers, and the one I maintain will eventually get updated. I'd like to have some solid experience using it before the change. That's actually the only reason I have Win2K Server here at home. At my last job they were considering upgrading to Win2K, so I built a server and installed it. Of course, after all that expense, they laid me off a few months later.
Fortunately this company is growing, not dying like the last, so there's little risk of a repeat.;)
"...putting all your eggs in one basket along with your bowling ball and gym clothes only gets you scrambled eggs and an extra laundry day... " - Jeffry J. Brickley
|
|
|
|
|
Acronis true image just saved me from an upgrade failue. Make the recovery CD and just backup to an external USB/firewire drive and you can have your system back to the original config in next to no time. Plus it is a great backup application. Of course you can just do a regular backup if you have the free space.
I just upgraded the test server I have at home from 2k to 2003 and I think the 2k installation was from 2001 or so and didn't have any problems. In fact it fixed some problems the system had with wireless networking. The adapter drivers under 2k required a user logged on to access the network.
I can imagine the sinking feeling one would have after ordering my book,
only to find a laughably ridiculous theory with demented logic once the book arrives - Mark McCutcheon
|
|
|
|
|
andy brummer wrote:
In fact it fixed some problems the system had with wireless networking
Hmmm... That's definitely a consideration. I recall now that when I installed Win2K, then installed my wireless drivers, it worked for a while. Then Windows Update insisted that it had new and improved drivers for my stuff. That crashed everything, and made it impossible to download correct drivers from the manufacturer. It took two weeks to locate the original driver CD, and a day of trial and error to get the right set installed to match the firmware version on my rf card. What a misery! I'll look into the Acronis product, but I'm inclining toward upgrading my hard drives while I'm at it now. The prices are falling like stones!!!
"...putting all your eggs in one basket along with your bowling ball and gym clothes only gets you scrambled eggs and an extra laundry day... " - Jeffry J. Brickley
|
|
|
|
|
Roger Wright wrote:
I'll look into the Acronis product, but I'm inclining toward upgrading my hard drives while I'm at it now. The prices are falling like stones!!!
That's why I bought True Image. I upgraded my laptop hard drive. Moving to 7200 RPM made a big difference in performance. NewEgg had a good deal, especially compared to something like ghost, and they have a simple copy image to larger hard drive feature for desktop systems.
Roger Wright wrote:
It took two weeks to locate the original driver CD, and a day of trial and error to get the right set installed to match the firmware version on my rf card. What a misery!
I learned my lesson the hard way in tech support. After spending a couple of multiple hour calls chasing through the registry deleting keys over the phone, I would try to fix for a few minutes and if that didn't work, I'd format and reinstall because that way I could spend my time having a converstation while they reinstalled rather then both of us pulling our hair out in frustration.
My problem was with WiFi, which has much better support in 2003 and XP compared to eariler versions. You should probably google around for compatability problems with your particular model of rf card before you upgrade just to be safe.
I can imagine the sinking feeling one would have after ordering my book,
only to find a laughably ridiculous theory with demented logic once the book arrives - Mark McCutcheon
|
|
|
|
|
andy brummer wrote:
WiFi, which has much better support in 2003 and XP
XP definitely doesn't support it. The entire WiFi thingy in XP has to be disabled to allow the card (or any other Lucent product) to work. Hopefully Win2K3 has improved on it some.
"...putting all your eggs in one basket along with your bowling ball and gym clothes only gets you scrambled eggs and an extra laundry day... " - Jeffry J. Brickley
|
|
|
|
|
Make sure you have a backup.
Roger Wright wrote:
"...putting all your eggs in one basket along with your bowling ball and gym clothes only gets you scrambled eggs and an extra laundry day... " - Jeffry J. Brickley
I can imagine the sinking feeling one would have after ordering my book,
only to find a laughably ridiculous theory with demented logic once the book arrives - Mark McCutcheon
|
|
|
|
|
You should never use windows update to replace a working driver. In addition to the fact that it doesn't always correctly ID the hardware and installs bogus drivers by mistake the certifed drivers it provides are often several years behind the latest release drivers from the manufacturers website. If your driver's already hosed/missing there's no harm in trying it but getting drivers from the manufacturer is (almost?) universally a better choice.
|
|
|
|
|
dan neely wrote:
installs bogus drivers by mistake the certifed drivers it provides are often several years behind the latest release drivers from the manufacturers website
Exactly. I have seen this many times especially with network and graphics cards. I have no clue why they bother to put these drivers in windows update.
John
|
|
|
|
|
My advice would be:
1) Install a new hard drive, and format it
2) Install Norton Ghost, and Ghost each of the old partitions to the new drive
3) Run the upgrade
If it goes horribly wrong, simply use Ghost again, and you can get back to exactly as you were before the upgrade. Then, armed with your new0found experience, you can have another go.
|
|
|
|
|
how to make it search inside all files?
(my try searches just inside .cpp (maybe in something else i haven't too), ignores .php .h .dsp etc.)
(when i search just for file name it finds all)
command line find.exe is ok
win xp professional, sp1 or sp2
|
|
|
|
|
Tibor Blazko wrote:
how to make it search inside all files?
What do you want to ask about??? Could you ask again with more detail question?
A thousand mile of journey, begin with the first step.
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|
did try search for files and folders (from start menu)?
for me it does not work
|
|
|
|
|
Tibor Blazko wrote:
for me it does not work
Does it mean that search dialog box not apprea? Or the search did not supply any result?
A thousand mile of journey, begin with the first step.
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|
dialog opens, finds in some file types:
(my try searches just inside .cpp (maybe in something else i haven't too), ignores .php .h .dsp etc.)
(when i search just for file name it finds all)
|
|
|
|
|
Hi, I have a work group computer at my office and 2 printer. One printer connect to the computer using LPT port and share it to the other people in the organization. The other print has it own IP address build in so it could share to any people without connect to any other machine.
NOW, the problem is came in. There are many people that print to those printer so much and administration section could not control which user print a lot of document. As a summary record on manually, those printer print around 500 pages everyday. From here, what I just want are:
1. How to set the printer priority for the printer? Some people just print around 5 pages, but the printer is busy to print document from the other user around 150 pages.
2. I want to control how many time that user printer perday, per week and permonth and how many pages that they print? When I know the person that is print a lot, it will easy for me to set the priority of printer for each user.
Does these two thing is offer by windows feature, or i need to write my own application to control it??? Any suggestion is really appreciate.
A thousand mile of journey, begin with the first step.
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|
Is there a way of making Windows 98 boot up 'normally' even though it may not have been shut down through it's usual way?
For example, if the power has been removed, so Windows doesn't shut down as per norm, is there a way of not making Windows 98 go through the regular scandisk checks, etc. but boot up as if it had shut down normally.
Any suggestions will be much appreciated.
Thanks
|
|
|
|
|
afroblue wrote:
Is there a way of making Windows 98 boot up 'normally' even though it may not have been shut down through it's usual way?
For example, if the power has been removed, so Windows doesn't shut down as per norm, is there a way of not making Windows 98 go through the regular scandisk checks, etc. but boot up as if it had shut down normally.
Here is the solution: go to your root drive C: and find the file MSDOS.SYS and right click on the file and choose property and clear the Hidden and Read only check box. Then open the file with Notepad then you will find are structure in it own way. Try to set an argument under an Option braket ([Option]. Then add an option AutoScan = 0 . For more detail information, try to read this article.[^]
A thousand mile of journey, begin with the first step.
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|
I am trying to determine which Windows OS is running on a machine, programmatically. I am able to get the Major Version, Minor Version, Revision, which SP, etc, etc, etc. What I am in need of is determining which version of Win2k and Win2K3 are running on machines (i.e. Win2K Pro, Win2k Server, Win2k Advanced Server, etc) . Does anyone out there have any idea on how to capture this info without interrogating a domain controller/AD or WMI (too slow)?
Any help will be greatly appreciated.
Mike
|
|
|
|
|
Call GetVersionEx() and pass in an OSVERSIONINFOEX struct. The OSVERSIONINFOEX docs explain how to tell the OS versions from the various flags that get returned.
--Mike--
Visual C++ MVP
LINKS~! Ericahist | 1ClickPicGrabber | CP SearchBar v2.0.2 | C++ Forum FAQ
"That probably would've sounded more commanding if I wasn't wearing my yummy sushi pajamas."
-- Buffy
|
|
|
|
|
This scripte is demonstrate in VBscript language. I how you could embed it in your application:
Set dtmConvertedDate = CreateObject("WbemScripting.SWbemDateTime")<br />
<br />
strComputer = "."<br />
Set objWMIService = GetObject("winmgmts:" _<br />
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")<br />
<br />
Set colOperatingSystems = objWMIService.ExecQuery _<br />
("Select * from Win32_OperatingSystem")<br />
<br />
For Each objOperatingSystem in colOperatingSystems<br />
<br />
Wscript.Echo "Caption: " & objOperatingSystem.Caption<br />
<br />
Next
For more information try to read this article.[^]
A thousand mile of journey, begin with the first step.
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|
Is there any description or article available that how cab files are executed by the OS.I am just interested in knowing how does OS execute them.I have tried searching them on Net but can't find any relevant description.
Be FaithFull To Your Work.
|
|
|
|
|
Try to read the information from here[^].
A thousand mile of journey, begin with the first step.
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|