getProcessID :: IO ProcessID |
getProcessID calls getpid to obtain the ProcessID for the current process.
getParentProcessID :: IO ProcessID |
getProcessID calls getppid to obtain the ProcessID for the parent of the current process.
getRealUserID :: IO UserID |
getRealUserID calls getuid to obtain the real UserID associated with the current process.
getEffectiveUserID :: IO UserID |
getEffectiveUserID calls geteuid to obtain the effective UserID associated with the current process.
setUserID :: UserID -> IO () |
setUserID uid calls setuid to set the real, effective, and saved set-user-id associated with the current process to uid.
getLoginName :: IO String |
getLoginName calls getlogin to obtain the login name associated with the current process.
getRealGroupID :: IO GroupID |
getRealGroupID calls getgid to obtain the real GroupID associated with the current process.
getEffectiveGroupID :: IO GroupID |
getEffectiveGroupID calls getegid to obtain the effective GroupID associated with the current process.
setGroupID :: GroupID -> IO () |
setGroupID gid calls setgid to set the real, effective, and saved set-group-id associated with the current process to gid.
getGroups :: IO [GroupID] |
getGroups calls getgroups to obtain the list of supplementary GroupIDs associated with the current process.
getEffectiveUserName :: IO String |
getEffectiveUserName calls cuserid to obtain a name associated with the effective UserID of the process.
getProcessGroupID :: IO ProcessGroupID |
getProcessGroupID calls getpgrp to obtain the ProcessGroupID for the current process.
createProcessGroup :: ProcessID -> IO ProcessGroupID |
createProcessGroup pid calls setpgid to make process pid a new process group leader.
joinProcessGroup :: ProcessGroupID -> IO ProcessGroupID |
joinProcessGroup pgid calls setpgid to set the ProcessGroupID of the current process to pgid.
setProcessGroupID :: ProcessID -> ProcessGroupID -> IO () |
setProcessGroupID pid pgid calls setpgid to set the ProcessGroupID for process pid to pgid.
createSession :: IO ProcessGroupID |
createSession calls setsid to create a new session with the current process as session leader.
systemName :: SystemID -> String nodeName :: SystemID -> String release :: SystemID -> String version :: SystemID -> String machine :: SystemID -> String getSystemID :: IO SystemID |
getSystemID calls uname to obtain information about the current operating system.
> epochTime :: IO EpochTime |
epochTime calls time to obtain the number of seconds that have elapsed since the epoch (Jan 01 00:00:00 GMT 1970).
elapsedTime :: ProcessTimes -> ClockTick userTime :: ProcessTimes -> ClockTick systemTime :: ProcessTimes -> ClockTick childUserTime :: ProcessTimes -> ClockTick childSystemTime :: ProcessTimes -> ClockTick getProcessTimes :: IO ProcessTimes |
getProcessTimes calls times to obtain time-accounting information for the current process and its children.
getControllingTerminalName :: IO FilePath |
getControllingTerminalName calls ctermid to obtain a name associated with the controlling terminal for the process. If a controlling terminal exists, getControllingTerminalName returns the name of the controlling terminal.
The operation may fail with:
There is no controlling terminal, or its name cannot be determined.
Various other causes.
getTerminalName :: Fd -> IO FilePath |
getTerminalName fd calls ttyname to obtain a name associated with the terminal for Fd fd. If fd is associated with a terminal, getTerminalName returns the name of the terminal.
The operation may fail with:
The channel is not associated with a terminal.
The channel is associated with a terminal, but it has no name.
Various other causes.
queryTerminal :: Fd -> IO Bool |
queryTerminal fd calls isatty to determine whether or not Fd fd is associated with a terminal.
getSysVar :: SysVar -> IO Limit |
getSysVar var calls sysconf to obtain the dynamic value of the requested configurable system limit or option. For defined system limits, getSysVar returns the associated value. For defined system options, the result of getSysVar is undefined, but not failure.
The operation may fail with:
The requested system limit or option is undefined.