<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx</link><description>If you've got a Tablet PC and you're running SP2 (and you should be!) you might have noticed a couple of processes hanging around called TabTip.exe and TCServer.exe. And right after noticing them, you probably wondered why they seemed to be taking up</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#222585</link><pubDate>Mon, 30 Aug 2004 10:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:222585</guid><dc:creator>Ron Jeffries</dc:creator><description>Thanks for the tip on procexp.&lt;br&gt;&lt;br&gt;To build on what you're saying here, is it fair to say that what matters in system performance isn't how much virtual is reserved, but how much actual memory is in use?&lt;br&gt;&lt;br&gt;And I gather that you're saying that grabbing lots of virtual (32 meg here) allows the app to run with less garbage collection overhead, because until the app gets close to that limit, it won't GC? &lt;br&gt;&lt;br&gt;Finally, if there IS memory pressure on the machine, what does .NET do, and when?&lt;br&gt;&lt;br&gt;Thanks!&lt;br&gt;&lt;br&gt;Ron</description></item><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#222597</link><pubDate>Mon, 30 Aug 2004 11:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:222597</guid><dc:creator>Julie Lerman</dc:creator><description>Although these two apps are managed, it's important to remember that the TabletPC SDK is not. It's COM with a wrapper for accessing it from .NET.</description></item><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#222661</link><pubDate>Mon, 30 Aug 2004 15:24:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:222661</guid><dc:creator>AT</dc:creator><description>This is common misunderstanding with memory consumption in Windows.&lt;br&gt;&lt;br&gt;Reserving memory does not consume physical memory that much. Reserved memory simply mark PTE (or VAD) entries as reserved.&lt;br&gt;Real physical memory used only then memory is commited.&lt;br&gt;&lt;br&gt;So in reality your TabTip use about 13Mb of physical memory (and some part of this can be shared with other .NET processes as it's CLR DLLs data)&lt;br&gt;&lt;br&gt;Take a read for example this:&lt;br&gt;&lt;a target="_new" href="http://msdn.microsoft.com/library/en-us/memory/base/reserving_and_committing_memory.asp"&gt;http://msdn.microsoft.com/library/en-us/memory/base/reserving_and_committing_memory.asp&lt;/a&gt;&lt;br&gt;&lt;br&gt;or this&lt;br&gt;&lt;a target="_new" href="http://www.winntmag.com/Articles/Print.cfm?ArticleID=3686"&gt;http://www.winntmag.com/Articles/Print.cfm?ArticleID=3686&lt;/a&gt;&lt;br&gt;&amp;quot;Memory allocation in NT is a two-step process--virtual memory addresses are reserved first, and committed second. The reservation process is simply a way NT tells the Memory Manager to reserve a block of virtual memory pages to satisfy other memory requests by the process. However, Memory Manager makes no changes to a process at the time of a reservation because the reservation does not use actual memory&amp;quot;&lt;br&gt;&lt;br&gt;There is even more tricky memory issue. Memory-mapped files. They appear as commited memory - but in reality they do not use that much physical memory and does not use pagefile at all. &lt;br&gt;Read-only memory mapped files can be purged out of memory easily - but if it's kepped in memory - it's served as cache and increase overall program speed.&lt;br&gt;Read/Write memory mapped files are similar to Read-only - but then they are paged-out - they are stored on disk (not in pagefile).&lt;br&gt;&lt;br&gt;Even more - paging is NOT evil ! For one program - keeping as much as possible data in memory is good. You have already paid for your memory chips - why not use them ? Paging is an evil if you have many programs and you unable to keep all their data in memory. &lt;br&gt;This mean that program instead of keeping all data in memory will access slow harddrive more often. &lt;br&gt;&lt;br&gt;Compare:&lt;br&gt;Program that will comsume at most 128Kb memory buffer to _randomly_ access 45Mb file using disk-IO every time it need to read/write something or program that can consume up to 45Mb mapped memory and will use IO (using page fault handler) only then there is shortage of memory. &lt;br&gt;Which program expected to work faster ? One that consume at most 128Kb or one with 45Mb ?</description></item><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#222669</link><pubDate>Mon, 30 Aug 2004 15:41:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:222669</guid><dc:creator>AT</dc:creator><description>After I was thinking that &amp;quot;CLR Reserved memory&amp;quot; can mean something different from &amp;quot;Windows Memory Manager reserved&amp;quot; I've found this link:&lt;br&gt;&lt;br&gt;&lt;a target="_new" href="http://msdn.microsoft.com/library/en-us/cpgenref/html/gngrfmemoryperformancecounters.asp"&gt;http://msdn.microsoft.com/library/en-us/cpgenref/html/gngrfmemoryperformancecounters.asp&lt;/a&gt;&lt;br&gt;&lt;br&gt;&amp;quot;# Total reserved Bytes: &lt;br&gt;Displays the amount of virtual memory. in bytes, currently reserved by the garbage collector. Reserved memory is the virtual memory space reserved for the application but no disk or main memory pages have been used. &amp;quot;&lt;br&gt;&lt;br&gt;P.S&amp;gt; Google rocks !!</description></item><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#228548</link><pubDate>Sun, 12 Sep 2004 23:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:228548</guid><dc:creator>DrFooMod2</dc:creator><description>OK, so it's managed code, but that still doesn't change the fact that I have a tablet w/ 512MB RAM and it's into virtual memory w/o starting a single app.  What am I supposed to do?  No where did I see that SP2 would required a memory upgrade.  Urgh!</description></item><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#229004</link><pubDate>Mon, 13 Sep 2004 21:03:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:229004</guid><dc:creator>Jonathan Hardwick [MSFT]</dc:creator><description>My Toshiba has just over 200 MB &amp;quot;committed&amp;quot; after boot, and that's with various memory-hungry background apps running, such as a Microsoft-mandated virus checker. What are you running that takes up another 300 MB??</description></item><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#234099</link><pubDate>Sat, 25 Sep 2004 00:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:234099</guid><dc:creator>seattleduck</dc:creator><description>I came across this post looking for help on why tcserver.exe was sucking up 343 MB of memory on my Portege M200, when all I had running was Word, Outlook, and a couple IE windows. I had to restart, knocking TCserver.exe back down to about 23 MB. TabTip.exe is taking up 51 MB right now.&lt;br&gt;&lt;br&gt;So I get TabTip, but 343 BM from tcserver? my machine could barely move. SP2 running and all, any idea what would cause this? It had been on for about 1 week w/ no restart.</description></item><item><title>re: Debugging SP2 on the Tablet PC - managed code, tabtip.exe, and procexp</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#234409</link><pubDate>Sun, 26 Sep 2004 18:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:234409</guid><dc:creator>Jonathan Hardwick [MSFT]</dc:creator><description>Yup, there's a known issue where tcserver.exe can start allocating way too much memory :-( Until there's a fix for this, the cleanest workaround is to log off and back on again - that will give you a new tcserver.exe in a sane state. &lt;br&gt;&lt;br&gt;If you don't want to log off, an alternative is:&lt;br&gt;  1) kill tabtip.exe&lt;br&gt;  2) kill tcserver.exe&lt;br&gt;  3) restart tabtip.exe using the TIP button (this restarts tcserver.exe, which is why you have to do #1 and #2 in that order)</description></item><item><title>Patch for tcserver.exe memory leak on Tablet PC - at last!</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#435925</link><pubDate>Wed, 06 Jul 2005 07:22:21 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:435925</guid><dc:creator>Jonathan Hardwick</dc:creator><description>In August 2004, I mentioned that the Tablet PC uses managed code for parts of its inking support. Specifically,...</description></item><item><title>Patch for tcserver.exe memory leak on Tablet PC - at last!</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#1580232</link><pubDate>Fri, 02 Feb 2007 09:11:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1580232</guid><dc:creator>Jonathan Hardwick</dc:creator><description>&lt;p&gt;In August 2004, I mentioned that the Tablet PC uses managed code for parts of its inking support. Specifically,&lt;/p&gt;
</description></item><item><title>Jonathan Hardwick : Sysinternals blog - required reading for every Windows administrator</title><link>http://blogs.msdn.com/jonathanh/archive/2004/08/29/222543.aspx#2880188</link><pubDate>Fri, 25 May 2007 23:35:52 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2880188</guid><dc:creator>Jonathan Hardwick : Sysinternals blog - required reading for every Windows administrator</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://blogs.msdn.com/jonathanh/archive/2004/10/09/sysinternals-blog-required-reading-for-every-windows-administrator.aspx"&gt;http://blogs.msdn.com/jonathanh/archive/2004/10/09/sysinternals-blog-required-reading-for-every-windows-administrator.aspx&lt;/a&gt;&lt;/p&gt;
</description></item></channel></rss>