[1.7] Cannot read /proc/stat

Corinna Vinschen corinna-cygwin@cygwin.com
Tue Jun 9 09:49:00 GMT 2009


On Jun  9 10:31, Corinna Vinschen wrote:
> On Jun  8 12:51, Yaakov S wrote:
> > On 08/06/2009 12:14, Corinna Vinschen wrote:
> >> Confirmed.  The reason is that a datastructure on the NT level has
> >> another size on 64 bit systems, and the WOW64 layer doesn't translate
> >> the structure into the 32 bit format.  The function is unsupported, so
> >> that makes sort of sense.  I'll create another solution using the
> >> official function for to fetch that information.  Unfortunaltey it
> >> doesn't exist on NT4, so I have to sp3cial case that(*)
> >
> > Thanks.
> 
> This is fixed in -49.  Note, however, that not all information in
> /proc/stat is available on 64 bit machines.  Some of the information
> printed in /proc/stat, namely the swap_in/swap_out pages, require access
> to the SystemPerformanceInformation category in a call to
> NtQuerySystemInformation.  The structure returned by this call is also
> different on 64 bit systems, even when running under WOW64.  The
> SYSTEM_PERFORMANCE_INFORMATION structure was already undocumented on 32
> bit systems, and on 64 bit systems it's even more undocumented, if
> that's possible :)  Unfortunately, to date there's no official
> replacement function which provides the page read/write count.  So, on
> 64 bit systems, this information is set to 0 in /proc/stat.

I just examined the structure content by 32 bit and 64 bit systems and
it looks like the structure is actually the same, just with 16 extra
trailing bytes.  /proc/stat is now fetching the info with the buffer
size big enough for 64 bit systems, so the information is available
again.  Hopefully.  I did a close examination of both struct contents
and I'm pretty sure this is ok.  I'm just not 100% sure...


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list