Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Process Class Reference

A structure to store data about a process. More...

#include <Process.hh>

List of all members.

Public Methods

 Process ()
 The constructor.


Public Attributes

process_ID_t process_ID
 A unique process number.

list< Task * > task_list
 A list of tasks that compose the threads of the process.

context_ID_t context_ID
 The context associated with the process.

virtual_to_canonical_map_tvirtual_to_canonical_map
 A map from virtual to canonical pages.

file_ID_s image_file_ID
 The file ID of the current executable image.

char image_pathname [BUFFER_SIZE]
 The path used to name the current executable image.


Detailed Description

A structure to store data about a process.

See also:
Task
Processes are simply collections of tasks, where a task is really a kernel-level thread. Note that we make data members public for simplicity of access, violating good OO programming guidelines.

Definition at line 45 of file Process.hh.


Constructor & Destructor Documentation

Process::Process   [inline]
 

The constructor.

Initialize a process by zeroing its fields.

Definition at line 54 of file Process.hh.

References context_ID, image_file_ID, file_ID_s::inode_ID, file_ID_s::major, file_ID_s::minor, process_ID, and virtual_to_canonical_map.

00054              {
00055     process_ID = 0;
00056     context_ID = 0;
00057     virtual_to_canonical_map = NULL;
00058     image_file_ID.inode_ID = 0;
00059     image_file_ID.major = 0;
00060     image_file_ID.minor = 0;
00061   }


Member Data Documentation

context_ID_t Process::context_ID
 

The context associated with the process.

Definition at line 73 of file Process.hh.

Referenced by Consumer::Consumer(), Consumer::delete_if_defunct_process(), Consumer::handle_context_assignment(), and Process().

file_ID_s Process::image_file_ID
 

The file ID of the current executable image.

Definition at line 79 of file Process.hh.

Referenced by Consumer::Consumer(), Consumer::handle_context_assignment(), Consumer::handle_exec(), and Process().

char Process::image_pathname[BUFFER_SIZE]
 

The path used to name the current executable image.

Definition at line 82 of file Process.hh.

Referenced by Consumer::Consumer(), Consumer::handle_context_assignment(), and Consumer::handle_exec().

process_ID_t Process::process_ID
 

A unique process number.

Definition at line 66 of file Process.hh.

Referenced by Consumer::Consumer(), Consumer::handle_context_assignment(), Per_Task_Consumer::Per_Task_Consumer(), Process(), and Per_Task_Consumer::PTC_handle_context_assignment().

list<Task*> Process::task_list
 

A list of tasks that compose the threads of the process.

Definition at line 70 of file Process.hh.

Referenced by Consumer::Consumer(), Consumer::delete_if_defunct_process(), Consumer::handle_context_assignment(), and Consumer::unlink_task_and_process().

virtual_to_canonical_map_t* Process::virtual_to_canonical_map
 

A map from virtual to canonical pages.

Definition at line 76 of file Process.hh.

Referenced by Per_Task_Consumer::act_on_reference_record(), Basic_Consumer::act_on_reference_record(), Consumer::Consumer(), Consumer::delete_if_defunct_process(), Consumer::handle_anonymous_mmap_range(), Consumer::handle_buffer_cache_allocation(), Consumer::handle_buffer_cache_deallocation(), Consumer::handle_context_assignment(), Consumer::handle_cow_unmap(), Consumer::handle_duplicate_range(), Consumer::handle_file_cache_allocation(), Consumer::handle_file_cache_deallocation(), Consumer::handle_file_mmap_range(), Consumer::handle_munmap_range(), Consumer::handle_shmat(), Process(), and Consumer::update_with_reference_record().


The documentation for this class was generated from the following file:
Generated on Fri Jan 31 10:33:39 2003 for Laplace-merge by doxygen1.3-rc2