|
standard/accept(2) -- accept a connection on a socket
|
The argument s is a socket that has been created with socket(2), bound to an address with bind(2), and is listening for connections after a listen(2). Accept extracts the first connection on the queue of pending connections, creates a new socket with the same properties of s and allocates a new file descriptor for the socket. If no pending connections are present on the queue, and the socket is not marked as non-blocking, accept blocks the caller until a connection is present. If the socket is m... |
standard/access(2) -- determine accessibility of a file
|
path points to a path name naming a file. access checks the named file for accessibility according to the bit pattern contained in amode, using the real user ID in place of the effective user ID and the real group ID in place of the effective group ID. The bit pattern contained in amode is constructed by an OR of the following constants (defined in <unistd.h>): R_OK test for read permission W_OK test for write permission X_OK t... |
|
standard/acct(2) -- enable or disable process accounting
|
acct enables or disables the system process accounting routine. If the routine is enabled, an accounting record will be written in an accounting file for each process that terminates. The termination of a process can be caused by one of two things: an exit call or a signal [see exit(2) and signal(2)]. The calling process must have the capability CAP_ACCT_MGT (see capabilities(4) ) in its effective set to en... |
standard/adjtime(2) -- correct the time to allow synchronization of the system clock
|
adjtime adjusts the system's notion of the current time, as returned by gettimeofday(3C), advancing or retarding it by the amount of time specified in the struct timeval pointed to by delta. The adjustment is effected by speeding up (if that amount of time is positive) or slowing down (if that amount of time is negative) the system's clock by some small percentage, generally a fraction of one percen... |
standard/alarm(2) -- set a process alarm clock
|
alarm instructs the alarm clock of the calling process to send the signal SIGALRM to the calling process after the number of real time seconds specified by sec have elapsed [see signal(2)]. Alarm requests are not stacked; successive calls reset the alarm clock of the calling process. If sec is 0, any previously made alarm request is canceled. fork sets the alarm clock of a new process to 0 [see fork(2)]. A process crea... |
standard/arsctl(2) -- modify the behavior of array sessions
|
The arsctl function queries and/or modifies some aspect of the behavior of array sessions on the currently running system. Most of the array session control operations take some sort of argument. A pointer to the argument is passed as bufptr, and the length of the argument is specified with buflen. The particular operation to be performed is identified by the function code func, which is defined in . Available array session control operations include:... |
standard/arsop(2) -- perform an operation on an array session
|
The arsop function performs an operation on the array session identified by the handle ash. If ash is less than 0, then the operation is performed on the array session that is associated with the calling process. Most array session operations take some sort of argument. A pointer to the argument is passed as bufptr, and the length of the argument is specified with buflen. The particular operation to be performed is identified by the function code func, which is defined in . Availab... |
standard/attr_get(2) -- get the value of a user attribute of a filesystem object
|
The attr group of system calls implement the ability for a user to attach name/value pairs to objects within the filesystem. They could be used to store meta-information about the file. For example "character-set=kanji" could tell a document browser to use the Kanji character set when displaying that document and "thumbnail=..." could provide a reduced resolution overview of a high resolution graphic image. The names can be up to MAXNAMELEN bytes in length, terminated by the first 0 byte. Th... |
standard/attr_list(2) -- list the names of the user attributes of a filesystem object
|
The attr group of system calls implement the ability for a user to attach name/value pairs to objects within the filesystem. They could be used to store meta-information about the file. For example "character-set=kanji" could tell a document browser to use the Kanji character set when displaying that document and "thumbnail=..." could provide a reduced resolution overview of a high resolution graphic image. The names can be up to MAXNAMELEN bytes in length, terminated by the first 0 byte. Th... |
standard/attr_multi(2) -- manipulate multiple user attributes on a filesystem object at once
|
The attr group of system calls implement the ability for a user to attach name/value pairs to objects within the filesystem. They could be used to store meta-information about the file. For example "character-set=kanji" could tell a document browser to use the Kanji character set when displaying that document and "thumbnail=..." could provide a reduced resolution overview of a high resolution graphic image. The names can be up to MAXNAMELEN bytes in length, terminated by the first 0 byte. Th... |
standard/attr_remove(2) -- remove a user attribute of a filesystem object
|
The attr group of system calls implement the ability for a user to attach name/value pairs to objects within the filesystem. They could be used to store meta-information about the file. For example "character-set=kanji" could tell a document browser to use the Kanji character set when displaying that document and "thumbnail=..." could provide a reduced resolution overview of a high resolution graphic image. The names can be up to MAXNAMELEN bytes in length, terminated by the first 0 byte. Th... |
standard/attr_set(2) -- set the value of a user attribute of a filesystem object
|
The attr group of system calls implement the ability for a user to attach name/value pairs to objects within the filesystem. They could be used to store meta-information about the file. For example "character-set=kanji" could tell a document browser to use the Kanji character set when displaying that document and "thumbnail=..." could provide a reduced resolution overview of a high resolution graphic image. The names can be up to MAXNAMELEN bytes in length, terminated by the first 0 byte. Th... |
standard/bind(2) -- bind a name to a socket
|
Bind assigns a name to an unnamed socket. When a socket is created with socket(2) it exists in a name space (address family) but has no name assigned. Bind requests that name be assigned to the socket. The rules used in name binding vary between communication domains. Consult the protocol manual entries in section 7 for detailed information. |
standard/blockproc(2) -- routines to block/unblock processes
|
These routines provide a complete set of blocking/unblocking capabilities for processes. Blocking is implemented with a counting semaphore in the kernel. Each call to blockproc decrements the count. When the count becomes negative, the process is suspended. When unblockproc is called, the count is incremented. If the count becomes non-negative (>= 0), the process is restarted. This provides both a simple, race free synchronization ability between two processes and a much more powerful capability... |
standard/brk(2) -- change data segment space allocation
|
brk and sbrk are used to change dynamically the amount of space allocated for the calling process's data segment [see exec(2)]. The change is made by resetting the process's break value and allocating the appropriate amount of space. The break value is the address of the first location beyond the end of the data segment. The amount of allocated space increases as the break value increases. Newly allocated space is set to zero. If, however, the same memory space... |
standard/cachectl(2) -- mark pages cacheable or uncacheable
|
The cachectl system call allows a process to make ranges of its address space cacheable or uncacheable. Initially, a process's entire address space is cacheable. The op parameter may be one of: CACHEABLE Make the indicated pages cacheable UNCACHEABLE Make the indicated pages uncacheable The CACHEABLE and UNCACHEABLE op's affect the address range indicated by addr and nbytes. addr must be page aligned and nbytes must be a multiple of the page size. Changing a page from UNCACHEABLE state to CACH... |
standard/cacheflush(2) -- flush contents of instruction and/or data cache
|
cacheflush and _flush_cache are different names for the same function. They flush the contents of the indicated cache(s) for user addresses in the range addr to (addr+nbytes-1). The cache parameter may be one of: ICACHE Flush only the instruction cache DCACHE Flush only the data cache BCACHE Flush both the instruction and the data cache |
standard/chdir(2) -- change working directory
|
chdir and fchdir cause a directory pointed to by path or fildes to become the current working directory, the starting point for path searches for path names not beginning with /. path points to the path name of a directory. The fildes argument to fchdir is an open file descriptor of a directory. In order for a directory to become the current directory, a process must have execute (search) access to the directory. chdir will fai... |
standard/chmod(2) -- change mode of file
|
chmod and fchmod set the access permission portion of the mode of the file whose name is given by path or referenced by the descriptor fildes to the bit pattern contained in mode. If path or fildes are symbolic links, the access permissions of the target of the symbolic links are set. Access permission bits are interpreted as follows: S_ISUID 04000 Set user ID on execution. S_ISGID 020#0 Set group ID on execution if # is 7, ... |
standard/chown(2) -- change owner and group of a file
|
Path points to a path name naming a file, and fd refers to the file descriptor associated with a file. The owner ID and group ID of the named file are set to the numeric values contained in owner and group respectively. Note that lchown differs from chown in that it does not follow symbolic links. Only processes with effective user ID equal to the file owner or superuser may change the ownership of a file. However, if the variable restricted_chown is enabled [see intro(2) and lboot(1M)] then onl... |
standard/chroot(2) -- change root directory
|
path points to a path name naming a directory. chroot causes the named directory to become the root directory, the starting point for path searches for path names beginning with /. The user's working directory is unaffected by the chroot system call. The calling process must have the super-user privilege to change the root directory. The .. entry in the root directory is interpreted to mean the root directory itself. Thus, .. cannot be used to ... |
standard/clock_settime(2) -- get/set date and time (POSIX)
|
The clock_settime() function sets the specific clock, clock_id, to the value specified by tp. Time values that are between two consecutive nonnegative integer multiples of the resolution of the specified clock are truncated down to the smaller multiple of the resolution. The clock_gettime() function returns the current value tp for the specified clock, clock_id. Depending on the clocks resolution, it may be possi... |
standard/close(2) -- close a file descriptor
|
fildes is a file descriptor obtained from a creat, open, dup, fcntl, pipe, or iocntl system call. close closes the file descriptor indicated by fildes. All outstanding record locks owned by the process (on the file indicated by fildes) are removed. If the link count of the file is zero, when all file descriptors associated with the file have been closed, the space occupied by the file is freed and the... |
standard/comp(2) -- data stream compression and uncompression
|
The comp library and associated system calls allows applications to use the compression and decompression algorithms from compress(1) and uncompress(1) directly, without having to invoke a separate executable. The compression code in this library has been optimized, and if used in combination with large buffer file reading can result in improved compression times of up to 30% over the standard compress code. You must link with the comp library: cc -o prog prog.c -lcomp... |
standard/connect(2) -- initiate a connection on a socket
|
The parameter s is a socket. If it is of type SOCK_DGRAM, then this call specifies the peer with which the socket is to be associated; this address is that to which datagrams are to be sent, and the only address from which datagrams are to be received. If the socket is of type SOCK_STREAM, then this call attempts to make a connection to another socket. The other socket is specified by name, which is an address in the communications space of the socket. Each communications space interprets the na... |
standard/creat(2) -- create a new file or rewrite an existing one
|
creat creates a new ordinary file or prepares to rewrite an existing file named by the path name pointed to by path. If the file exists, the length is truncated to 0 and the mode and owner are unchanged. If the file does not exist the file's owner ID is set to the effective user ID of the process. The group ID of the file is set to the effective group ID of the process or to the group ID of the directory in which the file is being created. This is determined as follows: If the un... |
standard/dev_to_devname(2) -- determine the device name for the device
|
dev_to_devname is useful to determine the canonical hardware graph path name given the device identifier. |
standard/dev_to_drivername(2) -- determine the driver name for the device
|
dev_to_drivername is useful to determine the name of the driver handling the device. |
standard/dmi(2) -- DMAPI internal system call
|
dmi is a system interface specific to Silicon Graphics systems. It is used to implement the interface defined in the X/Open document: Systems Management: Data Storage Management (XDSM) API dated February 1997. This interface is available made available on Silicon Graphics systems by means of the libdm library. The value of the opcode parameter determines the meaning of the remaining arguments. These are all interfaces that are used to implement various libdm functions. The only filesystem that s... |
standard/dup(2) -- duplicate an open file descriptor
|
fildes is a file descriptor obtained from a creat, open, dup, fcntl, pipe, or ioctl system call. dup returns a new file descriptor having the following in common with the original: Same open file (or pipe). Same file pointer (i.e., both file descriptors share one file pointer). Same access mode (read, write or read/write). The new file descriptor is set to remain open across exec system calls [see ... |
standard/exec(2) -- execute a file
|
exec in all its forms overlays a new process image on an old process. The new process image is constructed from an ordinary, executable file. This file is either an executable object file, or a file of data for an interpreter. There can be no return from a successful exec because the calling process image is overlaid by the new process image. An interpreter file begins with a line of the form #! pathname [arg] where pathname is the path of the interpreter, and arg i... |
standard/exit(2) -- terminate process
|
The C library routine exit, which is discussed at the end of this section, invokes the system routine _exit upon completion of its own cleanup chores. _exit terminates the calling process with the following consequences: All of the file descriptors, directory streams and message catalogue descriptors open in the calling process are closed. If the process is sharing file descriptors via an sproc, other members of the share group do NOT have their... |
standard/fcntl(2) -- file and descriptor control
|
fcntl provides for control over open descriptors. fildes is an open descriptor obtained from a creat, open, dup, fcntl, pipe, socket, or socketpair system call. The commands available are: F_DUPFD Return a new descriptor as follows: Lowest numbered available descriptor greater than or equal to the third argument, arg, taken as an object of type int. Refers to the same object as the original descriptor. Same file pointer as the original file (i.e., both file descriptors share one file pointer). S... |
standard/fdes_to_devname(2) -- determine the device name for the device
|
fdes_to_devname is useful to determine the canonical hardware graph path name given the a device file descriptor. Note that this file descriptor can correspond to any of the different alias names for the device. |
standard/fdes_to_drivername(2) -- determine the driver name for the device
|
fdes_to_drivername is useful to determine the name of the driver handling the device corresponding to the special file descriptor. Note that this file descriptor can correspond to any of the different alias names for the device. |
standard/filename_to_devname(2) -- determine the device name for the device file
|
filename_to_devname is useful to determine the canonical hardware graph path name given the filename for the device. Note that there can multiple alias names for a device vertex in the hardware graph and the canonical name is unique. |
standard/filename_to_drivername(2) -- determine the device name for the device file
|
filename_to_drivername is useful to determine the name of the driver handling the device with the given special filename. Note that there can multiple alias names for a device vertex in the hardware graph. |
standard/fork(2) -- create a new process
|
fork causes creation of a new process. The new process (child process) is an exact copy of the calling process (parent process). This means the child process inherits the following attributes from the parent process: real user ID, real group ID, effective user ID, effective group ID environment close-on-exec flag [see exec(2)] signal handling settings (i.e., SIG_DFL, SIG_IGN, SIG_HOLD, function address) supplementar... |
standard/fpathconf(2) -- get configurable pathname variables
|
The functions fpathconf and pathconf return the current value of a configurable limit or option associated with a file or directory. The path argument points to the pathname of a file or directory; fildes is an open file descriptor; and name is the symbolic constant (defined in <sys/unistd.h>) representing the configurable system limit or option to be returned. The values returned by pathc... |
standard/fsync(2) -- synchronize a file's in-memory state with that on the physical medium
|
fsync moves all modified data and attributes of fildes to a storage device. When fsync returns, all in-memory modified copies of buffers associated with fildes have been written to the physical medium. fsync is different from sync, which schedules disk I/O for all files but returns before the I/O completes. fsync should be used by programs that require that a file be in a known state. For example, a program that contains a s... |
standard/getash(2) -- get array session handle
|
The getash function returns the array session handle (ASH) for the array session that contains the calling process. The handle for an array session is normally assigned by the system when the array session is first created. This can be overridden using the privileged setash(2) function. For details, see the man pages for setash(2). |
standard/getcontext(2) -- get and set current user context
|
These functions, along with those defined in makecontext(3C), are useful for implementing user level context switching between multiple threads of control within a process. getcontext initializes the structure pointed to by ucp to the current user context of the calling process. The user context is defined by ucontext(5) and includes the contents of the calling process's machine registers, signal mask and exe... |
standard/getdents(2) -- read directory entries and put in a file system independent format
|
fildes is a file descriptor obtained from a creat, open, dup, fcntl, pipe, or ioctl system call. getdents attempts to read nbyte bytes from the directory associated with fildes and to format them as file system independent directory entries in the buffer pointed to by buf. Since the file system independent directory entries are of variable length, in most cases the actual number of bytes returne... |
standard/getdomainname(2) -- get/set name of current NIS domain
|
Getdomainname returns the name of the NIS domain for the current host, as previously set by setdomainname. The parameter namelen specifies the size of the name array. The returned name is null-terminated unless insufficient space is provided. Setdomainname sets the NIS domain of the host to be name, which has length namelen. This call is restricted to the superuser and is normally used only during system initialization. The purpose of NIS domains is to enable two distinct networks that may have ... |
standard/getdtablesize(2) -- get file descriptor table size
|
getdtablesize returns the maximum number of file descriptors that the calling process can open. The related getdtablehi(3C) function returns the value of the largest open file descriptor, plus one. The description of {OPEN_MAX} in intro(2) provides more information about how file descriptors are allocated and the various limits imposed on their use. |
standard/getgroups(2) -- get supplementary group access list IDs
|
getgroups retrieves the current group access list of the user process and stores it in the array gidset. The parameter setlen indicates the number of entries that may be placed in gidset. The return value is the actual number of groups placed in gidset, and this will never be greater than NGROUPS_UMAX for the POSIX version, and NGROUPS for the BSD version, as defined in . As a special case, if the setlen parameter is zero, getgroups returns the number of supplemental group IDs assoc... |
standard/gethostid(2) -- get/set unique identifier of current host
|
Sethostid establishes a 32-bit identifier for the current host that is intended to be unique among all UNIX systems in existence. This is normally a DARPA Internet address for the local machine. This call is allowed only to the superuser and is normally performed at boot time. Gethostid returns the 32-bit identifier for the current host. |
standard/gethostname(2) -- get/set name of current host
|
Gethostname returns the standard hostname for the current processor, as previously set by sethostname. The parameter namelen specifies the size of the name array. The returned name is null-terminated and truncated if insufficient space is provided. Sethostname sets the name of the host machine to be name, which has length namelen. This call is restricted to the superuser and is normally used only when the system is bootstrapped.... |
standard/getitimer(2) -- get/set value of interval timer
|
The system provides each process with three interval timers, defined in . The getitimer call returns the current value for the timer specified in which, while the setitimer call sets the value of a timer (optionally returning the previous value of the timer). A timer value is defined by the itimerval structure: struct itimerval { struct timeval it_interval; /* timer interval */ struct timeval it_value; /* current value */ }; If it_value is non-zero, it indicates the time to the next ... |
standard/getmountid(2) -- get filesystem mount identifier
|
getmountid returns an identifier for the filesystem containing the file named by path. Read, write, or execute permission for the named file is not required, but all directories listed in the path name leading to the file must be searchable. buf is a pointer to a mountid structure that is filled by the system call. The identifier returned is guaranteed to be unique for the mounted filesystem within the running system, except for autofs's lofs f... |
standard/getmsg(2) -- get next message off a stream
|
getmsg retrieves the contents of a message [see intro(2)] located at the stream head read queue from a STREAMS file, and places the contents into user specified buffer(s). The message must contain either a data part, a control part, or both. The data and control parts of the message are placed into separate buffers, as described below. The semantics of each part is defined by the STREAMS module that generated the message. The function getpmsg... |
standard/getpagesize(2) -- get system page size
|
Getpagesize returns the number of bytes in a page. Page granularity is the granularity of many of the memory management calls. The page size is a system page size and may not be the same as the underlying hardware page size. In systems with multiple page sizes, the base page size is returned. The base page size is the smallest page size used by a system. |
standard/getpeername(2) -- get name of connected peer
|
Getpeername returns the name of the peer connected to socket s. The namelen parameter should be initialized to indicate the amount of space pointed to by name. On return it contains the actual size of the name returned (in bytes). The name is truncated if the buffer provided is too small. |
standard/getpid(2) -- get process, process group, and parent process IDs
|
getpid returns the process ID of the calling process. getpgrp returns the process group ID of the calling process. The BSDgetpgrp form is provided for Berkeley compatibility. If the pid_t is 0, it is the same as the getpgrp form, otherwise it returns the process group for the argument, if the process exists. getppid returns the parent process ID of the calling process. getp<... |
standard/getprid(2) -- get project ID
|
The getprid function returns the project ID for the array session containing the calling process. The initial project ID of an array session is typically assigned at login time, and can be changed with the privileged function setprid(2). The newproj(1) command can be used to start a new array session with a different project ID. For more details on project IDs, see projects(5). |
standard/getpriority(2) -- get/set program scheduling priority
|
The scheduling priority of the process, process group, or user, as indicated by which and who is obtained with the getpriority call and set with the setpriority call. Which is one of PRIO_PROCESS, PRIO_PGRP, or PRIO_USER, and who is interpreted relative to which (a process identifier for PRIO_PROCESS, process group identifier for PRIO_PGRP, and a user ID for PRIO_USER). A zero value of who denotes the current process, process group, or user. Prio is a value in the range -20 to 20. The default pr... |
standard/getrlimit(2) -- control maximum system resource consumption
|
Limits on the consumption of a variety of system resources by a process and each process it creates may be obtained with getrlimit and set with setrlimit. getrlimit64 and setrlimit64 allow 32-bit programs to set 64-bit limits. This is particularly useful for shells and other 32-bit programs which fork 64-bit binaries. Unless otherwise specified, getrlimi... |
standard/getsid(2) -- get session ID
|
The function getsid returns the session ID of the process whose process ID is equal to pid. If pid is equal to (pid_t)0, getsid returns the session ID of the calling process. |
standard/getsockname(2) -- get socket name
|
Getsockname returns the current name for the specified socket. The namelen parameter should be initialized to indicate the amount of space pointed to by name. On return it contains the actual size of the name returned (in bytes). |
standard/getsockopt(2) -- get and set options on sockets
|
Getsockopt and setsockopt manipulate options associated with a socket. Options may exist at multiple protocol levels; they are always present at the uppermost ``socket'' level. When manipulating socket options the level at which the option resides and the name of the option must be specified. To manipulate options at the ``socket'' level, level is specified as SOL_SOCKET. To manipulate options at any other level the protocol number of the appropriate protocol controlling the option is suppli... |
standard/getspinfo(2) -- get service provider information
|
The getspinfo function stores the service provider information for the array session containing the current process into the acct_spi struct pointed to by spi. The service provider information for an array session is normally inherited from the array session of the process that created it, or it can be changed with the privileged setspinfo(2) function. For more details on service provider information, see the man pages for setspinfo(2). getspinfo is provided primarily for compatibility with prev... |
standard/getuid(2) -- get real user, effective user, real group, and effective group IDs
|
getuid returns the real user ID of the calling process. geteuid returns the effective user ID of the calling process. getgid returns the real group ID of the calling process. getegid returns the effective group ID of the calling process. |
standard/intro(2) -- introduction to system calls and error numbers
|
This section describes all of the system calls. Most of these calls have one or more error returns. An error condition is indicated by an otherwise impossible returned value. This is almost always -1 or the NULL pointer; the individual descriptions specify the details. An error number is also made available in the external variable errno. errno is not cleared on successful calls, so it should be tested only after an error has been indicated. Many of these errors are caused by certain system or u... |
standard/ioctl(2) -- control device
|
ioctl performs a variety of control functions on devices and STREAMS. For non-STREAMS files, the functions performed by this call are devicespecific control functions. request and an optional third argument with varying type are passed to the file designated by fildes and are interpreted by the device driver. For STREAMS files, specific functions are performed by the ioctl call as described in streamio(7). Argument types and other request-spe... |
standard/kill(2) -- send a signal to a process or a group of processes
|
kill sends a signal to a process or a group of processes. The process or group of processes to which the signal is to be sent is specified by pid. The signal that is to be sent is specified by sig and is either one from the list given in signal(2), or 0. If sig is 0 (the null signal), error checking is performed but no signal is actually sent. This can be used to check the validity of pid. The real or effective user ID of the sending process must match the real, saved, or effective user ID of th... |
standard/link(2) -- link to a file
|
path1 points to a path name naming an existing file. path2 points to a path name naming the new directory entry to be created. link creates a new link (directory entry) for the existing file and increments its link count by one. Upon successful completion, link marks for update the st_ctime field of the file. Also, the st_ctime and st_mtime fields of the directory that contains the new entry are marked for upd... |
standard/listen(2) -- listen for connections on a socket
|
To accept connections, a socket is first created with socket(2), a willingness to accept incoming connections and a queue limit for incoming connections are specified with listen(2), and then each new connection is accepted with accept(2). The listen call applies only to sockets of type SOCK_STREAM. The backlog parameter defines the maximum length the queue of pending connections. If a connection request arrives with the queue full the client may receive an error with an indication of ECONNREFUS... |
standard/lseek(2) -- move read/write file pointer
|
fildes is a file descriptor returned from a creat, open, dup, fcntl, pipe, or ioctl system call. lseek and lseek64 set the file pointer associated with fildes as follows: If whence is SEEK_SET, the pointer is set to offset bytes. If whence is SEEK_CUR, the pointer is set to its current location plus offset. If whence is SEEK_E<... |
standard/madvise(2) -- give advice about handling memory
|
madvise provides the system advice about the process' expected use of its address space from addr to addr + len. The following types of behavior are currently recognized by the system: MADV_DONTNEED informs the system that the address range from addr to addr + len will likely not be referenced in the near future. The memory to which the indicated addresses are mapped will be the first to be reclaimed when memory is needed by the system. madvise will fail if: [ENOMEM] Addresses in the range (add... |
standard/memcntl(2) -- memory management control
|
NOTE: this function is not currently implemented in IRIX. Any calls to this function will return ENOSYS. The function memcntl allows the calling process to apply a variety of control operations over the address space identified by the mappings established for the address range [addr, addr + len). addr must be a multiple of the pagesize as returned by sysconf(3C). The scope of the control operations can be further defined with additional selection criteri... |
standard/mkdir(2) -- make a directory
|
mkdir creates a new directory with the name path. The mode of the new directory is initialized from mode (see chmod(2) for values of mode]. The protection part of mode is modified by the process's mode mask (see umask(2)). The S_ISGID, S_ISUID, and S_ISVTX bits are silently deleted from mode. The directory's owner ID is set to the process's effective user ID. The directory's group ID is set to the process's effective group ID or the grou... |
standard/mkfifo(2) -- make a FIFO special file
|
The mkfifo routine creates a new FIFO special file named by the pathname pointed to by path. IRIX implements it via the following mknod call: mknod(path, (mode | S_IFIFO), 0) where S_IFIFO is defined in . Refer to mknod(2) for details. |
standard/mknod(2) -- make a directory, or a special or ordinary file
|
mknod creates a new file named by the path name pointed to by path. The mode of the new file (including file type bits) is initialized from mode. The value of the file type bits which are permitted with this system call are those listed below. The other types listed in sys/stat.h are made with other system calls, or are not supported by this operating system. S_IFIFO fifo special S_IFCHR character special S_IFBLK block special S_IFREG ordinary file All other mode bits are interpreted as describe... |
standard/mmap(2) -- map pages of memory
|
The functions mmap and mmap64 establish a mapping between a process's address space and a virtual memory object. The format of the call is as follows: pa = mmap(addr, len, prot, flags, fd, off); mmap establishes a mapping between the process's address space at an address pa for len bytes to the memory object represented by the file descriptor fd at offset off for len bytes. The value of pa is an implementation-depend... |
standard/mount(2) -- mount a file system
|
mount requests that a removable file system contained on the block special file identified by spec be mounted on the directory identified by dir. spec and dir are pointers to path names. fstyp is the file system type number. The sysfs(2) system call can be used to determine the file system type number. If both the MS_DATA and MS_FSS flag bits of mflag are off, the file system type defaults to the root file system type. Only if either... |
standard/mpin(2) -- lock pages in memory
|
mpin reads into memory all pages over the range (addr, addr + len), and locks the pages into memory. Associated with each locked page is a counter which is incremented each time the page is locked. The superuser can lock as many pages as it wishes, other users are limited to a configurable per process maximum. munpin decrements the lock counter associated with the pages over the range (addr, addr + len). Pages whose counters are zero are available to be swapped out ... |
standard/mprotect(2) -- set protection of memory mapping
|
The function mprotect changes the access protections on the mappings specified by the range [addr, addr + len) to be that specified by prot. Legitimate values for prot are the same as those permitted for mmap and are defined in <sys/mman.h> as: PROT_READ /* page can be read */ PROT_WRITE /* page ca... |
standard/msgctl(2) -- message control operations
|
msgctl provides a variety of message control operations as specified by cmd. The following cmds are available: IPC_STAT Place the current value of each member of the data structure associated with msqid into the structure pointed to by buf. The contents of this structure are defined in intro(2). IPC_SET Set the value of the following members of the data structure associated with msqid to the corresponding value found in the ... |
standard/msgget(2) -- get message queue
|
msgget returns the message queue identifier associated with key. A message queue identifier and associated message queue and data structure [see intro(2)] are created for key if one of the following are true: key is IPC_PRIVATE. key does not already have a message queue identifier associated with it, and (msgflg&IPC_CREAT) is true. On creation, the data structure associated with the new message queue identi... |
standard/msgop(2) -- message operations
|
msgsnd sends a message to the queue associated with the message queue identifier specified by msqid. msgp points to a user defined buffer that must contain first a field of type long integer that will specify the type of the message, and then a data portion that will hold the text of the message. The following is an example of members that might be in a user defined buffer. long mtype; /* message type */... |
standard/msync(2) -- synchronize memory with physical storage
|
The function msync writes all modified copies of pages over the range [addr, addr + len) to their backing storage locations. msync optionally invalidates any copies so that further references to the pages will be obtained by the system from their backing storage locations. The backing storage for a modified MAP_SHARED mapping is the file the page is mapped to; the backing storage for a modified MAP_PRIVATE map... |
standard/munmap(2) -- unmap pages of memory
|
The function munmap removes the mappings for pages in the range [addr, addr + len). Further references to these pages will result in the delivery of a SIGSEGV signal to the process. If the region being detached via munmap(2) belongs to a shared address space, and I/O is being done to this range by a process belonging to the same shared group, munmap(2) would fail returning EBUSY. The specified virtual addre... |
standard/nanosleep(2) -- high resolution sleep
|
The nanosleep system call causes the current thread to suspend until either the time interval specified by the rqtp argument has elapsed or a signal is delivered to the calling thread and its action is to invoke a signal-handling function or terminate the process. The suspension time will be rounded to a multiple of the underlying system-provided sleep resolution. For processes that have requested a timeout of less then the base clock tick of 10 milliseconds, this resolution is defined by the va... |
standard/newarraysess(2) -- start a new array session
|
The newarraysess function creates a new array session and moves the current process from its original array session to the new one. The parents, children and siblings of the current process are not affected by this and remain in their original array sessions. A handle for the new array session will be generated by the system. Normally the new handle is guaranteed to be unique on the current system only, though some systems may be able to assign global array session handles that are unique across... |
standard/nfssvc(2) -- NFS daemons
|
Nfssvc starts an NFS daemon listening on socket sock. The socket must be AF_INET, and SOCK_DGRAM (protocol UDP/IP). The system call will return only if the process is killed. Async_daemon implements the NFS daemon that handles asynchronous I/O for an NFS client. The system call never returns. |
standard/nice(2) -- change priority of a time-sharing process
|
nice allows a process in the time-sharing scheduling class to change its priority. The sched_setscheduler and schedctl system calls are more general interfaces to scheduler functions. nice adds the value of incr to the nice value of the calling process. A process's nice value is a non-negative number for which a more positive value results in lower CPU priority. A maximum nice value of 39 and a mi... |
standard/open(2) -- open for reading or writing
|
path points to a path name naming a file. open opens a file descriptor for the named file and sets the file status flags according to the value of oflag. oflag values are constructed by OR-ing Flags from the following list (only one of the first three flags below may be used): O_RDONLY Open for reading only. O_WRONLY Open for writing only. O_RDWR Open for reading and writing. O_NDELAY or O_NON |
standard/pause(2) -- suspend process until signal
|
pause suspends the calling process until it receives a signal. The signal must be one that is not currently set to be ignored by the calling process. If the signal causes termination of the calling process, pause does not return. If the signal is caught by the calling process and control is returned from the signal-catching function [see signal(2)], the calling process resumes execution from the point of suspension; with a return value of -1 from <... |
standard/pipe(2) -- create an interprocess channel
|
pipe creates an I/O mechanism called a pipe and returns two file descriptors, fildes[0] and fildes[1]. IRIX has two distinct versions of pipe: the SVR4 version and the SVR3.2 version. The SVR3.2 version is faster, and is generally preferred unless STREAMS semantics are required for a specific reason. The SVR4 version of pipe returns two STREAMS-based file descriptors which are both opened for reading and writing. The O_NDELAY and ... |
standard/plock(2) -- lock into memory or unlock process, text, or data
|
plock allows the calling process to lock into memory or unlock its text segment (text lock), its data segment (data lock), or both its text and data segments (process lock). Locked segments are immune to all routine swapping. The calling process must have the super-user privilege to use this call. plock does not lock down memory which has been mapped into the address space of a process via the mmap(2) system call (e.g., IRIX Arenas). These mmaped memory ... |
standard/poll(2) -- input/output multiplexing
|
The IRIX version of poll provides users with a mechanism for multiplexing input and output over a set of any type of file descriptors, rather than the traditional limitation to only descriptors of STREAMS devices [see select(2)]. Poll identifies those descriptors on which a user can send or receive messages, or on which certain events have occurred. Fds specifies the file descriptors to be examined and the events of interest for each file descriptor. It is a pointer to an array with one element ... |
standard/prctl(2) -- operations on a process
|
prctl provides information about processes and the ability to control certain of their attributes. The return type ptrdiff_t is used so that prctl can return an integral value that is large enough to return a pointer/address. option specifies one of the following actions: PR_MAXPROCS returns the system imposed limit on the number of processes per user. PR_MAXPPROCS returns the maximum number of processors the calling process can utilize. If the caller is restricted ... |
standard/profil(2) -- execution time profile
|
profil provides CPU-use statistics by profiling the amount of CPU time expended by a program. profil generates the statistics by creating an execution histogram for a current process. The histogram is defined for a specific region of program code to be profiled, and the identified region is logically broken up into a set of equal size subdivisions, each of which corresponds to a count in the histogram. With each clock tick, the current subdivision is identified and its corresponding histogram co... |
standard/ptrace(2) -- process trace
|
ptrace allows a parent process to control the execution of a child process. Its primary use is for the implementation of breakpoint debugging [see dbx(1)]. The child process behaves normally until it encounters a signal [see signal(5)], at which time it enters a stopped state and its parent is notified via the wait(2) system call. When the child is in the stopped state, its parent can examine and modify its ``core image'' using pt<... |
standard/putmsg(2) -- send a message on a stream
|
putmsg creates a message from user-specified buffer(s) and sends the message to a STREAMS file. The message may contain either a data part, a control part, or both. The data and control parts to be sent are distinguished by placement in separate buffers, as described below. The semantics of each part is defined by the STREAMS module that receives the message. The function putpmsg does the same thing as putmsg, but provides the user the abi... |
standard/quotactl(2) -- manipulate disk quotas
|
The quotactl(2) call manipulates disk quotas for local EFS and XFS filesystems. cmd indicates a command to be applied to the user ID uid. special is a pointer to a null-terminated string containing the pathname of the block special device for the filesystem being manipulated. The block special device must be mounted as an EFS or XFS filesystem (see mount(2)). addr is the address of an optional, command specific data structure which is copied in or out of the system. The interpretation of addr is... |
standard/read(2) -- read from file
|
read attempts to read nbyte bytes from the file associated with fildes into the buffer pointed to by buf. If nbyte is zero, read returns zero and has no other results. fildes is a file descriptor obtained from a creat, open, dup, fcntl, pipe, or ioctl system call. On devices capable of seeking, the read starts at a position in the file given by the file pointer associated with fildes... |
standard/readlink(2) -- read the value of a symbolic link
|
readlink places the contents of the symbolic link referred to by path in the buffer buf, which has size bufsiz. The contents of the link are not null-terminated when returned. readlink fails and the buffer remains unchanged if: EACCES Search permission is denied for a component of the path prefix of path. EACCES Read permission is denied on the file named by path. EFAULT path or buf extends outs... |
standard/recv(2) -- receive a message from a socket
|
Recv, recvfrom, and recvmsg are used to receive messages from a socket. The recv call is normally used only on a connected socket (see connect(2)), while recvfrom and recvmsg may be used to receive data on a socket whether it is in a connected state or not. If from is non-zero, the source address of the message is filled in. Fromlen is a value-result parameter, initialized to the size of the buffer associated with from, and modified on return to indicate the actual size of the address stored the... |
standard/rename(2) -- change the name of a file
|
rename renames a file. old is a pointer to the pathname of the file or directory to be renamed. new is a pointer to the new pathname of the file or directory. Both old and new must be of the same type (either both files, or both directories) and must reside on the same file system. If new already exists, it is removed. Thus, if new names an existing directory, the directory must not have any entries other than, possibly, ``.'' and ``..''. When renaming directories,... |
standard/rexec(2) -- execute a file on a remote cell
|
rexec in all its forms overlays a new process image on an old process and commences execution on a new cell. This system call was reserved to be supported in a future version of IRIX. In IRIX release 6.5, the only valid value for cell is 0 and then each form of rexec is equivalent to the corresponding form of exec. Therefore use of rexec is deprecated as this system call may not be present in future IRIX releases.... |
standard/rmdir(2) -- remove a directory
|
rmdir removes the directory named by the path name pointed to by path. The directory must not have any entries other than ``.'' and ``..''. If the directory's link count becomes zero and no process has the directory open, the space occupied by the directory is freed and the directory is no longer accessible. If one or more processes have the directory open when the last link is removed, the ``.'' and ``..'' entries, if present, are removed before r... |
standard/satctl(2) -- control the collection of audit data
|
saton switches on collection of audit records of the specified event type. satoff switches off collection of audit records of the specified event type. satstate reports whether the audit subsystem is currently collecting or discarding records of the event type specified. To modify or query the audit state for every event type, call saton, satoff, or satstate repeatedly, once for each valid event type.... |
standard/satgetid(2) -- get or set audit identity
|
satgetid returns the audit identity of the calling process. satsetid sets the audit identify of the calling process. The calling process must have appropriate privilege to successfully call satgetid or satsetid. If _POSIX_CAP is in effect, appropriate privilege includes CAP_AUDIT_CONTROL capability. |
standard/satmp_done(2) -- de-register token-mapping daemon with kernel
|
satmp_done de-registers the token-mapping daemon. The calling process must have appropriate privilege. If _POSIX_CAP is in effect, appropriate privilege includes CAP_NETWORK_MGT capability. |
standard/satmp_get_attr_reply(2) -- send SATMP_GET_ATTR_REPLY message to the kernel
|
satmp_get_attr_reply sends a SATMP_GET_ATTR_REPLY message to the kernel. fd is a file descriptor that references the token-mapping daemon's socket. buf is the address of a buffer containing the message. size is the size of the message in bytes. |
standard/satmp_get_lrtok_reply(2) -- send SATMP_GET_LTROK_REPLY message to the kernel
|
satmp_get_lrtok_reply sends a SATMP_GET_LRTOK_REPLY message to the kernel. fd is a file descriptor that references the token-mapping daemon's socket. buf is the address of a buffer containing the message. size is the size of the message in bytes. |
standard/satmp_init(2) -- register token-mapping daemon with kernel
|
satmp_init initializes the kernel interface to the token-mapping daemon. fd is a file descriptor that references a socket, and generation is the initial generation of the token-mapping database. The calling process must have appropriate privilege. If _POSIX_CAP is in effect, appropriate privilege includes CAP_NETWORK_MGT capability. |
standard/satmp_init_reply(2) -- send SATMP_INIT_REPLY message to the kernel
|
satmp_init_reply sends a SATMP_INIT_REPLY message to the kernel. fd is a file descriptor that references the token-mapping daemon's socket. addr is the address of the hostid sending the message. flag indicates success or failure. It's valid values are IRQ_FLAG_OK and IRQ_FLAG_FAILED . generation is the generation of the remote token-mapping database. |
standard/satread(2) -- read a block of audit record data
|
satread attempts to read nbytes bytes from the security audit trail record queue into the buffer pointed to by buffer. satread destroys the data that has been read. A subsequent satread call will read new and different data. |
standard/satwrite(2) -- write a block of audit record data
|
satwrite writes nbytes bytes to the security audit trail record queue from the buffer pointed to by buffer. satvwrite is a more convenient libc interface for generating audit records, which are generally text strings. Format is a printf-like format string, followed by a variable number of arguments. See printf(3S) for more information on the possible formatting characters. Event must be equal to one of the SAT record type constants for administrative events, as defined in /usr/include/sys/sat.h.... |
standard/schedctl(2) -- scheduler control call
|
This system call is used to alter scheduling parameters of either individual processes or of the system as a whole. The following commands are supported: |
standard/sched_getparam(2) -- get the scheduling parameters of a process
|
The sched_getparam system call is used to get the scheduling parameters for the process specified by pid. If pid is set to zero, then the scheduling parameters of the calling process will be obtained. A process may obtain the scheduling parameters of itself and any process sharing the same real user ID [see getuid(2)]. To obtain the scheduling parameters of an unrelated process, the calling process must have the CAP_SCHED_MGT capability [s... |
standard/sched_getscheduler(2) -- get the scheduling policy of a process
|
The sched_getscheduler system call is used to get the scheduling policy of the process specified by pid. If pid is set to zero, then the scheduling policy of the caller is returned. A process may obtain the scheduling policy of itself and any process sharing the same real user ID [see getuid(2)]. To obtain the scheduling policy of an unrelated process, the calling process must have the CAP_SCHED_MGT capability [see capability].... |
standard/sched_get_priority_max(2) -- get scheduling policy priority range
|
sched_get_priority_max and sched_get_priority_min return the maximum and minimum priority values, respectively, for the specified scheduling policy: |
standard/sched_rr_get_interval(2) -- get round robin scheduling interval
|
sched_rr_get_interval stores the round robin scheduling interval at address interval for the process named by pid. If pid is set to zero, then sched_rr_get_interval obtains the interval for the calling process. sched_rr_get_interval will fail if one or more of the following are true: [EFAULT] The address specified by interval is outside... |
standard/sched_setparam(2) -- set the scheduling parameters of a process
|
The sched_setparam system call is used to set the scheduling policy parameters for the process specified by pid. If pid is set to zero, then the scheduling parameters of the calling process will be affected. The scheduling parameters of pid are specified by the parameter structure at address param. The priority of the target process may be modified by setting the desired priority value in the sched_priority field of the param structure. Unlike IRIX 6.2 and ... |
standard/sched_setscheduler(2) -- set the scheduling policy of a process
|
The sched_setscheduler system call is used to set the scheduling policy and related parameters for the process specified by pid. If pid is set to zero, then the scheduling policy and parameters of the calling process will be affected. The policy parameter is used to select one of the following scheduling policies: |
standard/sched_yield(2) -- yield the processor
|
The sched_yield system call causes the calling process to relinquish the processor to a runnable process of higher or equal priority. In the event a higher or equal priority process is not available, the calling process reacquires control of the processor. |
standard/select(2) -- synchronous I/O multiplexing
|
Select examines the I/O descriptor sets whose addresses are passed in readfds, writefds, and exceptfds to see if some of their descriptors are ready for reading, are ready for writing, or have an exceptional condition pending, respectively. The first nfds file descriptors are checked in each set; i.e. the file descriptors from 0 through nfds - 1 will be examined (see getdtablehi(3) for largest open descriptor). On return, select replaces the given descriptor sets... |
standard/semctl(2) -- semaphore control operations
|
semctl provides a variety of semaphore control operations as specified by cmd. The following cmds are executed with respect to the semaphore specified by semid and semnum: GETVAL Return the value of semval [see intro(2)]. {READ} SETVAL Set the value of semval to arg.val. {ALTER}. When this command is successfully executed, the semadj value corresponding to the speci... |
standard/semget(2) -- get set of semaphores
|
semget returns the semaphore identifier associated with key. A semaphore identifier and associated data structure and set containing nsems semaphores [see intro(2)] are created for key if one of the following is true: key is equal to IPC_PRIVATE. key does not already have a semaphore identifier associated with it, and (semflg&IPC_CREAT) is true. On creation, the data structure associated with the new semaph... |
standard/semop(2) -- semaphore operations
|
semop is used to perform atomically an array of semaphore operations on the set of semaphores associated with the semaphore identifier specified by semid. sops is a pointer to the array of semaphore-operation structures. nsops is the number of such structures in the array. The contents of each structure includes the following members: short sem_num; /* semaphore number */ shor<... |
standard/send(2) -- send a message from a socket
|
Send, sendto, and sendmsg are used to transmit a message to another socket. Send may be used only when the socket is in a connected state, while sendto and sendmsg may be used when the socket is unconnected. The address of the target is given by to with tolen specifying its size. The length of the message is given by len. If the message is too long to pass atomically through the underlying protocol, then the error EMSGSIZE is returned, and the message is not transmitted. Usually no indication of... |
standard/setash(2) -- set array session handle
|
The setash function changes the handle for the array session containing the current process to the value specified by ash. The current process must have superuser privileges to invoke setash. Ordinarily, a handle that is unique within the current system is assigned to an array session when the array session is created using the newarraysess(2) function. The setash function can be used to override this default handle, perhaps for assigning a handle that is unique across an entire array or for syn... |
standard/setgroups(2) -- set group access list
|
setgroups initializes the group access list of the current user process according to the array gidset. The parameter ngroups indicates the number of entries in the array. The sysconf(_SC_NGROUPS_MAX) system call may be used to determine at runtime the maximum allowable value for ngroups in the particular kernel configuration (it is an lbootable value (ngroups_max) which is declared in /var/sysgen/master.d/kernel). If using the BSD version, ngroups may never be greater than NGROUPS (as defined in... |
standard/setpgid(2) -- set process group ID
|
setpgid sets the process group ID of the process with ID pid to pgid. If pgid is equal to pid, the process becomes a process group leader. If pgid is not equal to pid, the process becomes a member of an existing process group. If pid is equal to 0, the process ID of the calling process is used. If pgid is equal to 0, the process specified by pid becomes a process group leader. setpgid fails and returns an error if one or more of the following are true: <... |
standard/setpgrp(2) -- set process group ID (System V and 4.3BSD)
|
The System V version of setpgrp behaves identically to setsid (2). The BSD version of setpgrp sets the process group of the specified process pid to the specified pgrp. If pid is zero, then the call applies to the current process. If pgrp is zero and pid refers to the calling process, setpgrp() behaves identically to setsid (2). If the invoker is not the super-user, then the affected process must have the same effective user-id as the invoker or be a member of the same session as the calling pro... |
standard/setprid(2) -- set project ID
|
The setprid function changes the project ID for the array session containing the current process to the value specified by prid. Ordinarily, the project ID for a new array session is inherited from the array session of the process that created it. However, when the array session is created as part of a new login (or moral equivalent, such as a batch job or rsh(1)), it may be appropriate to assign a new project ID, such as a default project ID associated with the user that is logging in. The setp... |
standard/setregid(2) -- set real and effective group ID
|
The real and effective group ID's of the current process are set to the arguments. Unprivileged users may change the real group ID to the effective group ID and vice-versa; only the super-user may make other changes. Supplying a value of -1 for either the real or effective group ID forces the system to substitute the current ID in place of the -1 parameter. |
standard/setreuid(2) -- set real and effective user ID's
|
The real and effective user ID's of the current process are set according to the arguments. If ruid or euid is -1, the current uid is filled in by the system. Unprivileged users may change the real user ID to the effective user ID and vice-versa; only the super-user may make other changes. |
standard/setsid(2) -- set session ID
|
If the calling process is not already a process group leader, setsid sets the process group ID and session ID of the calling process to the process ID of the calling process, and releases the process's controlling terminal. setsid will fail and return an error if the following is true: EPERM The calling process is already a process group leader, or there are processes other than the calling process whose process group ID is equal to the process... |
standard/setspinfo(2) -- set service provider information
|
The setspinfo function sets the service provider information for the array session containing the current process to the contents of the acct_spi struct pointed to by spi. Typically, this would only be done when the array session is first created. The invoker must have superuser privileges. Service provider information is intended for use by software such as batch queueing systems that need to maintain fairly static information about an array session. It is included in session accounting records... |
standard/setuid(2) -- set user and group IDs
|
The setuid system call sets the real user ID, effective user ID, and saved user ID of the calling process. The setgid system call sets the real group ID, effective group ID, and saved group ID of the calling process. At login time, the real user ID, effective user ID, and saved user ID of the login process are set to the login ID of the user responsible for the creation of the process. The same is true for the real, effective, and saved group IDs; they are set... |
standard/sgigsc(2) -- SGI graphics system call
|
This system call is used for underlying operating system support of graphics and window management functions. It is not intended for direct use by user programs. PPPPaaaaggggeeee 1111 |
ftn/sgikopt(2) -- retrieve kernel option strings
|
The IRIX kernel saves most of the IRIS PROM Monitor environment variables (option strings) for later use by the kernel as well as user programs. sgikopt allows the user to retrieve the values of these variables. The option argument specifies the name of the variable; the value of the option is returned in the buffer addressed by buf. The size in bytes of this buffer is given by buflen. The string returned by sgikopt is guaranteed to be null-terminated, even if the length of the option value stri... |
standard/sgikopt(2) -- retrieve kernel option strings
|
The IRIX kernel saves most of the IRIS PROM Monitor environment variables (option strings) for later use by the kernel as well as user programs. sgikopt allows the user to retrieve the values of these variables. The option argument specifies the name of the variable; the value of the option is returned in the buffer addressed by buf. The size in bytes of this buffer is given by buflen. The string returned by sgikopt is guaranteed to be null-terminated, even if the length of the option value stri... |
standard/sginap(2) -- timed sleep and processor yield function
|
The sginap system call provides two functions. With an argument of 0, it yields the processor to any higher or equal priority threads immediately, thus potentially allowing another thread to run. Note that because normally the user has no direct control over the exact priority of a given thread, this does not guarantee that another thread will run. With an argument which is non-zero, sginap will suspend the thread for between ticks-1 and ticks clock ticks. That is, it will suspend for at least t... |
standard/sgi_eag_mount(2) -- mount a filesystem with attributes
|
sgi_eag_mount is identical to mount(2), except that it accepts an additional argument attrs, which contains a data block specifying default attributes for the filesystem. sgi_eag_mount requires that the calling process have appropriate privilege. If _POSIX_CAP is in effect, the appropriate capability is CAP_MOUNT_MGT. |
standard/sgi_revoke(2) -- revoke access to a file
|
The sgi_revoke system call invalidates all currently open file descriptors referencing the file named by fname. sgi_revoke requires that the calling process have appropriate privilege. If _POSIX_CAP is in effect, the appropriate capability is CAP_DEVICE_MGT. |
standard/shmctl(2) -- shared memory control operations
|
shmctl provides a variety of shared memory control operations as specified by cmd. The following cmds are available: IPC_STAT Place the current value of each member of the data structure associated with shmid into the structure pointed to by buf. The contents of this structure are defined in intro(2). {READ} IPC_SET Set the value of the following members of the data structure associated with shmid to the corresponding value ... |
standard/shmget(2) -- get shared memory segment identifier
|
shmget returns the shared memory identifier associated with key. A shared memory identifier and associated data structure and shared memory segment of at least size bytes [see intro(2)] are created for key if one of the following are true: key is equal to IPC_PRIVATE. key does not already have a shared memory identifier associated with it, and (shmflg&IPC_CREAT) is true. Upon creation, the contents of the s... |
standard/shmop(2) -- shared memory operations
|
shmat attaches the shared memory segment associated with the shared memory identifier specified by shmid to the data segment of the calling process. The segment is attached at the address specified by one of the following criteria: If shmaddr is equal to (void *) 0, the segment is attached at the first available address as selected by the system. If (shmflg&SHM_SGI_ANYADDR) is true, the segment is attached at the fi... |
standard/shm_open(2) -- establishes a connection between a shared memory object and a file descriptor
|
path is a pointer to the character string which names a shared memory object. shm_open opens a file descriptor for the shared memory object and sets the memory access flag according to the value of oflag. The oflag must be set to one of the following values: O_RDONLY Open the memory object for reading only. O_RDWR Open the memory object for reading and writing. With one of the above flags set, any of the following flags may also be specifi... |
standard/shm_unlink(2) -- deletes a shared memory object
|
path is a pointer to the character string, naming a shared memory object. shm_unlink deletes the named shared memory object from the file namespace. The contents of the shared memory will persist after the call to shm_unlink, if one or more processes still reference the memory object. Once the last reference has been dropped, the space occupied by the shared memory object is freed and the object ceases to exist [see close(2) an... |
standard/shutdown(2) -- shut down part of a full-duplex connection
|
The shutdown call causes all or part of a full-duplex connection on the socket associated with s to be shut down. If how is 0, then further receives will be disallowed. If how is 1, then further sends will be disallowed. If how is 2, then further sends and receives will be disallowed. |
standard/sigaction(2) -- software signal facilities (POSIX)
|
sigaction specifies and reports on the way individual signals are to be handled in the calling process. sig specifies the signal and can be assigned any of the signals specified in signal(5). If act is non-zero, it points to a structure specifying the new action to be taken when delivering sig. If oact is non-zero, the previous handling information for the signal is returned to the user. In this way (a NULL act and a non-NULL oact) the user can enquire as to the current handling of a signal with... |
standard/sigaltstack(2) -- set or get signal alternate stack context
|
sigaltstack allows users to define an alternate stack area on which signals are to be processed. If ss is non-zero, it specifies a pointer to, and the size of a stack area on which to deliver signals, and tells the system if the process is currently executing on that stack. When a signal's action indicates its handler should execute on the alternate signal stack [specified with a sigaction(2) call], the system checks to see if the proc... |
standard/siginterrupt(2) -- allow signals to interrupt functions (X/Open XPG4)
|
The siginterrupt() function is used to change the restart behaviour when a function is interrupted by the specified signal. The function siginterrupt(sig, flag) has an effect as if implemented as: siginterrupt(int sig, int flag) { int ret; struct sigaction act; void (sigaction)(sig, NULL, act); if (flag) act.sa_flags = ~SA_RESTART; else act.sa_flags = SA_RESTART; ret = sigaction(sig, act, NULL); return ret; }; The siginterrupt() function supports programs written to historical system interfaces.... |
standard/signal(2) -- software signal facilities (System V)
|
signal allows the calling process to choose one of three ways in which it is possible to handle the receipt of a specific signal. sig specifies the signal and func specifies the choice. For a list of valid signals and a general description of the signal mechanism please see signal(5). [EINVAL] signal will fail if sig is an illegal signal number, including SIGKILL and SIGSTOP. [EINVAL] signal will fail if an illegal operation... |
standard/sigpending(2) -- return set of signals pending for thread (POSIX)
|
sigpending returns the set of signals pending for the calling thread (i.e., blocked from delivery) in the space pointed to by maskptr. Routines described in sigsetops(3) are used to examine the returned signal set. sigpending will fail if: [EFAULT] maskptr points to memory that is not a part of process's valid address space. |
standard/sigprocmask(2) -- alter and return previous state of the set of blocked signals (POSIX)
|
sigprocmask manipulates the set of signals which are blocked from delivery to the thread. A non-NULL set specifies the set of signals to use in modifying the currently-active set, and the incoming signals may be added to, deleted from, or completely replace the active set, as specified by the operation parameter, which may have the following values (as defined in ): SIG_NOP Do not alter current signal mask SIG_BLOCK Add specified signals to those in current mask SIG_UNBLOCK Remove the ... |
standard/sigreturn(2) -- returns from a signal handler.
|
Can only be called from within the kernel. The sigreturn system call is used by the kernel to return from signal handlers. It restores the context of the process which received the signal. The general behaviour of this system call is very similar to longjmp(2). |
standard/sigsend(2) -- send a signal to a process or a group of processes
|
sigsend sends a signal to the process or group of processes specified by id and idtype. The signal to be sent is specified by sig and is either zero or one of the values listed in signal(5). If sig is zero (the null signal), error checking is performed but no signal is actually sent. This value can be used to check the validity of id and idtype. In order to send the signal to the target process (pid), the sending process must have permission to do so, subje... |
standard/sigset(2) -- signal management (System V)
|
These functions provide signal management for application processes. sigset specifies the system signal action to be taken upon receipt of signal sig. disp specifies the signal's disposition, which may be SIG_DFL, SIG_IGN, or the address of a signal handler. If disp is the address of a signal handler, the system adds sig to the calling process's signal mask before executing the signal handler; when the signal handler returns, the system res... |
standard/sigstack(2) -- set and/or get signal stack context
|
Sigstack allows users to define an alternate stack on which signals are to be processed. If ss is non-zero, it specifies a signal stack on which to deliver signals and tells the system if the process is currently executing on that stack. When a signal's action indicates its handler should execute on the signal stack (specified with a sigvec(3b) call), the system checks to see if the process is currently executing on that stack. If the process is not currently executing on the signal stack, the ... |
standard/sigsuspend(2) -- atomically release blocked signals and wait for interrupt (POSIX)
|
sigsuspend replaces the current thread's set of masked signals with the set pointed to by maskptr and then suspends the thread until delivery of a signal whose action is either to execute a signal-catching function or to terminate the process. If the action is to terminate the process then sigsuspend will never return. If the action is to execute a signal-catching function, then sigsuspend will return after the signal-catching functions returns, with the signal mask restored to the set that exi... |
standard/socket(2) -- create an endpoint for communication
|
Socket creates an endpoint for communication and returns a descriptor. The domain parameter specifies a communications domain within which communication will take place; this selects the protocol family which should be used. The protocol family generally is the same as the address family for the addresses supplied in later operations on the socket. These families are defined in the include file . The currently understood formats are: PF_INET (DARPA Internet protocols) PF_RAW (Link-... |
standard/socketpair(2) -- create a pair of connected sockets
|
The socketpair call creates an unnamed pair of connected sockets in the specified domain d, of the specified type, and using the optionally specified protocol. The descriptors used in referencing the new sockets are returned in sv[0] and sv[1]. The two sockets are indistinguishable. |
standard/sproc(2) -- create a new share group process
|
The sproc and sprocsp system calls are a variant of the standard fork(2) call. Like fork, the sproc calls create a new process that is a clone of the calling process. The difference is that after an sproc call, the new child process shares the virtual address space of the parent process (assuming that this sharing option is selected, as described below), rather than simply being a copy of the parent. The pa... |
standard/sprofil(2) -- execution time profile for disjoint text spaces
|
sprofil provides CPU-use statistics by profiling the amount of CPU time expended by a program in disjoint text spaces. This is useful if you need to profile programs using shared libraries or profile an address space using different granularities for different sections of text. sprofil generates the statistics by creating an execution histogram for a current process. The histogram is defined for a list of regions of program code to be profiled specified by members of the profp array: profp[0], p... |
standard/sqrt(2) -- single and double precision sqrt function.
|
These single/double precision routines listed above are available in libc. These should not be confused with the standard math library square root functions [see sqrt (3M)]. If v is a negative, the sqrt functions will return a NaN, but won't set the errno value. This is done since the ABI doesn't specify a errno value if the v is negative. |
standard/stat(2) -- get file status
|
The only difference between the *stat and the *stat64 calls is that the *stat64 calls return a stat64 structure, with three fields increased in size to allow for larger files and filesystems: st_ino, st_size, and st_blocks are all 64-bit values. NOTE: All programs compiled either -n32 or -64 get the stat64 versions of the stat system call, even whe... |
standard/stat64(2) -- get file status
|
The only difference between the *stat and the *stat64 calls is that the *stat64 calls return a stat64 structure, with three fields increased in size to allow for larger files and filesystems: st_ino, st_size, and st_blocks are all 64-bit values. NOTE: All programs compiled either -n32 or -64 get the stat64 versions of the stat system call, even whe... |
standard/statfs(2) -- get file system information
|
statfs returns a ``generic superblock'' describing a file system. It can be used to acquire information about mounted as well as unmounted file systems, and usage is slightly different in the two cases. In all cases, buf is a pointer to a structure (described below) which will be filled by the system call, and len is the number of bytes of information which the system should return in the structure. Len must be no greater than sizeof (struct statfs) and ordinarily it will contain exactly that ... |
standard/statvfs(2) -- get file system information
|
statvfs returns a ``generic superblock'' describing a file system; it can be used to acquire information about mounted file systems. buf is a pointer to a structure (described below) that is filled by the system call. path should name a file that resides on that file system. The file system type is known to the operating system. Read, write, or execute permission for the named file is not required, but all directories listed in the path name leading to the file must be sea... |
standard/stime(2) -- set time
|
stime sets the system's idea of the time and date. tp points to the value of time as measured in seconds from 00:00:00 UTC January 1, 1970. stime will fail if: EPERM the calling process does not have the super-user privilege. |
standard/swapctl(2) -- manage swap space
|
swapctl adds, deletes, or returns information about swap resources. Swap resources can be local disk partitions (block devices), local file system files, and files on file systems mounted via nfs. cmd specifies one of the following options contained in <sys/swap.h>: SC_ADD /* add a resource for swapping */ SC_LIST /* l... |
standard/symlink(2) -- make a symbolic link to a file
|
symlink creates a symbolic link name2 to the file name1. Either name may be an arbitrary pathname, the files need not be on the same file system, and name1 may be nonexistent. The file to which the symbolic link points is used when an open(2) operation is performed on the link. A stat(2) on a symbolic link returns the linked-to file, while an lstat returns information about the link itself. This can lead to surprising results when a sym... |
standard/sync(2) -- update super block
|
sync causes all information in memory that should be on disk to be written out. This includes modified super blocks, modified i-nodes, and delayed block I/O. It should be used by programs that examine a file system, such as fsck(1M), df(1M), etc. It is mandatory before a re-boot. The writing, although scheduled, is not necessarily completed before sync returns. The fsync system call completes the writing before it returns.... |
standard/sysfs(2) -- get file system type information
|
sysfs returns information about the file system types configured in the system. The number of arguments accepted by sysfs varies and depends on the opcode. The currently recognized opcodes and their functions are: GETFSIND Translate fsname, a null-terminated file-system type identifier, into a file-system type index. GETFSTYP Translate fs_index, a file-system type index, into a nullterminated file-system type identifie... |
standard/sysget(2) -- Call for reading or writing kernel data
|
The sysget system call provides user access to kernel structures and tables on IRIX systems. sysget can return data for a combination of cpus, nodes, or cells depending on the combination of flags and cookie settings. The sysget system call accepts the following arguments: name Identifies the kernel structure or table. The sys/sysget.h file contains the list of names supported. Most come from the sysmp MP_SAGET options. Here is a partial list: SGT_SINFO SGT_MINFO SGT_DINFO SGT_SERR Returns the v... |
standard/sysinfo(2) -- get and set system information strings
|
sysinfo copies information relating to the UNIX system on which the process is executing into the buffer pointed to by buf; sysinfo can also set certain information where appropriate commands are available. count is the size of the buffer. The POSIX P1003.1 interface sysconf [see sysconf(2)] provides a similar class of configuration information, but returns an integer rather than a string. The commands available ... |
standard/sysmips(2) -- MIPS Computer Systems Inc. system call
|
sysmips is the interface to various machine specific functions. The cmd argument determines the function performed. The number of arguments expected is dependent on the function. |
standard/sysmp(2) -- multiprocessing control
|
sysmp provides control/information for miscellaneous system services. This system call is usually used by system programs and is not intended for general use. The arguments arg1, arg2, arg3, arg4 are provided for command-dependent use. As specified by cmd, the following commands are available: |
standard/syssgi(2) -- Silicon Graphics Inc. system call
|
syssgi is a system interface specific to Silicon Graphics systems. The value of the request parameter determines the meaning of the remaining arguments. In the descriptions below, arg1, arg2, and arg3 refer to parameters following the request argument. The following requests are currently supported: SGI_SYSID Returns an identifier for the given system. This identifier is guaranteed to be unique within the Silicon Graphics product family. The argument arg1 for this request should be a pointer to ... |
standard/time(2) -- get time
|
time returns the value of time in seconds since 00:00:00 UTC, January 1, 1970. If tloc is non-zero, the return value is also stored in the location to which tloc points. |
standard/times(2) -- get process and child process times
|
times fills the tms structure pointed to by buffer with time-accounting information. The tms structure is defined in <sys/times.h> as follows: struct tms { clock_t tms_utime; clock_t tms_stime; clock_t tms_cutime; clock_t tms_c... |
standard/truncate(2) -- set a file to a specified length
|
The file whose name is given by path or referenced by the descriptor fildes has its size set to length bytes. If the file was previously longer than length, bytes past length will no longer be accessible. If it was shorter, bytes from the EOF before the call to the EOF after the call will be read in as zeros. The effective user ID of the process must have write permission for the file, and for ftruncate and ftruncate64 the file must be ... |
standard/uadmin(2) -- administrative control
|
uadmin provides control for basic administrative functions. This system call is tightly coupled to the system administrative procedures and is not intended for general use. The argument mdep is provided for machine-dependent use and is not defined here. As specified by cmd, the following commands are available: A_SHUTDOWN The system is shut down. All user processes are killed, the buffer cache is flushed, and the root file system (and no other) is unm... |
standard/ulimit(2) -- get and set user limits
|
This function provides for control over process limits. The cmd values available are: UL_GETFSIZE Get the regular file size limit of the process. The limit is in units of 512-byte blocks and is inherited by child processes. Files of any size can be read. UL_SETFSIZE Set the regular file size limit of the process to the value of newlimit , taken as a long. newlimit is interpreted in units of 512-byte blocks. If, when converte... |
standard/umask(2) -- set and get file creation mask
|
umask sets the process's file mode creation mask to cmask and returns the previous value of the mask. Only the access permission bits of cmask and the file mode creation mask are used. |
standard/umount(2) -- unmount a file system
|
umount requests that a previously mounted file system contained on the block special device or directory identified by file be unmounted. file is a pointer to a path name. After unmounting the file system, the directory upon which the file system was mounted reverts to its ordinary interpretation. umount may be invoked only by a process with the super-user privilege. umount will fail if one or more of the following are true: EPER<... |
standard/uname(2) -- get name of current UNIX system
|
uname stores information identifying the current UNIX system in the structure pointed to by name. uname uses the structure utsname defined in <sys/utsname.h> whose members are: char sysname[SYS_NMLN]; char nodename[SYS_NMLN]; char release[... |
standard/unlink(2) -- remove directory entry
|
unlink removes the directory entry named by the path name pointed to by path. and decrements the link count of the file referenced by the directory entry. When all links to a file have been removed and no process has the file open, the space occupied by the file is freed and the file ceases to exist. If one or more processes have the file open when the last link is removed, space occupied by the file is not released until all references to the file have been closed. If path is ... |
standard/ustat(2) -- get file system statistics
|
ustat returns information about a mounted file system. dev is a device number identifying a device containing a mounted file system [see makedev(3C)]. buf is a pointer to a ustat structure that includes the following elements: daddr_t f_tfree; /* Total free blocks */ ino_t f_tinode; /* Number... |
standard/utime(2) -- set file access and modification times
|
path points to a path name naming a file. utime sets the access and modification times of the named file. If times is NULL, the access and modification times of the file are set to the current time. A process must be the owner of the file or have write permission to use utime in this manner. If times is not NULL, times is interpreted as a pointer to a utimbuf structure (defined in utime.h) and the ... |
standard/utimets(2) -- set file access and modification times
|
The utimets call uses the "accessed" and "updated" times in that order from the timets vector to set the corresponding recorded times for file. The caller must be the owner of the file or have write permission to use utimets in this manner. This routine is not part of any standard and is specific to IRIX 6.5.10 and later. Applications that call utimets may be run under earlier versions of IRIX if they test for the existence of the interface and fall back to using one of the older file time s... |
standard/vhangup(2) -- virtually ``hangup'' the current control terminal
|
Vhangup is used by the initialization process init(1M) (among others) to arrange that users are given "clean"' terminals at login, by revoking access of the previous users' processes to the terminal. To effect this, vhangup searches the system tables for references to the control terminal of the invoking process, revoking access permissions on each instance of the terminal that it finds. Further attempts to access the terminal by the affected processes will yield i/o errors (EIO). Finally, a... |
standard/wait(2) -- wait for child processes to stop or terminate
|
wait suspends the calling process until one of the immediate children terminate, or until a child that is being traced stops because it has hit an event of interest. The wait will return prematurely if a signal is received. If all child processes stopped or terminated prior to the call on wait, return is immediate. If the call is successful, the process ID of a child is returned. wait3 is BSD's extension of wait. It provides an alte... |
standard/waitid(2) -- wait for child process to change state
|
waitid suspends the calling process until one of its children changes state. It records the current state of a child in the structure pointed to by infop. If a child process changed state prior to the call to waitid, waitid returns immediately. The idtype and id arguments specify which children waitid is to wait for. If idtype is P_PID, waitid waits for the child with a process ID equal to (<... |
standard/write(2) -- write on a file
|
write attempts to write nbyte bytes from the buffer pointed to by buf to the file associated with fildes. If nbyte is zero and the file is a regular file, write returns zero and has no other results. fildes is a file descriptor obtained from a creat, open, dup, fcntl, pipe, or ioctl system call. pwrite and pwrite64 are the same as writ<... |