On Sun, Oct 3, 2010 at 10:25 AM, Rudolf Mayerhofer <r...@eightyfive.net> wrote: >>A rewrite of my previously sent patches in order to avoid changing >>SYSTEM_CPU_INFORMATION. > >>This patch supersedes my previously sent patches: >>[PATCH1/3] include/winternl: Add Logical Processor Information to >>SYSTEM_CPU_INFORMATION (try 3) >>[PATCH2/3] kernel32/process: Implement GetLogicalProcessorInformation() (try > 2) >>[PATCH3/3] ntdll: Retrieve Logical Processor Information from SysFS (try 4) > > Try 2 removes a FIXME which is not needed. > Try 3 changes a FIXME to a WARN when an unknown cache type is found > > > --- > dlls/kernel32/process.c | 272 > ++++++++++++++++++++++++++++++++++++++++++++++- > 1 files changed, 270 insertions(+), 2 deletions(-) > > > > >
I don't know much about kernel32/ntdll, but I'm pretty sure that you could get this to work through ntdll. NtQuerySystemInformation with SystemProcessorInformation/SystemLogicalProcessorInformation (see http://undocumented.ntinternals.net/UserMode/Undocumented%20Functions/System%20Information/SYSTEM_INFORMATION_CLASS.html) should help. http://native-nt-toolkit.googlecode.com/svn/trunk/ndk/extypes.h (read, don't copy) seems to have a pretty exhaustive set of definitions, but even that's not complete. Some tests for the NT version would be useful. Mike.