Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!cornell!uw-beaver!ssc-vax!uvicctr!tholm
From: tholm@uvicctr.UUCP (Terrence W. Holm)
Newsgroups: comp.os.minix
Subject: /usr/man/cat2/*
Message-ID: <447@uvicctr.UUCP>
Date: 7 Jul 88 23:55:22 GMT
Reply-To: tholm@uvicctr.UUCP (Terrence W. Holm)
Organization: University of Victoria, Victoria B.C. Canada
Lines: 1226
EFTH Minix report #25 - July 1988 - /usr/man/cat2/*
Our section 2 "man" pages are included. Please enjoy.
Also, please report mistakes.
--------------------------------------------------------------------
echo x - _exit.2
gres '^X' '' > _exit.2 << '/'
XSYSTEM CALLS
X _exit(2) - terminate this process
X
XINVOCATION
X _exit( code )
X int code;
X
XEXPLANATION
X _exit(2) closes all open descriptors. Any children
X are inherited by "init". The process terminates.
X Files opened using the stdio library are not flushed.
X
X This call is generally not used directly by a user's
X program, exit(3) is the preferred interface.
X
XRESULTS
X The parent may receive the lower byte of by
X using wait(2).
X
XREFERENCES
X wait(2), exit(3)
X
XPROBLEMS
X POSIX states that _exit(2) and exit(3) should perform
X the same operation.
/
echo x - access.2
gres '^X' '' > access.2 << '/'
XSYSTEM CALLS
X access(2) - do I have access to a file
X
XINVOCATION
X #include
X
X int access( file_name, type )
X char *file_name;
X int type;
X
XEXPLANATION
X Access(2) determines if the is accessible
X according to the real user and group id's of the current
X process. The of access required is specified by
X OR'ing R_OK, W_OK and X_OK which corresponds to the "rwx"
X protection bits. If is F_OK, then access(2) only
X checks for the existence of the file.
X
XRESULTS
X 0 : File is accessible according to .
X -1 : File is not accessible.
/
echo x - alarm.2
gres '^X' '' > alarm.2 << '/'
XSYSTEM CALLS
X alarm(2) - send me a timeout signal in a while
X
XINVOCATION
X unsigned alarm( secs )
X unsigned secs;
X
XEXPLANATION
X After seconds, the caller will be interrupted with
X the signal SIGALRM. If is zero, then the alarm is
X turned off.
X
XRESULTS
X Returns the time that was left if the alarm was currently
X running.
X
XREFERENCES
X signal(2), sleep(3)
/
echo x - brk.2
gres '^X' '' > brk.2 << '/'
XSYSTEM CALLS
X brk(2) - set the data space size
X
XEXPLANATION
X Brk(2) and sbrk() are used to change the size of
X the area used for data allocation. These are never
X to be used directly by a user's program.
X
XREFERENCES
X malloc(3)
/
echo x - chdir.2
gres '^X' '' > chdir.2 << '/'
XSYSTEM CALLS
X chdir(2) - change directory
X
XINVOCATION
X chdir( dir_name )
X char *dir_name;
X
XEXPLANATION
X The working directory is set to .
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - chmod.2
gres '^X' '' > chmod.2 << '/'
XSYSTEM CALLS
X chmod(2) - set the protection for a file
X
XINVOCATION
X #include
X #include
X
X chmod( file_name, perm )
X char *file_name;
X int perm;
X
XEXPLANATION
X Chmod(2) sets the protection for . The caller must
X either be the owner of the file, or the super-user.
X
X represents the bits "ug-rwxrwxrwx", where "u" is the
X "set UID bit", "g" is the "set GID bit", and the rest are
X three sets of READ/WRITE/EXECUTE permissions for the USER,
X GROUP and OTHERS respectively.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - chown.2
gres '^X' '' > chown.2 << '/'
XSYSTEM CALLS
X chown(2) - set the owner for a file
X
XINVOCATION
X chown( file_name, owner, group )
X char *file_name;
X int owner;
X int group;
X
XEXPLANATION
X Chown(2) sets the and for a file.
X Only the super-user may use this call.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - chroot.2
gres '^X' '' > chroot.2 << '/'
XSYSTEM CALLS
X chroot(2) - change the root directory
X
XINVOCATION
X chroot( dir_name )
X char *dir_name;
X
XEXPLANATION
X The root directory ("/") is set to . Only
X the super-user may change the root directory.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - close.2
gres '^X' '' > close.2 << '/'
XSYSTEM CALLS
X close(2) - deallocate a descriptor
X
XINVOCATION
X close( desc )
X int desc;
X
XEXPLANATION
X Deallocates the file descriptor .
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X open(2), fclose(3)
/
echo x - creat.2
gres '^X' '' > creat.2 << '/'
XSYSTEM CALLS
X creat(2) - create a file
X
XINVOCATION
X #include
X #include
X
X int creat( file_name, perm )
X char *file_name;
X int perm;
X
XEXPLANATION
X If does not exist, then it is created with
X the permissions . If exists, then
X it is truncated.
X
XRESULTS
X >=0 : The descriptor for writing on the file.
X -1 : Error.
X
XREFERENCES
X chmod(2), open(2), umask(2), fopen(3)
/
echo x - dup.2
gres '^X' '' > dup.2 << '/'
XSYSTEM CALLS
X dup(2) - make another descriptor
X
XINVOCATION
X int dup( desc )
X int desc;
X
XEXPLANATION
X The descriptor is duplicated.
X
XRESULTS
X >=0 : The new descriptor.
X -1 : Error.
X
XREFERENCES
X close(2), dup2(2), open(2)
/
echo x - dup2.2
gres '^X' '' > dup2.2 << '/'
XSYSTEM CALLS
X dup2(2) - make another descriptor
X
XINVOCATION
X dup2( desc, new )
X int desc;
X int new;
X
XEXPLANATION
X The descriptor is duplicated as descriptor .
X A close(2) is performed on if it was in use.
X
XRESULTS
X >=0 : The new descriptor.
X -1 : Error.
X
XREFERENCES
X close(2), dup(2), open(2)
/
echo x - execve.2
gres '^X' '' > execve.2 << '/'
XSYSTEM CALLS
X execve(2) - load a process image from a file
X
XINVOCATION
X execve( name, argv, envp )
X char *name;
X char *argv[];
X char *envp[];
X
XEXPLANATION
X is the path name of the file which contains the process
X image. points to a vector of pointers to strings which
X are to be passed as arguments, the first argument is generally
X the same the last component in . points to the
X environment, see environ(4).
X
X The new process begins with the following, where is the
X number of arguments in . The global variable is
X the same as .
X
X main( argc, argv, envp )
X int argc;
X char **argv
X char **envp;
X
XRESULTS
X o/w : Will not return.
X -1 : Error.
X
XREFERENCES
X fork(2), execl(3), environ(4)
/
echo x - fork.2
gres '^X' '' > fork.2 << '/'
XSYSTEM CALLS
X fork(2) - split into two processes
X
XINVOCATION
X int fork()
X
XEXPLANATION
X A child process is created. This new process is a copy
X of the parent, including descriptors.
X
XRESULTS
X o/w : Process number of child, you are the parent.
X 0 : You are the child.
X -1 : Could not fork.
X
XEXAMPLE
X int pid = fork();
X
X if ( pid == -1 )
X return;
X
X if ( pid == 0 ) { /* The child process */
X execl( "/bin/sh", "/bin/sh", 0 );
X perror( "/bin/sh" );
X exit( 127 );
X }
X
X /* The parent process: ignore signals, wait for sub-process */
X
X signal( SIGINT, SIG_IGN );
X signal( SIGQUIT, SIG_IGN );
X
X {
X int w, status;
X
X while ( (w=wait(&status)) != pid && w != -1 );
X }
X
XREFERENCES
X execl(3), wait(2)
/
echo x - fstat.2
gres '^X' '' > fstat.2 << '/'
XSYSTEM CALLS
X fstat(2) - read an inode
X
XINVOCATION
X #include
X #include
X
X fstat( desc, s )
X int desc;
X struct stat *s;
X
XEXPLANATION
X Fstat(2) reads the inode for the file descriptor .
X See stat(2) for a description of the structure pointed to
X by .
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X stat(2)
/
echo x - getegid.2
gres '^X' '' > getegid.2 << '/'
XSYSTEM CALLS
X getegid(2) - what is my effective group id
X
XINVOCATION
X int getegid()
X
XRESULTS
X My effective group id.
X
XREFERENCES
X getgid(2)
/
echo x - geteuid.2
gres '^X' '' > geteuid.2 << '/'
XSYSTEM CALLS
X geteuid(2) - what is my effective user id
X
XINVOCATION
X int geteuid()
X
XRESULTS
X My effective user id.
X
XREFERENCES
X getuid(2)
/
echo x - getgid.2
gres '^X' '' > getgid.2 << '/'
XSYSTEM CALLS
X getgid(2) - what is my real group id
X
XINVOCATION
X int getgid()
X
XRESULTS
X My real group id.
X
XREFERENCES
X getegid(2)
/
echo x - getpgrp.2
gres '^X' '' > getpgrp.2 << '/'
XSYSTEM CALLS
X getpgrp(2) - who is my process group leader
X
XINVOCATION
X int getpgrp()
X
XRESULTS
X My process group id.
X
XREFERENCES
X setpgrp(2), kill(2)
/
echo x - getpid.2
gres '^X' '' > getpid.2 << '/'
XSYSTEM CALLS
X getpid(2) - what is my process id
X
XINVOCATION
X int getpid()
X
XRESULTS
X My process id.
/
echo x - getppid.2
gres '^X' '' > getppid.2 << '/'
XSYSTEM CALLS
X getppid(2) - what is my parent's process id
X
XINVOCATION
X int getppid()
X
XRESULTS
X My parent's process id.
/
echo x - getuid.2
gres '^X' '' > getuid.2 << '/'
XSYSTEM CALLS
X getuid(2) - what is my real user id
X
XINVOCATION
X int getuid()
X
XRESULTS
X My real user id.
X
XREFERENCES
X geteuid(2)
/
echo x - intro.2
gres '^X' '' > intro.2 << '/'
XSYSTEM CALLS
X intro(2) - available system calls
X
XEXPLANATION
X There are 48 functions callable by C programs which send
X direct requests to the MINIX operating system. These
X "system calls" are placed in a separate section of the
X manual to aid students in understanding how MINIX and
X its libraries operate, (there is also a historical
X precedent for the separation).
X
X The following system calls are part of the POSIX standard:
X
X access alarm chdir chmod chown close creat
X dup dup2 execve _exit fork fstat getegid
X geteuid getgid getpgrp getpid getppid getuid isatty
X kill link lseek open pause pipe read
X setgid setpgrp setuid signal stat time times
X umask unlink utime wait write
X
X The following MINIX system calls are not in the IEEE Std
X 1003.1 Trial-Use Standard:
X
X brk chroot ioctl mknod mount stime sync
X umount
X
XREFERENCES
X intro(3), errno(4)
/
echo x - ioctl.2
gres '^X' '' > ioctl.2 << '/'
XSYSTEM CALLS
X ioctl(2) - special functions for devices
X
XINVOCATION
X #include
X
X ioctl( desc, TIOCSETP, argp )
X int desc;
X struct sgttyb *argp;
X
X ioctl( desc, TIOCSETC, argc )
X int desc;
X struct tchars *argc;
X
X ioctl( desc, TIOCGETP, argp )
X
X ioctl( desc, TIOCGETC, argc )
X
XEXPLANATION
X Devices are generally accessed through read(2) and write(2)
X entry points, ioctl(2) adds an entry point for special
X functions. The first parameter is a file descriptor,
X the second is the name of the special function and the
X last parameter is an appropriate argument for the given
X function.
X
X Currently there are four different ioctl(2) calls, all for
X terminal devices. TIOCSETP and TIOCSETC set some parameters.
X TIOCGETP and TIOCGETC recall the current parameters. The
X structures pointed to by the last argument contain the following
X elements, the initial defaults are also shown:
X
X (char) argp->sg_ispeed baud rate of rs232 port (1200)
X (char) argp->sg_erase erase the previous character (^H)
X (char) argp->sg_kill erase the whole line (@)
X (short) argp->sg_flags see below:
X
X BITS5 5 bits of data
X BITS6 6 bits of data
X BITS7 7 bits of data
X BITS8 8 bits of data
X EVENP Even parity generation and checking
X ODDP Odd parity generation and checking
X XTABS expand tabs (^I) to spaces
X CRMOD i/p: ^M becomes ^J, o/p: ^J becomes ^M/^J
X ECHO echo input characters
X RAW enable raw mode, no i/o processing
X CBREAK enable cbreak mode, as opposed to line mode
X
X console initially: XTABS | CRMOD | ECHO
X rs232 initially: BITS7 | EVENP | XTABS | CRMOD
X stty(1) default: BITS8 | XTABS | CRMOD | ECHO
X
X (char) argc->t_intrc generates SIGINT (^?)
X (char) argc->t_quitc generates SIGQUIT (^\)
X (char) argc->t_startc restart output (^Q)
X (char) argc->t_stopc stop output (^S)
X (char) argc->t_eofc generate end-of-file (^D)
X
XNOTES
X The following constants are defined in sgtty.h for baud rates:
X
X B110 110 baud, 2 stop bits (if BITS5 then 1.5)
X B300 300 baud, 1 stop bit
X B1200 1200 baud, 1 stop bit
X B2400 2400 baud, 1 stop bit
X B4800 4800 baud, 1 stop bit
X B9600 9600 baud, 1 stop bit
X
X When changing the number of data bits, all other data bit flags
X must be turned off, for example:
X
X argp->sg_flags &= ~ ( BITS5 | BITS6 | BITS7 | BITS8 );
X argp->sg_flags |= BITS7;
X
X If neither EVENP nor ODDP is set then no parity generation or
X checking are performed.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XEXAMPLE
X ioctl( 0, TIOCGETP, &tty_mode );
X
X /* No tab expansion, no echo, cbreak mode */
X
X tty_mode.sg_flags = tty_mode.sg_flags & ~XTABS & ~ECHO | CBREAK;
X
X ioctl( 0, TIOCSETP, &tty_mode );
X
XREFERENCES
X stty(1), gtty(3), stty(3)
X
XPROBLEMS
X TIOCGETP does not return a value for sg_ispeed.
/
echo x - isatty.2
gres '^X' '' > isatty.2 << '/'
XSYSTEM CALLS
X isatty(2) - does this descriptor refer to a terminal
X
XINVOCATION
X int isatty( desc )
X int desc;
X
XRESULTS
X 1 : is an open descriptor connected to a terminal.
X 0 : is not associated with a terminal.
X
XREFERENCES
X fstat(2), ttyname(3)
/
echo x - kill.2
gres '^X' '' > kill.2 << '/'
XSYSTEM CALLS
X kill(2) - signal a process
X
XINVOCATION
X kill( pid, sig )
X int pid;
X int sig;
X
XEXPLANATION
X The signal is sent to the process . The sender
X must either have the same user id, or be the super-user. If
X is 0, then everyone in the same process group is
X signaled.
X
X If is -1 and the caller is the super-user then all
X processes receive the signal.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X alarm(2), setpgrp(2), signal(2)
X
XPROBLEMS
X Does not handle sig = 0 or pid < 0 variations as defined
X in POSIX.
/
echo x - link.2
gres '^X' '' > link.2 << '/'
XSYSTEM CALLS
X link(2) - link a file
X
XINVOCATION
X link( file_name, new_name )
X char *file_name;
X char *new_name;
X
XEXPLANATION
X A new file is created as a link to the existing
X file . Both must be on the same file system.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - lseek.2
gres '^X' '' > lseek.2 << '/'
XSYSTEM CALLS
X lseek(2) - seek to a new place in a file
X
XINVOCATION
X #include
X #include
X
X off_t lseek( desc, address, from )
X int desc;
X off_t address;
X int from;
X
XEXPLANATION
X The current read/write pointer for the file descriptor
X is set to offset by a location as determined by the
X value of :
X
X SEEK_SET from the beginning of the file
X SEEK_CUR from the current position
X SEEK_END from the end of the file
X
XRESULTS
X o/w : Current octet position in file.
X -1 : Error.
/
echo x - mknod.2
gres '^X' '' > mknod.2 << '/'
XSYSTEM CALLS
X mknod(2) - make a file node
X
XINVOCATION
X #include
X #include
X
X mknod( file_name, mode, device )
X char *file_name;
X int mode;
X int device;
X
XEXPLANATION
X Mknod(2) creates an inode for with the given .
X For special files (block or character) the major/minor device is
X specified by . Only the super-user may use this call.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X /usr/include/sys/types.h
X /usr/include/stat.h
/
echo x - mount.2
gres '^X' '' > mount.2 << '/'
XSYSTEM CALLS
X mount(2) - mount a new file system
X
XINVOCATION
X mount( special, file_name, read_only )
X char *special;
X char *file_name;
X int read_only;
X
XEXPLANATION
X The block special file is mounted with its root
X as . If is non-zero then this new
X file system will be read only. Only the super-user may use
X mount(2).
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X umount(2)
/
echo x - open.2
gres '^X' '' > open.2 << '/'
XSYSTEM CALLS
X open(2) - open a file descriptor
X
XINVOCATION
X #include
X
X int open( file_name, flag )
X char *file_name;
X int flag;
X
XEXPLANATION
X is opened as specified by :
X
X O_RDONLY for reading
X O_WRONLY for writing
X O_RDWR for both reading and writing
X
X The file must exist.
X
XRESULTS
X >=0 : The descriptor for the file.
X -1 : Error.
X
XREFERENCES
X close(2), creat(2), lseek(2), read(2), write(2), fopen(3)
/
echo x - pause.2
gres '^X' '' > pause.2 << '/'
XSYSTEM CALLS
X pause(2) - wait for a signal
X
XINVOCATION
X pause()
X
XEXPLANATION
X Waits for a signal, and returns after completion of the
X signal handler.
X
XRESULTS
X -1 : Ok.
X
XREFERENCES
X signal(2), wait(2)
/
echo x - pipe.2
gres '^X' '' > pipe.2 << '/'
XSYSTEM CALLS
X pipe(2) - create a pipe
X
XINVOCATION
X pipe( desc )
X int desc[2];
X
XEXPLANATION
X A FIFO pipe is created. Desc[1] is for writing to the
X pipe and desc[0] is for reading from the pipe.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - read.2
gres '^X' '' > read.2 << '/'
XSYSTEM CALLS
X read(2) - read from a file
X
XINVOCATION
X int read( desc, buffer, size )
X int desc;
X char *buffer;
X int size;
X
XEXPLANATION
X Up to bytes are read from the file referenced by
X the file descriptor . The data is placed into the
X storage pointed to by .
X
XRESULTS
X o/w : Number of bytes actually read.
X 0 : At the end of the file.
X -1 : Error.
/
echo x - setgid.2
gres '^X' '' > setgid.2 << '/'
XSYSTEM CALLS
X setgid(2) - change my group id
X
XINVOCATION
X setgid( group )
X int group;
X
XEXPLANATION
X The real and effective group id are set to .
X Setgid(2) requires that either the caller's real group
X id is or the caller is the super-user.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X getgid(2)
/
echo x - setpgrp.2
gres '^X' '' > setpgrp.2 << '/'
XSYSTEM CALLS
X setpgrp(2) - make me a process group leader
X
XINVOCATION
X int setpgrp()
X
XEXPLANATION
X Each child of "init" is a process group leader. The
X offsprings of this leader belong to the same process
X group. Setpgrp(2) can be used to break off a new
X group from this tree.
X
X Kill(2) is able to send a signal to all members of
X a process group. This is used by the terminal devices
X to broadcast a SIGINT or SIGQUIT signal.
X
XRESULTS
X My process group id (which is now my process id).
X
XREFERENCES
X getpgrp(2), kill(2)
/
echo x - setuid.2
gres '^X' '' > setuid.2 << '/'
XSYSTEM CALLS
X setuid(2) - change my user id
X
XINVOCATION
X setuid( user )
X int user;
X
XEXPLANATION
X The real and effective user id are set to .
X Setuid(2) requires that either the caller's real user
X id is or the caller is the super-user.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X getuid(2)
/
echo x - signal.2
gres '^X' '' > signal.2 << '/'
XSYSTEM CALLS
X signal(2) - what should be done with signals
X
XINVOCATION
X #include
X
X void (*signal( sig, handler ))()
X int sig;
X void (*handler)();
X
XEXPLANATION
X Signal(2) specifies what the system should do if the signal
X is sent to this process. There are 16 signals defined
X in MINIX, though not all of them are used.
X
X When a signal arrives it may either be ignored, cause the
X process to terminate or cause an asynchronous call to a
X handler procedure within the process. When this handler
X procedure terminates, control resumes where it was before
X the signal.
X
X The default for all signals is to terminate the process.
X Signals marked with a "*" in the list below also create a
X core image file when the process is terminated.
X
X Each process may specify that a signal should be ignored,
X should be set to the default state or cause a call to a
X handler procedure. must be one of the following:
X
X SIG_IGN ignore the signal
X SIG_DFL use the default behavior for the signal
X a procedure call this handler when the signal occurs
X
X The following are the signals defined in signal.h:
X
X SIGHUP 1 hang-up
X SIGINT 2 interrupt
X SIGQUIT 3* quit
X SIGILL 4* illegal instruction
X SIGTRAP 5* trace trap
X SIGIOT 6* IOT trap
X SIGEMT 7* EMT trap
X SIGFPE 8* arithmetic exception
X SIGKILL 9 kill (cannot be caught or ignored)
X SIGBUS 10* bus error
X SIGSEGV 11* segmentation violation
X SIGSYS 12* bad argument to system call
X SIGPIPE 13 write on a pipe with no one to read it
X SIGALRM 14 alarm clock
X SIGTERM 15 software termination signal
X
XRESULTS
X o/w : Last setting for signal.
X -1 : Error.
X
XEXAMPLE
X #include
X
X terminate() {
X printf( "\nBye\n" );
X exit( 1 );
X }
X
X main() {
X if ( signal( SIGINT, SIG_IGN ) != SIG_IGN )
X signal( SIGINT, terminate );
X
X while( 1 );
X }
X
XREFERENCES
X kill(2)
/
echo x - stat.2
gres '^X' '' > stat.2 << '/'
XSYSTEM CALLS
X stat(2) - read an inode
X
XINVOCATION
X #include
X #include
X
X stat( file_name, s )
X char *file_name;
X struct stat *s;
X
XEXPLANATION
X Stat(2) reads the inode for the file . points
X to a structure containing the following:
X
X (dev_t) s->st_dev device file is on
X (ino_t) s->st_ino inode number
X (unsigned short) s->st_mode protection
X (short int) s->st_nlink number of links
X (unsigned short) s->st_uid owner's user id
X (unsigned short) s->st_gid owner's group id
X (dev_t) s->st_rdev device type, if is device
X (off_t) s->st_size file size
X (time_t) s->st_atime time of last modification
X (time_t) s->st_mtime time of last modification
X (time_t) s->st_ctime time of last modification
X
X (s->st_mode & S_IFMT) is one of the following:
X
X S_IFREG regular
X S_IFDIR directory
X S_IFCHR character special
X S_IFBLK block special
X
X The following may be set in s->st_mode:
X
X S_ISUID set user id on execution
X S_ISGID set group id on execution
X
X The lower 9 bits of s->st_mode are the three sets of "rwx"
X permissions for the USER, GROUP and OTHERS respectively.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X chmod(2), chown(2), fstat(2), utime(2)
/
echo x - stime.2
gres '^X' '' > stime.2 << '/'
XSYSTEM CALLS
X stime(2) - set the system clock
X
XINVOCATION
X #include
X
X stime( new_time )
X time_t *new_time;
X
XEXPLANATION
X The system clock is set to the value pointed to by .
X Only the super-user may set the clock.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - sync.2
gres '^X' '' > sync.2 << '/'
XSYSTEM CALLS
X sync(2) - copy file system buffers to disk
X
XINVOCATION
X sync()
X
XEXPLANATION
X All the file buffers are copied from the volatile RAM
X to disk.
/
echo x - time.2
gres '^X' '' > time.2 << '/'
XSYSTEM CALLS
X time(2) - what time is it
X
XINVOCATION
X #include
X
X time_t time( secs_spot )
X time_t *secs_spot;
X
XEXPLANATION
X Time is kept as a count of the number of seconds since
X January 1st, 1970.
X
XRESULTS
X The seconds count is returned. If is not NULL,
X then the seconds count is also placed into the location
X pointed to by .
X
XREFERENCES
X ctime(3)
/
echo x - times.2
gres '^X' '' > times.2 << '/'
XSYSTEM CALLS
X times(2) - how much CPU time have I used
X
XINVOCATION
X #include
X #include
X
X times( buf )
X struct tms *buf;
X
XEXPLANATION
X The CPU times used by the current process and its
X children is returned. The accounting is separated
X into system and user time. The counts are 1/60 of
X a second. points to the following structure:
X
X struct tms {
X time_t tms_utime; my user time
X time_t tms_stime; my system time
X time_t tms_cutime; children's user time
X time_t tms_cstime; children's system time
X };
X
XRESULTS
X 0 : Ok.
X
XPROBLEMS
X In the POSIX standard times(2) returns an elapsed
X time count.
/
echo x - umask.2
gres '^X' '' > umask.2 << '/'
XSYSTEM CALLS
X umask(2) - set the default file protection mask
X
XINVOCATION
X int umask( new_mask )
X int new_mask;
X
XEXPLANATION
X Whenever a file is created its protection mask is AND'ed with
X the complement of the lower 9 bits of .
X
XRESULTS
X The previous mask contents.
X
XREFERENCES
X chmod(2), creat(2)
/
echo x - umount.2
gres '^X' '' > umount.2 << '/'
XSYSTEM CALLS
X umount(2) - unmount a file system
X
XINVOCATION
X umount( special )
X char *special;
X
XEXPLANATION
X The block special file is unmounted. Only the
X super-user may use umount(2).
X
XRESULTS
X 0 : Ok.
X -1 : Error.
X
XREFERENCES
X mount(2)
/
echo x - unlink.2
gres '^X' '' > unlink.2 << '/'
XSYSTEM CALLS
X unlink(2) - delete a link to a file
X
XINVOCATION
X unlink( file_name )
X char *file_name;
X
XEXPLANATION
X The file link is deleted. If this was the last
X link to a file, and the file is not open, then the file will
X be removed.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - utime.2
gres '^X' '' > utime.2 << '/'
XSYSTEM CALLS
X utime(2) - change a file's last modified time
X
XINVOCATION
X #include
X #include
X
X utime( file_name, times )
X char *file_name;
X struct utimbuf *times;
X
XEXPLANATION
X The file's "last modified" time is set by:
X
X (time_t) times->modtime
X
X Only the owner of a file or the super-user may change this
X file update time. If is NULL, then the "last modified"
X time is set to the current time.
X
X There is no "last accessed" time in the MINIX file system.
X
XRESULTS
X 0 : Ok.
X -1 : Error.
/
echo x - wait.2
gres '^X' '' > wait.2 << '/'
XSYSTEM CALLS
X wait(2) - wait for a child to terminate
X
XINVOCATION
X int wait( status )
X int *status;
X
XEXPLANATION
X Wait(2) returns if a child has already terminated, or if
X there are no children. Otherwise wait(2) blocks until a
X child does terminate.
X
X If wait(2) returns because a child terminated, and
X is not NULL, then the lowest byte of the location pointed to
X by will contain the signal number which terminated
X the child, 0 for normal termination. On a normal termination
X the next higher byte receives the value from the child's
X exit(3) call. If a core dump was generated then 0x80 is OR'ed
X into the status.
X
XRESULTS
X o/w : Process number of terminated child.
X -1 : errno = ECHILD - No children.
X = EINTR - A signal occurred.
X
XREFERENCES
X _exit(2), pause(2), exit(3)
/
echo x - write.2
gres '^X' '' > write.2 << '/'
XSYSTEM CALLS
X write(2) - write to a file
X
XINVOCATION
X int write( desc, buffer, size )
X int desc;
X char *buffer;
X int size;
X
XEXPLANATION
X bytes from the storage pointed to by
X are written to the file referenced by the descriptor
X .
X
XRESULTS
X o/w : Number of bytes actually written.
X -1 : Error.
/
--------------------------------------------------------------------
Edwin L. Froese
uw-beaver!ubc-cs!mprg!handel!froese
Terrence W. Holm
uw-beaver!ubc-cs!uvicctr!sirius!tholm