On Fri, May 10, 2002 at 12:31:37AM +0100, Chris January wrote:
>This is first of two patches adding a number of extra files to the /proc
>virtual file system.
>The main aim of this patch was to add compatibility with the procps tools,
>which has been achieved. Specifically, both top and ps are working.
>A lot of the process-specific information and some global information is
>only available on Windows NT. This isn't because I'm mean, but simply
>because I know no way of retrieving this information under Windows 95/98/me.
>In fact the operating system doesn't bother recording most of the
>information required.
>Please test extensively. I've only tested it under Windows 2000 and Windows
>98. In particular I need to know whether the patch works with NT 4.

Committed with a couple of very minor ChangeLog tweaks and one change to
remove an is_winnt test.  We prefer to minimize that kind of check as
much as possibility in favor of either adding a capability or just allowing
the error routine from an NT-specific routine to control execution flow.

Thanks.

cgf

>2002-05-10  Christopher January <[EMAIL PROTECTED]>
>
>       * autoload.cc: Add dynamic load statements for 'ZwQueryInformationProcess'
>       and 'ZwQueryVirtualMemory'.
>       * fhandler.h: Change type of bufalloc and filesize members of
>       fhandler_virtual from int to size_t.
>       Change type of position member from __off32_t to __off64_t.
>       Add new fileid member to fhandler_virtual class.
>       Make seekdir take an __off64_t argument.
>       Make lseek take an __off64_t argument.
>       Add fill_filebuf method to fhandler_virtual.
>       Add fill_filebuf method to fhandler_proc.
>       Add fill_filebuf method to fhandler_registry.
>       Add fill_filebuf method to fhandler_process.
>       Add saved_pid and saved_p members to fhandler_process.
>       * fhandler_proc.cc: Add 'loadavg', 'meminfo', and 'stat' files to
>       proc_listing array.
>       Add corresponding entries in proc_fhandlers array.
>       (fhandler_proc::open): Use fill_filebuf to flesh out the file contents.
>       (fhandler_proc::fill_filebuf): New method.
>       (fhandler_proc::format_proc_meminfo): Ditto.
>       (fhandler_proc::format_proc_stat): Ditto.
>       (fhandler_proc::format_proc_uptime): Ditto.
>       * fhandler_process.cc: Add 'stat' and 'statm' files to process_listing
>       array.
>       (fhandler_process::fstat): Find the _pinfo structure for the process
>       named in the filename. Return ENOENT if the process is no longer around.
>       Set the gid and uid fields of the stat structure.
>       (fhandler_process::open): Store pid and pointer to _pinfo structure in
>       saved_pid and saved_p respectively. Use fill_filebuf to flesh out file
>       contents.
>       (fhandler_proc::fill_filebuf): New method.
>       (format_process_stat): New function.
>       (format_process_status): Ditto.
>       (format_process_statm): Ditto.
>       (get_process_state): Ditto.
>       (get_mem_values): Ditto.
>       * fhandler_registry.cc (fhandler_registry::seekdir): Change argument type
>       from __off32_t to __off64_t.
>       (fhandler_registry::fill_filebuf): New method.  
>       * fhandler_virtual.cc (fhandler_virtual::seekdir): Change argument type
>       from __off32_t to __off64_t. 
>       (fhandler_virtual::lseek): Ditto.
>       (fhandler_virtual::fill_filebuf): New method.
>       (fhandler_virtual::fhandler_virtual): Initialise fileid to -1.
>       * wincap.cc: Set flag has_process_io_counters  appropriately.
>       * wincap.h: Add flag has_process_io_counters.
>       

Reply via email to