Bug 1444

Summary: procpop display more process information
Product: frysk Reporter: Andrew Cagney <cagney>
Component: generalAssignee: Mike Cvet <mcvet>
Status: RESOLVED FIXED    
Severity: enhancement CC: pmuldoon, swagiaal
Priority: P1    
Version: unspecified   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:
Bug Depends on: 1593, 2118, 2120    
Bug Blocks: 1632    

Description Andrew Cagney 2005-10-09 14:10:58 UTC
frysk.proc.Proc.stat has been updated to contain much process information, the
GUI might as well make some of the more interesting fields available (will need
to add accessor methods mind).
Comment 1 Phil Muldoon 2006-09-14 23:06:42 UTC
Mike has already completed this. Assigning to him to close, with Changelog entries.
Comment 2 Mike Cvet 2006-09-15 17:50:39 UTC
References: #3019, #3160

2006-08-09  Mike Cvet  <mcvet@redhat.com>

	* ProcMenu.java (ProcMenu): Edited to list options for editing columns
	and refreshing. No longer statically referenced.
	* PIDMenu.java: Added.
	* PIDColumnDialog.java: Added - edit columsn for RSS, VSZ, and TIME.
	* SessionProcTreeView.java (SessionProcTreeView): Now initializes a 
	PIDColumnDialog and ProcMenu, among other new variables. Added a LifeCycle
	Listener onto the PIDColumnDialog.
	(mountProcModel): Initializes TreeViewColumn array with old and new 
	columns. Added relevant Listeners.
	(refreshTree): Added, calls the SessionProcDataModel to update its values 
	for memory and CPU time.
	(getColNames): Added.
	(load): Loads preferences for the PIDColumnDialog.
	(save): Saves preferences for the PIDColumnDialog.
	(setCols): Refactored from refreshTree().
	(columnClickedEvent): Added sorting for columns.
	* SessionProcDataModel.java (getSession): Added.
	(addProc): Added support for virtual memory, resident set size value, and 
	CPU time.
	initialization.
	(getVszDC): Added.
	(getRssDC): Added.
	(refreshRead): Added.
	(statRead): Added.
	(getTreeStore): Added.

Log message:
        2006-08-18  Mike Cvet  <mcvet@redhat.com>
        
        * PIDColumnDialog.java (PIDColumnDialog): Added rows for PPID,
        State, and NICE fields.
        * SessionProcDataModel.java (statRead): Added reads from Stat's
        PPID, State, and NICE fields.
        * SessionProcTreeView.java (mountProcModel): Added columns for the
        above fields.
        * actions/RunExternal.java (setArgument): Logs to the error log
        when there is a problem with the executable.

frysk-sys/frysk/sys/proc:
2006-09-06  mcvet  <mcvet@redhat.com>

	* Stat.java (tid): Refactored from the int pid. More correct variable name.
	(refreshThread): Added - supports reading proc stat information for threads
	belonging to a process.
	* cni/Stat.cxx (refreshThread): Added. Nearly identical to refresh() but
	handles individual threads belonging to a process.
	(refresh): Updated to use new variable tid.
	* cni/slurp.cxx (slurp_thread): Added. Reads from /proc/PID/task/TID/stat.
	* cni/slurp.hxx (slurp_thread): Added header for above function.

frysk-gui/frysk/gui:
2006-09-06  mcvet  <mcvet@redhat.com>

	* glade/procpop.glade: Added the tidColumnDialog dialog window.
	* glade/processpicker.glade: Changed layout of header so that it 
	is displayed properly. 

frysk-gui/frysk/gui/monitor:
2006-09-06  mcvet  <mcvet@redhat.com>

	* TIDColumnDialog.java: Added. Almost identical to the
	PIDColumnDialog, but needed because of the extra glade reference.
	* ThreadMenu.java (ThreadMenu): Removed static reference, 
	turned into dynamic menu like ProcMenu. Added entries to deal
	with thread view customization like the process viewer.
	(getMenu): Removed.
	* StatusWidget.java (StatusWidget): Commented out some 
	unneeded mouse listeners.
	* SessionProcTreeView.java (SessionProcTreeView): Addressing #3160.
	Added new variables to handle extended thread information. Uses 
	the new dynamic ThreadMenu. Added new listeners for procPid and
	threadTidColumnDialogs.
	(mountThreadModel): Added listeners for all the new thread columns.
	(threadViewInit): Initialized and added information for all the new
	thread columns.
	(refreshProcTree): Refactored from refreshTree().
	(refreshThreadTree): Added.
	(setProcCols): Refactored from setCols().
	(setThreadCols): Added.
	(getProcColNames): Refactored from getColNames().
	(getThreadColNames): Added.
	(getSelectedProc): Uses update getTidDC() method from the
	SessionProcDataModel.
	(save): Saves for the thread dialog as well.
	(load): Loads for the thread dialog as well.
	* SessionProcDataModel.java (tidDC): Refactored from pidDC.
	(statRead): Changed parameters to now accept a Task, since 
	frysk.sys.Stat now handles reading thread information from /proc.
	Added a check to handle new input.
	(refreshProcRead): Refactored from refreshRead().
	(refreshThreadRead): Added.
	(addTask): Now reads from Stat.
	(getTidDC): Refactored from getPidDC().
	* ProcMenu.java (.menuItemEvent): Updated reference to the
	refactored refreshProcTree().
	* PIDColumnDialog.java (save): Updated reference to the 
	refactored getProcColNames().
	(load): Ditto.