pub struct ProcessData {
pub exe_path: RwLock<String>,
pub aspace: Arc<Mutex<AddrSpace>>,
pub ns: AxNamespace,
pub child_exit_wq: WaitQueue,
pub exit_signal: Option<Signo>,
pub signal: Arc<ProcessSignalManager<RawMutex, WaitQueueWrapper>>,
pub futex_table: FutexTable,
/* private fields */
}
Expand description
Extended data for [Process
].
Fields§
§exe_path: RwLock<String>
The executable path
aspace: Arc<Mutex<AddrSpace>>
The virtual memory address space.
ns: AxNamespace
The resource namespace
child_exit_wq: WaitQueue
The child exit wait queue
exit_signal: Option<Signo>
The exit signal of the thread
signal: Arc<ProcessSignalManager<RawMutex, WaitQueueWrapper>>
The process signal manager
futex_table: FutexTable
The futex table.
Implementations§
Source§impl ProcessData
impl ProcessData
Sourcepub fn new(
exe_path: String,
aspace: Arc<Mutex<AddrSpace>>,
signal_actions: Arc<Mutex<SignalActions>>,
exit_signal: Option<Signo>,
) -> Self
pub fn new( exe_path: String, aspace: Arc<Mutex<AddrSpace>>, signal_actions: Arc<Mutex<SignalActions>>, exit_signal: Option<Signo>, ) -> Self
Create a new ProcessData
.
Sourcepub fn get_heap_bottom(&self) -> usize
pub fn get_heap_bottom(&self) -> usize
Get the bottom address of the user heap.
Sourcepub fn set_heap_bottom(&self, bottom: usize)
pub fn set_heap_bottom(&self, bottom: usize)
Set the bottom address of the user heap.
Sourcepub fn get_heap_top(&self) -> usize
pub fn get_heap_top(&self) -> usize
Get the top address of the user heap.
Sourcepub fn set_heap_top(&self, top: usize)
pub fn set_heap_top(&self, top: usize)
Set the top address of the user heap.
Sourcepub fn is_clone_child(&self) -> bool
pub fn is_clone_child(&self) -> bool
Linux manual: A “clone” child is one which delivers no signal, or a signal other than SIGCHLD to its parent upon termination.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for ProcessData
impl !RefUnwindSafe for ProcessData
impl Send for ProcessData
impl Sync for ProcessData
impl Unpin for ProcessData
impl !UnwindSafe for ProcessData
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more