Like phonebus said, its cacheing. Stuff is kept in memory jsut in case you might use it soon again.. but its not committed- so if you run low on RAM its starts dumping this uncommited ram for active processes that need it now. On machines with 2/4gb this is not noticeable because we constantly run new processes and this cahced ram gets dumped quicker. Nothing to worry about.
–
ppumkinJan 4 '12 at 13:34

Where do you see "Private bytes"? On the 2K8 Task Manager ... do you mean "Memory (Privatw Working Set)"?

If so, that is the RAM assigned to the process that realizes its "Private committed" virtual memory. That is shown in TM as "Commit Size". But that is not all of the RAM assigned to the process. You need to enable the "Working Set (Memory)" column. "Memory (Private Working Set)" is a subset of this.

Alas, adding up the "Working Set (Memory)" column (btw, Performance Monitor can do this for you, no actual addition required) will actually give you a larger number than is correct, as it does not account for memory that is shared between processes. "Working Set (Memory)" counts all of the memory the process can touch without incurring a page fault - but many of those pages are resident in other processes too.

If you want a really complete picture of where all of your RAM is being used, check out the SysInternals tool "RamMap".