add directory study

This commit is contained in:
gohigh
2024-02-19 00:25:23 -05:00
parent b1306b38b1
commit f3774e2f8c
4001 changed files with 2285787 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,61 @@
Minix 1.5 man pages on minix1.hampshire.edu
I have posted my Minix 1.5 man pages in the anonymous ftp area of
minix1.hampshire.edu. I hope they will be of use to people using
Minix 1.5 on MacIntosh or Atari systems.
These are flat ASCII files, one file per man section, intended to be
read by the Minix 1.5 man command. This is not a standard man command
as found on other Unix versions, in fact, its name was originally help,
and its action is similar to the MS-DOS HELP command. With no argument
the command gives you a menu of available documents. See the README
for more information.
The sections of the Minix 1.5 manual are:
Section 1: User commands
Section 2: System calls
Section 3: C library
Section 4: File formats
Section 5: Miscellaneous
Section 6: Games
Section 7: Special files (devices)
Section 8: Maintenance procedures
The entries in section 1 are derived from a set of man pages that Andy
Tanenbaum sent me in 1993, and some of the entries correspond to
enhancements added in the version 1.6 release, but the majority are
identical to the Minix 1.5 man pages in the printed Minix 1.5 Reference
Manual. Andy has given his permission to post this material.
The entries in the other sections come from a variety of sources. Some
are Andy's pages moved to another section. Many entries were provided
by other contributors to enhanced Minix 1.5 as it was installed on
minix1.hampshire.edu, and pages for the boot monitor (by Kees Bot) and
the Tnet network package (by Michael Temari) are included. So be
warned, if you download these pages for use on your MacIntosh or Atari
running Minix 1.5 there are some entries here that don't correspond to
anything in your system. Many entries were written by me (asw) for my
own use or for my students, and some of these are very sketchy. In
some cases the formatting into plain ASCII is incomplete, and a few
entries originally written in Spanish may not have been translated into
English.
Files in ftp://minix1.hampshire.edu/pub/minix.1.5/man
-rw-r--r-- 1 root 4263 Mar 11 1995 README.man.1.5
-rw-r--r-- 1 root 176315 Feb 26 1995 man1
-rw-r--r-- 1 root 43155 Feb 26 1995 man2
-rw-r--r-- 1 root 28349 Feb 26 1995 man3
-rw-r--r-- 1 root 8493 Feb 26 1995 man4
-rw-r--r-- 1 root 13479 Jan 24 10:40 man5
-rw-r--r-- 1 root 1500 Feb 26 1995 man6
-rw-r--r-- 1 root 5829 Feb 26 1995 man7
-rw-r--r-- 1 root 42711 Feb 26 1995 man8
Corrections or comments to Al Woodhull, awoodhull@hampshire.edu.
asw 10 July 1996

View File

@@ -0,0 +1,94 @@
General notes on the Minix 1.5 man command:
Unix systems generally seem to keep man pages as individual
files named according to the subject and the section, for example,
rm.1, ls.1, chmod.2, etc., in directories named according to the
manual section, such as man1/, man2/, etc. These files may not be not
flat text, they may be compressed and/or they may need to be passed
through a formatting program such as nroff.
The Minix man files that are available over the net are tarred
collections of such files (not compressed, but needing to be run
through a formatting program).
Minix 1.5 man files do it differently. The Minix 1.5.10 man
command expects to find a single large flat text file for each man
section. One could debate whether this is a good idea or not, but it
isn't the way most other Unix systems do it. It is probably more
practical for the very small file systems on the floppy-based PCs for
which Minix was originally developed. The man index display (see
below) is definitely a more friendly interface than the standard Unix
man system, which won't give you much help if you don't already know
which command you want to ask about.
There isn't any documentation on the format of man files
except what is inherent in the man.c source. The man files consist of
keyword lines that begin with a "#" in the first column, followed by
lines of text to be displayed when one of the keywords in the
preceding keyword line is selected from the keyword menu or as an
argument to the man command. The keyword lines are not displayed, but
all lines of text up to but not including the next keyword line will
be displayed. New articles may be added to a man file by
concatenation, but if a keyword appears more than once only the last
reference will be displayed.
In use, the Minix 1.5.10 man command expects to find files
man<n> in the directory/usr/man. The command format is
man [<arg1> [arg2]]
If the command is given with no arguments a menu of the
keywords in /usr/man/man1 is presented.
If the commmand is given with one argument, if the argument is
a <n> suffix of a man<n> file in /usr/man a menu of the keywords in
man<n> is presented.
If the commmand is given with one argument, if the argument is
not a <n> suffix of a man<n> file in /usr/man a search is made for an
article with a keyword corresponding to arg1 in /usr/man/man1.
If the command is given with two arguments the first argument
is used to select a file /usr/man/man<arg1> and the second argument is
the keyword to search for.
Articles can be paged through in the forward direction using
the Enter key. Presentation of an article may be interrupted by the
intr (Delete by default, may be changed with stty) key or the Q key.
When in menu mode the menu will be presented each time an article is
complete. The intr or Q key will exit from the menu back to the
command line prompt.
Man files from the net:
For better or for worse, a decision seems to have been made
that the man system of future versions of Minix will be the
traditional Unix one, with a single file for each entry. This will
make maintenance of the man files easier, but it does away with the
menu display that beginners to Unix will probably find easier to use.
Most of the man pages you get from the net will need to be
processed in the following way to be used with the Minix 1.5 man
command:
1. Convert each article to a flat ASCII file. (Maybe not as easy as it
should be if Minix is the only Unix you have, since most of these
files cannot be fully converted using only the Minix 1.5 nroff -man
command.)
2. Add a line to the top of each article that begins with a pound sign
"#" followed by all the names by which you want to retrieve that
article.
3. Concatenate all the files for section 1 together and name the
resulting file man1, man2, etc. Put all of them in the directory
/usr/man.
Two caveats: don't throw away the original tarred files you
get from the net, since when you update to Minix 1.6 or later you'll
need to have separate files for each topic. Also, be aware that the
man files that have been posted to the net may actually be based on
Minix 1.6.16 or a later version in which the action of each command
may no longer be the same as in Minix 1.5.10.
---

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,971 @@
# MAN3
MAN3 (3)
Section 3 of the Manual describes C library routines, and is primarily
intended for programmers.
The sections of the manual are:
Section 1: User commands
Section 2: System calls
--> Section 3: C library
Section 4: File formats
Section 5: Miscellaneous
Section 6: Games
Section 7: Special files (devices)
Section 8: Maintenance procedures
# curses
Definitions in /usr/include/curses.h
extern char termcap[];
extern char tc[];
extern char *ttytype;
extern char *arp;
extern char *cp;
extern char *cl;
extern char *cm;
extern char *so;
extern char *se;
extern char row, col, mode;
extern char str[];
void addstr();
void clear();
void clrtobot();
void clrtoeol();
void endwin();
void fatal();
char inch();
void initscr();
void move();
void printw();
void outc();
void refresh();
void standend();
void standout();
void touchwin();
# libc
Source files included in /usr/lib/libc.a
_dup.s _exit.s abort.s abs.s access.s
adi.s alarm.s amoeba.s and.s assert.s
atoi.s atol.s bcmp.s bcopy.s blm.s
brk.s brksize.s bsearch.s bzero.s call.s
catchsig.s chdir.s chmod.s chown.s chroot.s
cii.s cleanup.s close.s closedir.s cmi4.s
cms.s cmu4.s com.s creat.s crypt.s
csa2.s csb2.s ctermid.s ctime.s ctype.s
curses.s cuserid.s cuu.s doprintf.s dup.s
dup2.s dvi4.s dvu4.s errno.s exec.s
execlp.s exg.s exit.s fakfp.s fat.s
fclose.s fcntl.s fdopen.s fflush.s ffs.s
fgetc.s fgets.s fopen.s fork.s fpathconf.s
fprintf.s fputc.s fputs.s fread.s freopen.s
fseek.s fstat.s ftell.s fwrite.s getcwd.s
getdents.s getegid.s getenv.s geteuid.s getgid.s
getgrent.s getlogin.s getopt.s getpass.s getpid.s
getppid.s getpwent.s gets.s getuid.s getutil.s
gto.s gtty.s iaar.s ilar.s index.s
inn.s ioctl.s ior.s isar.s isatty.s
itoa.s kill.s lar2.s lfr6.s lfr8.s
link.s lock.s loi.s lrand.s lsearch.s
lseek.s malloc.s memccpy.s memchr.s memcmp.s
memcpy.s memmove.s memset.s message.s mkdir.s
mkfifo.s mknod.s mktemp.s mli4.s mon.s
mount.s nlist.s nop.s open.s opendir.s
pathconf.s pause.s peekpoke.s perror.s pipe.s
popen.s portio.s printdat.s printk.s prints.s
ptrace.s putenv.s puts.s qsort.s rand.s
rck.s read.s readdir.s regexp.s regsub.s
rename.s ret6.s ret8.s retarea.s return.s
rewinddir.s rindex.s rmdir.s rmi4.s rmu4.s
sar2.s sbi.s scanf.s seekdir.s sendrec.s
set.s setbuf.s setgid.s setjmp.s setuid.s
signal.s sincos.s sleep.s sprintf.s stat.s
stb.s stderr.s sti.s stime.s stop.s
strcat.s strchr.s strcmp.s strcoll.s strcpy.s
strcspn.s strerror.s strhp.s strlen.s strncat.s
strncmp.s strncpy.s strpbrk.s strrchr.s strspn.s
strstr.s strtok.s strtol.s strtoul.s strxfrm.s
stty.s swab.s sync.s sysconf.s syslib.s
system.s telldir.s termcap.s time.s times.s
tmpnam.s trp.s ttyname.s umask.s umount.s
ungetc.s uniqport.s unknown.s unlink.s utime.s
vars.s vectab.s vsprintf.s wait.s rite.s
xor.s
# stddef
Definitions in /usr/include/stddef.h
typedef int ptrdiff_t;
typedef unsigned int size_t;
typedef char wchar_t;
# stdio
Definitions in /usr/include/stdio.h
extern struct _io_buf {
int _fd;
int _count;
int _flags;
char *_buf;
char *_ptr;
} *_io_table[20];
typedef unsigned size_t;
int getc ();
int getchar ();
int putc ();
int putchar ();
int feof ();
int ferror ();
void clearerr ();
struct _io_buf *fopen ();
struct _io_buf *freopen ();
int fflush ();
int fclose ();
int fgetpos ();
int fsetpos ();
long ftell ();
int fseek ();
void rewind ();
int fgetc ();
int fputc ();
size_t fread ();
size_t fwrite ();
int getw ();
int putw ();
char *gets ();
char *fgets ();
int puts ();
int fputs ();
int ungetc ();
void printf ();
void fprintf ();
char *sprintf ();
int vprintf ();
int vfprintf ();
char *vsprintf ();
int scanf ();
int fscanf ();
int sscanf ();
void setbuf ();
int setvbuf ();
int rename ();
int remove ();
void perror ();
char * tmpnam ();
struct _io_buf * tmpfile ();
int unlink ();
char * ctermid ();
char * cuserid ();
struct _io_buf *fdopen ();
int fileno ();
extern void (*__cleanup)();
void _doprintf();
int _doscanf();
void prints();
extern struct _io_buf *fopen();
extern struct _io_buf *freopen();
extern long ftell();
extern char *fgets();
extern char *gets();
# stdlib
Definitions in /usr/include/stdlib.h
typedef struct { int quot, rem; } div_t;
typedef struct { long quot, rem; } ldiv_t;
typedef unsigned int size_t;
typedef char wchar_t;
void abort();
int abs();
int atexit();
double atof();
int atoi();
long atol();
void *calloc();
div_t div();
void exit();
void free();
char *getenv();
long labs();
ldiv_t ldiv();
void *malloc();
int mblen();
size_t mbstowcs();
int mbtowc();
int rand();
void *realloc();
void srand();
double strtod();
long strtol();
int system();
size_t wcstombs();
int wctomb();
void *bsearch();
void qsort();
unsigned long int strtoul();
# string
Definitions in /usr/include/string.h
typedef unsigned int size_t;
void *memcpy();
void *memmove();
char *strcpy();
char *strcpy(char *s1, *s2)
copy s2 to s1, regresa s1
char *strncpy();
char *strncpy(char *s1, *s2; int n)
copy up to n charactters from s2 to s1, return s1
char *strcat();
char *strcat(char *s1, *s2)
concatenate s2 on s1, return result in s1
char *strncat();
char *strncat(char *s1, *s2; int n)
append up to n characters from s2 on s1, return s1
int memcmp();
int strcmp();
int strcmp(char *s1, *s2)
returns 0 if s1 = s2
-1 if s1 < s2
1 if s1 > s2
int strcoll();
int strncmp();
int strncmp(char *s1, *s2; int n)
like strcmp, but compare only n characters
size_t strxfrm();
void *memchr();
char *strchr();
char *strchr(char *s; char c)
return pointer to first occurence of c in s, or NULL
size_t strcspn();
char *strpbrk();
char *strrchr();
char *strrchr(char *s; char c)
return pointer to last occurence of c in s, or NULL
size_t strspn();
char *strstr();
char *strtok();
void *memset();
char *strerror();
size_t strlen();
These functions not provided in Minix v. 1.5, written by asw, can be found
in file /usr/include/string2.h
int strpos(char *s, char c)
returns index of position of c in s or -1 if not found
char *strnrtcpy(char *s1, *s2; int i)
copy right substring of s2 to s1, starting with index i, returns s1
ref: Muldner y Steele pp. 559-560
# byteorder
NAME
htonl, htons, ntohl, ntohs - convert values between host
and network byte order
SYNOPSIS
#include <machine/endian.h>
netlong = htonl(hostlong);
u_long netlong, hostlong;
netshort = htons(hostshort);
u_short netshort, hostshort;
hostlong = ntohl(netlong);
u_long hostlong, netlong;
hostshort = ntohs(netshort);
u_short hostshort, netshort;
DESCRIPTION
These routines convert 16 and 32 bit quantities between network
byte order and host byte order. On machines such as the SUN
these routines are defined as null macros in the include file
< netinet/in.h >.
These routines are most often used in conjunction with Internet
addresses and ports as returned by gethostbyname(3) and
getservent(3).
SEE ALSO
gethostbyname(3), getservent(3)
BUGS
The VAX handles bytes backwards from most everyone else in
the world. This is not expected to be fixed in the near future.
OTHER INFO
These functions are part of the Tnet library.
# gethostent
NAME
gethostbyname, gethostbyaddr, gethostent,
sethostent, endhostent, herror - get network host entry
SYNOPSIS
#include <netdb.h>
extern int h_errno;
struct hostent *gethostbyname(name)
char *name;
struct hostent *gethostbyaddr(addr, len, type)
char *addr; int len, type;
struct hostent *gethostent()
sethostent(stayopen)
int stayopen;
endhostent()
herror(string)
char *string;
DESCRIPTION
Gethostbyname and gethostbyaddr each return a pointer to an object
with the following structure describing an internet host referenced
by name or by address, respectively. This structure contains either
the information obtained from the name server, named(8), or broken-
out fields from a line in /etc/hosts . If the local name server is
not running these routines do a lookup in /etc/hosts .
struct hostent {
char *h_name; /* official name of host */
char **h_aliases; /* alias list */
int h_addrtype; /* host address type */
int h_length; /* length of address */
char **h_addr_list; /* list of addresses from name server */
};
#define h_addr h_addr_list[0] /* address, for backward compatibility */
The members of this structure are:
h_name Official name of the host.
h_aliases A zero terminated array of alternate names for the
host.
h_addrtype The type of address being returned; currently always
AF_INET.
h_length The length, in bytes, of the address.
h_addr_list A zero terminated array of network addresses for the
host. Host addresses are returned in network byte
order.
h_addr The first address in h_addr_list; this is for
backward compatiblity.
When using the nameserver, gethostbyname will search for the named
host in the current domain and its parents unless the name ends in
a dot. If the name contains no dot, and if the environment variable
``HOSTALAIASES'' contains the name of an alias file, the alias file
will first be searched for an alias matching the input name.
See hostname(7) for the domain search procedure and the alias file
format.
Sethostent may be used to request the use of a connected TCP socket
for queries.
If the stayopen flag is non-zero, this sets the option to send all
queries to the name server using TCP and to retain the connection
after each call to gethostbyname or gethostbyaddr .
Otherwise, queries are performed using UDP datagrams.
Endhostent closes the TCP connection.
DIAGNOSTICS
Error return status from gethostbyname and gethostbyaddr is
indicated by return of a null pointer. The external integer
h_errno may then be checked to see whether this is a temporary
failure or an invalid or unknown host. The routine herror
can be used to print an error message describing the failure.
If its argument string is non-NULL, it is printed, followed by a
colon and a space. The error message is printed with a trailing
newline.
h_errno can have the following values:
HOST_NOT_FOUND No such host is known.
TRY_AGAIN This is usually a temporary error and
means that the local server did not receive
a response from an authoritative server.
A retry at some later time may succeed.
NO_RECOVERY Some unexpected server failure was
encountered. This is a non-recoverable
error.
NO_DATA The requested name is valid but does not
have an IP address; this is not a temporary
error. This means that the name is known
to the name server but there is no address
associated with this name.
Another type of request to the name server
using this domain name will result in an
answer; for example, a mail-forwarder may
be registered for this domain.
FILES
/etc/hosts
SEE ALSO
resolver(3), hosts(5), hostname(7), named(8)
CAVEAT
Gethostent is defined, and sethostent and endhostent are redefined,
when libc is built to use only the routines to lookup in /etc/hosts
and not the name server.
Gethostent reads the next line of /etc/hosts , opening the file if
necessary.
Sethostent is redefined to open and rewind the file. If the
stayopen argument is non-zero, the hosts data base will not be
closed after each call to gethostbyname or gethostbyaddr .
Endhostent is redefined to close the file.
BUGS
All information is contained in a static area so it must be copied
if it is to be saved. Only the Internet address format is
currently understood.
OTHER INFO
These functions are part of the Tnet library.
# getnetent
NAME
getnetent, getnetbyaddr, getnetbyname,
setnetent, endnetent - get network entry
SYNOPSIS
#include <netdb.h>
struct netent *getnetent()
struct netent *getnetbyname(name)
char *name;
struct netent *getnetbyaddr(net, type)
long net;
int type;
setnetent(stayopen)
int stayopen;
endnetent()
DESCRIPTION
Getnetent , getnetbyname , and getnetbyaddr each return a pointer
to an object with the following structure containing the broken-out
fields of a line in the network data base, /etc/networks .
struct netent {
char *n_name; /* official name of net */
char **n_aliases; /* alias list */
int n_addrtype; /* net number type */
unsigned long n_net; /* net number */
};
The members of this structure are:
n_name The official name of the network.
n_aliases A zero terminated list of alternate names for
the network.
n_addrtype The type of the network number returned; currently
only AF_INET.
n_net The network number. Network numbers are returned
in machine byte order.
Getnetent reads the next line of the file, opening the file if
necessary.
Setnetent opens and rewinds the file. If the stayopen flag is
non-zero, the net data base will not be closed after each call to
getnetbyname or getnetbyaddr .
Endnetent closes the file.
Getnetbyname and getnetbyaddr sequentially search from the beginning
of the file until a matching net name or net address and type is
found, or until EOF is encountered.
Network numbers are supplied in host order.
FILES
/etc/networks
SEE ALSO
networks(5)
DIAGNOSTICS
Null pointer (0) returned on EOF or error.
BUGS
All information is contained in a static area so it must be copied
if it is to be saved. Only Internet network numbers are currently
understood. Expecting network numbers to fit in no more than 32
bits is probably naive.
OTHER INFO
These functions are part of the Tnet library.
# getprotoent
NAME
getprotoent, getprotobynumber, getprotobyname,
setprotoent, endprotoent - get protocol entry
SYNOPSIS
#include <netdb.h>
struct protoent *getprotoent()
struct protoent *getprotobyname(name)
char *name;
struct protoent *getprotobynumber(proto)
int proto;
setprotoent(stayopen)
int stayopen
endprotoent()
DESCRIPTION
Getprotoent , getprotobyname , and getprotobynumber each return a
pointer to an object with the following structure containing the
broken-out fields of a line in the network protocol data base,
/etc/protocols .
struct protoent {
char *p_name; /* official name of protocol */
char **p_aliases; /* alias list */
int p_proto; /* protocol number */
};
The members of this structure are:
p_name The official name of the protocol.
p_aliases A zero terminated list of alternate names for the
protocol.
p_proto The protocol number.
Getprotoent reads the next line of the file, opening the file if
necessary.
Setprotoent opens and rewinds the file. If the stayopen flag is
non-zero, the net data base will not be closed after each call to
getprotobyname or getprotobynumber .
Endprotoent closes the file.
Getprotobyname and getprotobynumber sequentially search from the
beginning of the file until a matching protocol name or protocol
number is found, or until EOF is encountered.
FILES
/etc/protocols
SEE ALSO
protocols(5)
DIAGNOSTICS
Null pointer (0) returned on EOF or error.
BUGS
All information is contained in a static area so it must be copied
if it is to be saved. Only the Internet protocols are currently
understood.
OTHER INFO
These functions are part of the Tnet library.
# getservent
NAME
getservent, getservbyport, getservbyname,
setservent, endservent - get service entry
SYNOPSIS
#include <netdb.h>
struct servent *getservent()
struct servent *getservbyname(name, proto)
char *name, *proto;
struct servent *getservbyport(port, proto)
int port; char *proto;
setservent(stayopen)
int stayopen
endservent()
DESCRIPTION
Getservent , getservbyname , and getservbyport each return a pointer
to an object with the following structure containing the broken-out
fields of a line in the network services data base, /etc/services .
struct servent {
char *s_name; /* official name of service */
char **s_aliases; /* alias list */
int s_port; /* port service resides at */
char *s_proto; /* protocol to use */
};
The members of this structure are:
s_name The official name of the service.
s_aliases A zero terminated list of alternate names for the
service.
s_port The port number at which the service resides.
Port numbers are returned in network byte order.
s_proto The name of the protocol to use when contacting the
service.
Getservent reads the next line of the file, opening the file if
necessary.
Setservent opens and rewinds the file. If the stayopen flag is
non-zero, the net data base will not be closed after each call to
getservbyname or getservbyport .
Endservent closes the file.
Getservbyname and getservbyport sequentially search from the
beginning of the file until a matching protocol name or
port number is found, or until EOF is encountered. If a protocol
name is also supplied (non-NULL), searches must also match the
protocol.
FILES
/etc/services
SEE ALSO
getprotoent(3), services(5)
DIAGNOSTICS
Null pointer (0) returned on EOF or error.
BUGS
All information is contained in a static area so it must be copied
if it is to be saved. Expecting port numbers to fit in a 32 bit
quantity is probably naive.
OTHER INFO
These functions are part of the Tnet library.
# inet
NAME
inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr,
inet_lnaof, inet_netof - Internet address manipulation routines
SYNOPSIS
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int inet_aton(cp, pin)
char *cp;
struct in_addr *pin;
unsigned long inet_addr(cp)
char *cp;
unsigned long inet_network(cp)
char *cp;
char *inet_ntoa(in)
struct in_addr in;
struct in_addr inet_makeaddr(net, lna)
int net, lna;
unsigned long inet_lnaof(in)
struct in_addr in;
unsigned long inet_netof(in)
struct in_addr in;
DESCRIPTION
The routines inet_aton , inet_addr and inet_network interpret
character strings representing numbers expressed in the Internet
standard . (dotted decimal) notation.
The inet_aton routine interprets the specified character string as
an Internet address, placing the address into the structure provided.
It returns 1 if the string was successfully interpreted, or 0 if the
string is invalid.
The inet_addr and inet_network functions return numbers suitable for
use as Internet addresses and Internet network numbers, respectively.
The routine inet_ntoa takes an Internet address and returns an ASCII
string representing the address in . (dotted decimal) notation. The
routine inet_makeaddr takes an Internet network number and a local
network address and constructs an Internet address from it. The
routines inet_netof and inet_lnaof break apart Internet host
addresses, returning the network number and local network address
part, respectively.
All Internet addresses are returned in network order (bytes ordered
from left to right). All network numbers and local address parts are
returned as machine format integer values.
INTERNET ADDRESSES
Values specified using the \*(lq.\*(rq notation take one of the
following forms:
a.b.c.d
a.b.c
a.b
a
When four parts are specified, each is interpreted as a byte of
data and assigned, from left to right, to the four bytes of an
Internet address. Note that when an Internet address is viewed
as a 32-bit integer quantity on the VAX the bytes referred to
above appear as d.c.b.a. That is, VAX bytes are ordered from right
to left.
When a three part address is specified, the last part is interpreted
as a 16-bit quantity and placed in the right-most two bytes of the
network address. This makes the three part address format
convenient for specifying Class B network addresses as 128.net.host.
When a two part address is supplied, the last part is interpreted as
a 24-bit quantity and placed in the right most three bytes of the
network address. This makes the two part address format convenient
for specifying Class A network addresses as net.host.
When only one part is given, the value is stored directly in the
network address without any byte rearrangement.
All numbers supplied as parts in a . notation may be decimal, octal,
or hexadecimal, as specified in the C language (i.e., a leading 0x
or 0X implies hexadecimal; otherwise, a leading 0 implies octal;
otherwise, the number is interpreted as decimal).
SEE ALSO
gethostbyname(3), getnetent(3), hosts(5), networks(5),
DIAGNOSTICS
The constant INADDR_NONE is returned by inet_addr and inet_network
for malformed requests.
BUGS
The value INADDR_NONE (0xffffffff) is a valid broadcast address,
but inet_addr cannot return that value without indicating failure.
The newer inet_aton function does not share this problem. The
problem of host byte ordering versus network byte ordering is
confusing. The string returned by inet_ntoa resides in a static
memory area.
Inet_addr should return a struct in_addr.
OTHER INFO
These functions are part of the Tnet library.
# resolver
NAME
res_query, res_search, res_mkquery, res_send,
res_init, dn_comp, dn_expand - resolver routines
SYNOPSIS
#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/nameser.h>
#include <resolv.h>
res_query(dname, class, type, answer, anslen)"
char *dname;
int class, type;
u_char *answer;
int anslen;
res_search(dname, class, type, answer, anslen)"
char *dname;
int class, type;
u_char *answer;
int anslen;
res_mkquery(op, dname, class, type, data, datalen, newrr, buf, buflen)"
int op;
char *dname;
int class, type;
char *data;
int datalen;
struct rrec *newrr;
char *buf;
int buflen;
res_send(msg, msglen, answer, anslen)
char *msg;
int msglen;
char *answer;
int anslen;
res_init()
dn_comp(exp_dn, comp_dn, length, dnptrs, lastdnptr)
char *exp_dn, *comp_dn;
int length;
char **dnptrs, **lastdnptr;
dn_expand(msg, eomorig, comp_dn, exp_dn, length)
char *msg, *eomorig, *comp_dn, exp_dn;
int length;
DESCRIPTION
These routines are used for making, sending and interpreting
query and reply messages with Internet domain name servers.
Global configuration and state information that is used by the
resolver routines is kept in the structure _res . Most of the
values have reasonable defaults and can be ignored. Options
stored in _res.options are defined in resolv.h and are as follows.
Options are stored as a simple bit mask containing the bitwise ``or''
of the options enabled.
RES_INIT
True if the initial name server address and default domain name are
initialized (i.e., res_init has been called).
RES_DEBUG
Print debugging messages.
RES_AAONLY
Accept authoritative answers only.
With this option, res_send should continue until it finds an
authoritative answer or finds an error. Currently this is not
implemented.
RES_USEVC
Use TCP connections for queries instead of UDP datagrams.
RES_STAYOPEN
Used with RES_USEVC to keep the TCP connection open between
queries. This is useful only in programs that regularly do many
queries. UDP should be the normal mode used.
RES_IGNTC
Unused currently (ignore truncation errors, i.e., don't retry
with TCP).
RES_RECURSE
Set the recursion-desired bit in queries.
This is the default. (res_send does not do iterative queries and
expects the name server to handle recursion.)
RES_DEFNAMES
If set, res_search will append the default domain name to
single-component names (those that do not contain a dot).
This option is enabled by default.
RES_DNSRCH
If this option is set, res_search will search for host names in
the current domain and in parent domains; see .IR hostname (7).
This is used by the standard host lookup routine gethostbyname (3).
This option is enabled by default.
The res_init routine reads the configuration file (if any; see
resolver(5)) to get the default domain name, search list and
the Internet address of the local name server(s). If no server is
configured, the host running the resolver is tried. The current
domain name is defined by the hostname if not specified in the
configuration file; it can be overridden by the environment
variable LOCALDOMAIN. Initialization normally occurs on the first
call to one of the following routines.
The res_query function provides an interface to the server query
mechanism. It constructs a query, sends it to the local server,
awaits a response, and makes preliminary checks on the reply.
The query requests information of the specified type and
class for the specified fully-qualified domain name dname .
The reply message is left in the answer buffer with length
anslen supplied by the caller.
The res_search routine makes a query and awaits a response like
res_query , but in addition, it implements the default and search
rules controlled by the RES_DEFNAMES and RES_DNSRCH options.
It returns the first successful reply.
The remaining routines are lower-level routines used by res_query .
The res_mkquery function constructs a standard query message and
places it in buf . It returns the size of the query, or -1 if the
query is larger than buflen . The query type op is usually QUERY,
but can be any of the query types defined in <arpa/nameser.h> .
The domain name for the query is given by dname .
Newrr is currently unused but is intended for making update messages.
The res_send routine sends a pre-formatted query and returns an
answer. It will call res_init if RES_INIT is not set, send the
query to the local name server, and handle timeouts and retries.
The length of the reply message is returned, or -1 if there were
errors.
The dn_comp function compresses the domain name exp_dn and stores
it in comp_dn . The size of the compressed name is returned or
-1 if there were errors. The size of the array pointed to by
comp_dn is given by length .
The compression uses an array of pointers dnptrs to previously-
compressed names in the current message. The first pointer points
to to the beginning of the message and the list ends with NULL.
The limit to the array is specified by lastdnptr .
A side effect of dn_comp is to update the list of pointers for
labels inserted into the message as the name is compressed.
If dnptr is NULL, names are not compressed.
If lastdnptr is NULL, the list of labels is not updated.
The dn_expand entry expands the compressed domain name
comp_dn to a full domain name. The compressed name is contained
in a query or reply message; msg is a pointer to the beginning of
the message. The uncompressed name is placed in the buffer
indicated by exp_dn which is of size length . The size of
compressed name is returned or -1 if there was an error.
FILES
/etc/resolv.conf see resolver(5)
SEE ALSO
gethostbyname(3), named(8), resolver(5), hostname(7),
RFC1032, RFC1033, RFC1034, RFC1035, RFC974,
SMM:11 Name Server Operations Guide for BIND
OTHER INFO
These functions are part of the Tnet library.

View File

@@ -0,0 +1,285 @@
# MAN4
MAN4 (4)
Section 4 of the Manual describes file formats.
The sections of the manual are:
Section 1: User commands
Section 2: System calls
Section 3: C library
-->Section 4: File formats
Section 5: Miscellaneous
Section 6: Games
Section 7: Special files (devices)
Section 8: Maintenance procedures
# man_template
man_template (4)
This is a template for writing man page entries.
The first line of a Minix 1.5 man page entry should start with
a pound sign (#) followed by the names by which the entry should be
listed in the index. The Minix 1.5 man command will use this line to
construct the index. This line is not displayed; all lines up to but
not including the next line beginning with "#" will be displayed.
[# name1 name2 ... ]
The rest of this template is based on the design of Kernighan and
Pike, pp. 308++. This is the format used by Unix System V Release 4,
but it is not the same format as used in the Minix Users Guide or the
Minix 1.5 Reference Manual.
Entries written according to this template should be processed
by nroff -man and added to the proper file, man1, man2, etc., in the
directory /usr/man. A new entry may be appended to the appropriate
file, but if the entry is meant to replace an existing entry note that
only the first occurence of a keyword will be found when the index is
built. Thus a replacement entry ought to be added to the beginning of
the file, or the file ought to be edited to remove the old entry.
.TH COMMAND section number
.SH NAME
command \- brief description of function
.SH SYNOPSIS
.B command
options
.SH DESCRIPTION
Detailed description of programs and options.
Paragraphs are begun by .PP at the left margin.
.PP
This is a new paragraph.
.SH FILES
Files used by the command, e.g., passwd(1) uses /etc/passwd.
.SH "SEE ALSO"
References to related documents, including other man pages.
.SH DIAGNOSTICS
Description of any unusual output (e.g., see cmp(1))
.SH BUGS
Surprising features (not always bugs).
# crontab
crontab (4)
NAME:
/usr/lib/crontab
DESCRIPTION:
This is the file used by cron for scheduling jobs. The entries
of /usr/lib/crontab contain 6 elements each. Some examples follow:
Min Hr Dat Mo Day Command
* * * * * /bin/atrun # execute atrun every minute
* * * * * /usr/bin/date >/dev/tty0 # date every minute
0 * * * * /usr/bin/date >/dev/tty0 # date every hour
30 4 * * 1-5 /bin/backup /dev/fd1 # backup Monday to Friday
at 0430
30 19 * * 1,3,5 /bin/backup # MWF at 1930
0 9 25 12 * /usr/bin/sing >/dev/tty0 # only Xmas morning at 0900
SEE ALSO:
cron (1)
Minix 1.5 Reference Manual 129
# at
at (4)
NAME:
/usr/spool/at
DESCRIPTION:
This is the directory used by at, read by atrun to see if there is
work to be done when atrun is executed.
The files created by at have names like /usr/spool/at/AA.DDD.HHMM.UU
(in which AA DDD HH and MM specify the date and time and UU is a unique number.
Note that when a program executes it cannot use stdin or stdout
if it isn't specifically redirected.
For atrun to function the directroy /usr/spool/at/past must exist.
The files which have already been executed are placed here.
SEE ALSO:
at (1), atrun (1)
Minix 1.5 Reference Manual 120
# ttys
/etc/ttys (4)
The ttys file is read by init to determine which terminals need a login
process.
The ttys file consists of three-field lines as follows:
abc
where
a = 0 (line disabled = no shell)
1 (enabled = shell started)
2 (enabled through a GETTY)
b = a-r defines UART parameters (baud, bits, parity)
0 for console
c = line number or line name
The letters a-r correspond to the 18 entries of the uart table below.
For example, 'a' is 110 baud, 8 bits, no parity; 'b' is 300 baud, 8
bits, no parity; 'j' is 2400 baud, 7 bits, even parity; etc. If the
third field is a digit, then the terminal device will be /dev/tty{c},
otherwise it will be /dev/{c}. Note that since login cheats in
determining the slot number, entries in /etc/ttys must always be in
minor device number order - the first line should be for tty0, the
second for tty1, and so on.
Example /etc/tty file (the text following # should not be in /etc/ttys)
1c0 # /dev/tty0 is enabled as 1200 baud, no parity
2c1 # /dev/tty1 is enabled using /etc/getty for speed detection
0c2 # /dev/tty2 is disabled
If any of the /etc/tty entries start with a 2, the file /etc/getty must
be present and executable.
'a': 110 baud, 8 bits, no parity */
'b': 300 baud, 8 bits, no parity */
'c': 1200 baud, 8 bits, no parity */
'd': 2400 baud, 8 bits, no parity */
'e': 4800 baud, 8 bits, no parity */
'f': 9600 baud, 8 bits, no parity */
'g': 110 baud, 7 bits, even parity */
'h': 300 baud, 7 bits, even parity */
'i': 1200 baud, 7 bits, even parity */
'j': 2400 baud, 7 bits, even parity */
'k': 4800 baud, 7 bits, even parity */
'l': 9600 baud, 7 bits, even parity */
'm': 110 baud, 7 bits, odd parity */
'n': 300 baud, 7 bits, odd parity */
'o': 1200 baud, 7 bits, odd parity */
'p': 2400 baud, 7 bits, odd parity */
'q': 4800 baud, 7 bits, odd parity */
'r': 9600 baud, 7 bits, odd parity */
reference: /usr/src/mxboot/init.c
# passwd
/etc/passwd (4)
This is the user data base. There are seven fields separated
by colons:
login name
password (encrypted)
uid
gid
name
home directory
shell
An entry for user fozzie might look like this:
fozzie::15:1:Fozzie the Bear:/usr/fozzie:/bin/sh
Each user must have a unique uid. The password must be intially left
blank when an entry is created; an encrypted password is created when
the user or the superuser use passwd(1) to change the original null
password. If * is placed in the password field no login will be
possible. Typically this is done for fields for "users" such as bin or
uucp.
# rc
/etc/rc (4)
The etc/rc file is executed when the system is first booted.
It is used to mount standard file systems, perform various
initializations, and start daemons such as update and network software.
# startup
/usr/tnet/startup (4)
This is the startup file for Tnet. It is usually called by /etc/rc,
but can be invoked manually if it isn't desired to start the net software
automatically at boot time.
# profile
/etc/profile (4)
/etc/profile executes each time any user logs in. It sets prompts,
paths, etc. An individual user can have a <home>/.profile file which will
execute after /etc/profile and allows for individualized initialization.
See also: .profile
# .profile
<home>/.profile (4)
The .profile in the home directory is optional. It allows an
individual user to override the initialization done by all users by
/etc/profile.
See also: profile
# psdatabase
/etc/psdatabase (4)
/etc/psdatabase contains information about the structure of the
kernel, and is used by ps(1). It must be rebuilt by ps -U whenever a
new kernel is compiled. If the kernel recompilation is radical (for
instance, adding or removing a driver) ps probably needs to be
recompiled also.
# .kermrc
<home>/.kermrc (4)
This is the initialization file for kermit. Each user has an
individual copy in the home directory. See the kermit documentation for
more information.
# .ellepro.e ellepro.b1
<home>/.ellepro.* (4)
This is the configuration file for the elle editor. .ellepro.e is
the source file; it is compiled by ellec to .ellepro.b1, which is readable
only by elle.
# gettydefs
/etc/gettydefs
/etc/gettydefs tells getty what to do. The file has the format:
label#initial flags#final flags#login prompt#next label
When getty is started it searches for a line with a label that
matches the speed parameter; it uses the first line if there is no
match. The initial flags are used until login is executed, when the
final flags are set.
These are the flags recognized:
Speeds: B300, B1200, B2400, B4800, B9600. B19200, B38400, and
B115200 are compile-time options.
Other flags:
TABS, -TABS
NONE, ODD, -ODD, EVEN, -EVEN
RAW, -RAW
CBREAK, -CBREAK
ECHO, -ECHO
DCD, -DCD
NL, -NL
BITS5, BITS6, BITS7, BITS8,
SANE, DEFAULT
EXAMPLE
9600# B9600 # B9600 SANE TABS #login: #4800
4800# B4800 # B4800 SANE TABS #login: #2400
2400# B2400 # B2400 SANE TABS #login: #1200
1200# B1200 # B1200 SANE TABS #login: #300
300# B300 # B300 SANE TABS #login: #9600
FILES
/etc/issue contains the name of the system to be shown at login
time.
(asw 950226)

View File

@@ -0,0 +1,352 @@
# MAN5
MAN5 (5)
Section 5 of the Manual is for information that doesn't fit in any other
section, for example ASCII tables.
The sections of the manual are:
Section 1: User commands
Section 2: System calls
Section 3: C library
Section 4: File formats
-->Section 5: Miscellaneous
Section 6: Games
Section 7: Special files (devices)
Section 8: Maintenance procedures
# ansi ANSI
ansi (5)
ANSII escape sequences
Sequences for cursor movement and graphics
ESC[Pl;PcH move to line Pl, column Pc
ESC[PnA move up Pn lines without changing column
ESC[PnB move down Pn lines without changing column
ESC[PnC move ahead Pn columns in the same line
ESC[PnD move back Pn columns in the same line
ESC[K erase from current postion to end of line
ESC[Psm Change display mode
Values for Ps:
Text attributes:
0 normal
1 bright
4 underscored (only monochrome)
5 blinking
7 reversed video
8 invisible
Foreground color:
30 black
31 red
32 green
33 yellow
34 blue
35 magenta
36 cyan
37 white
Background color:
40 black
41 red
42 green
43 yellow
44 blue
45 magenta
46 cyan
47 white
SEE ALSO:
MS-DOS 5.0 Reference Guide, Chapter 15, ANSI.SYS
Note: Minix implements only a subset of the ANSI escape sequences.
# ascii ASCII
ascii (5)
ASCII Character codes (with IBM extended characters)
00 10 20 30 40 50 60 70 80 90 A0 B0 C0 D0 E0 F0 (hex)
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
+0<> ^@<40> ^P<> SP<53> 0 <20> @ <20> P <20> ` <20> p <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+1<> ^A<>XOF<4F> ! <20> 1 <20> A <20> Q <20> a <20> q <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+2<> ^B<> ^R<> " <20> 2 <20> B <20> R <20> b <20> r <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+3<> ^C<>XON<4F> # <20> 3 <20> C <20> S <20> c <20> s <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+4<> ^D<> ^T<> $ <20> 4 <20> D <20> T <20> d <20> t <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+5<> ^E<> ^U<> % <20> 5 <20> E <20> U <20> e <20> u <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+6<> ^F<> ^V<> & <20> 6 <20> F <20> V <20> f <20> v <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+7<>BEL<45> ^W<> ' <20> 7 <20> G <20> W <20> g <20> w <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+8<>TAB<41> ^X<> ( <20> 8 <20> H <20> X <20> h <20> x <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+9<> BS<42> ^Y<> ) <20> 9 <20> I <20> Y <20> i <20> y <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+A<> LF<4C> ^Z<> * <20> : <20> J <20> Z <20> j <20> z <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+B<> ^K<>ESC<53> + <20> ; <20> K <20> [ <20> k <20> { <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+C<> FF<46> ^\<5C> , <20> < <20> L <20> \ <20> l <20> | <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+D<> CR<43> ^]<5D> - <20> = <20> M <20> ] <20> m <20> } <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+E<> ^N<> ^^<5E> . <20> > <20> N <20> ^ <20> n <20> ~ <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
+F<> ^O<> ^_<> / <20> ? <20> O <20> _ <20> o <20>DEL<45> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# escape
escape (5)
The complete set of C escape sequences is:
\a alert (bell) char \\ backslash
\b backspace \? question mark
\f formfeed \' single quote
\n newline \" double quote
\r carriage return \ooo char specified as octal
\t horizontal tab \xhh char specified as hex
\v vertical tab \0 null
SEE ALSO:
Kernighan and Ritchie, ed. 2, p. 38
# TCP tcp
TCP Well-known port assignments:
Decimal Keyword UNIX Keyword Description
0 Reserved
1 TCPMUX - TCP Multiplexor
5 RJE - Remote Job Entry
7 ECHO echo Echo
9 DISCARD discard Discard
11 USERS systat Active Users
13 DAYTIME daytime Daytime
15 - netstat Network status program
17 QUOTE qotd Quote of the Day
19 CHARGEN chargen Character Generator
20 FTP-DATA ftp-data File Transfer Protocol (data)
21 FTP ftp File Transfer Protocol
23 TELNET telnet Terminal Connection
25 SMTP smtp Simple Mail Transfer Protocol
37 TIME time Time
42 NAMESERVER name Host Name Server
43 NICNAME whois Who Is
53 DOMAIN nameserver Domain Name Server
77 RJE rje any private RJE service
79 FINGER finger Finger
93 DCP - Device Control Protocol
95 SUPDUP supdup SUPDUP Protocol
101 HOSTNAME hostnames NIC Host Name Server
102 ISO-TSAP iso-tsap ISO-TSAP
103 X400 x400 X.400 Mail Service
104 X400-SND x400-snd X.400 Mail Sending
111 SUNRPC sunrpc SUN Remote Procedure Call
113 AUTH auth Authentication Service
117 UUCP-PATH uucp-path UUCP Path Service
119 NNTP nntp USENET News Transfer Protocol
129 PWDGEN - Password Generator Protocol
139 NETBIOS-SSN - NETBIOS Session Service
160-223 Reserved
Ref: Comer, Internetworking with TCP/IP, Vol 1., p. 201
# UDP udp
UDP Well-known port assignments:
Decimal Keyword UNIX Keyword Description
0 Reserved
7 ECHO echo Echo
9 DISCARD discard Discard
11 USERS systat Active Users
13 DAYTIME daytime Daytime
15 - netstat Who is up or NETSTAT
17 QUOTE qotd Quote of the Day
19 CHARGEN chargen Character Generator
37 TIME time Time
42 NAMESERVER name Host Name Server
43 NICNAME whois Who Is
53 DOMAIN nameserver Domain Name Server
67 BOOTPS bootps Bootstrap Protocol Server
68 BOOTPC bootpc Bootstrap Protocol Client
69 TFTP tftp Trivial File Transfer
111 SUNRPC sunrpc SUN Microsystems RPC
123 NTP ntp Network Time Protocol
161 - snmp SNMP net monitor
162 - snmp-trap SNMP traps
512 - biff UNIX comsat
513 - who UNIX rwho daemon
514 - syslog system log
515 - timed Time daemon
Ref: Comer, Internetworking with TCP/IP, Vol 1., p. 167
# man_sections
man_sections (5)
The standard sections of the Unix manual are:
Section 1: User commands - for general users
Section 2: System calls - primarily for programmers
Section 3: C library - primarily for programmers
Section 4: File formats
Section 5: Miscellaneous - information that doesn't fit elsewhere
Section 6: Games and entertainment (unofficial
Section 7: Special files and devices (in /dev)
Section 8: Maintenance and installation procedures
In Minix 1.5 each of these is in a file /usr/man/man1 .. /usr/man/man8.
The man command searches section 1 if no section is specified.
On my system I also have several other non-standard man sections:
/usr/man/man0 is a condensed man file, with man entries for
some of the Minix-specific utilities needed for initial installation.
Common Unix commands that can be found in standard Unix users' guides
(like cat, cp, ls, etc.) are not included unless their syntax is
non-standard in Minix.
/usr/man/man9 is for man pages for Atari, Amiga, MacIntosh, and
other non-IBM-PC versions of Minix.
/usr/man/man1esp .. /usr/man/man8esp are Spanish language versions
of the corresponding sections. These are not as current or complete as
the English version.
(asw 16.02.95)
# regular_expressions
Regular Expressions (5)
Mined, ed, grep, and other Minix commands use regular expressions
for searching text.
The rules for forming regular expressions are:
1. Every displayable character matches itself.
2. . (period) matches any character except newline.
3. ^ (circumflex) matches the start of a line.
4. $ (dollar) matches the end of a line.
5. \c matches character c, including period, circumflex, dollar,
etc.
6. [<string>] matches any character in <string>.
7. [^<string>] matches any character not in the <string>.
8. [x-y] matches any character including and between x and y (e.g.,
[a-z]matches any lower case alphabetic character).
9. <pattern>* matches any number (0 or more) of occurences of <pattern>.
Examples of regular expressions:
The boy matches the string "The boy"
^$ matches any empty line
^.$ matches any line containing exactly one character
^A.*\.$ matches any line beginning with "A" and ending with a period
^[A-Z]*$ matches an empty line or any line containing only upper case
alphabetic characters
[A-Z0-9] matches any line containing an upper case letter or a numeric
digit
.*X matches any line ending in "X"
A.*B matches any line containing an "A" followed (but not necessarily
immediately) by a "B"
See also: ed(1), grep(1), mined(1)
(asw 13.02.95 based on Minix 1.5 Reference Manual))
# mined_commands
Mined Commands (5)
Cursor movement Screen movement
arrows indicated direction Home 1st character of file
ctrl-A go to start of current line End last character
ctrl-Z go to end of current line PgUp move up one screenfull
ctrl-^ move up PgDn move down one screenfull
ctrl-_ move down ctrl-U move up 1 line
ctrl-F forward by 1 word ctrl-D move down 1 line
ctrl-B backward by 1 word
Text modification Buffer operations
Del erase char under cursor ctrl-@ set mark for ctrl-C and ctrl-K
Bkspace erase char to left of cursor ctrl-C copy to buffer
ctrl-N erase following word ctrl-K delete and save to buffer
ctrl-P erase previous word ctrl-Y insert buffer contents
ctrl-T delete to end of line ctrl-Q write buffer to a file
ctrl-O open a new line
ctrl-G insert (Get) a file
Miscellaneous
num+ search forward ctrl-W write file to disk
num- search back ctrl-X exit
num5 display status of file ctrl-S shell
ctrl-] go to line (by number) ctrl-\ abort
ctrl-R replace (global) ctrl-E redraw screen
ctrl-L replace (line) ctrl-V get (Visit) new file
Control characters cannot be entered into a file by typing them
directly, because they are all used as editor commands. To enter a
control character press and release Alt-Escape and then type the
control character. Control characters in the text are displayed in
reverse video.
Searches in Mined use regular expressions.
See also: mined(1), regular_expressions(5)
(asw 24.01.96, based on Minix 1.5 Reference Manual)
# man_pages
Man_pages(5)
Most Unix man commands use a database of individual files, one
for each manual "page". Each section of the manual occupies a
directory, man<section> and the man command searches through a preset
list of such directories. Typically these files are formatted for
processing by a text formatter such as nroff, and the man command pipes
the files through the formatter. It is also common to have a set of
cat<section> directories in which preformatted versions of frequently
accessed man pages are kept.
The Minix 1.5 man command uses text files which are concatenations of
the individual man pages. The files are in the /usr/man directory, and
are named /usr/man/man<n>. The <n> suffix is normally a single digit
number, but longer strings may also be used. Within each man<n> file
pages are delimited by a line with a "#" in the first column, followed
by the various keywords by which the page may be retrieved. For each
text file there is an index file, which allows the Minix 1.5 man
command to display a menu of the available man commands in each
section. Man builds new index files whenever it finds that a text file
is newer than the corresponding index file.
Originally Minix was distributed without any man text files in machine
readable form, but with an extensive printed manual. As upgrades to
Minix became available over the net there was also a need for updated
man text, and man files are now available from various ftp sites. In
addition, various add-ons to Minix have their own man pages.
Man pages distributed over the net generally are in the standard Unix form
of one file per subject, containing formatting commands for use with nroff
and the /usr/lib/tmac/tmac.an macro page. Unfortunately many of the man
pages that have been distributed over the net have been written on systems
with much more sophisticated sets of macros than were distributed with
Minix, so just using nroff -man to process such a page may not be adequate
to make into readable text. There is a shell script, ast2man, that may
help to convert some of the man pages written by Andrew Tanenbaum, but
converting a man page received over the net to a form suitable for
appending to one of the /usr/man/man<n> files may require some polishing
with an editor.
Once a file has been processed and edited, add a line of the form
"# name1 name2 ..."
to the beginning of the file and append it to the end of the appropriate
/usr/man/man<n> file, and it will be indexed and appear in the menu page
for that man file the next time man is invoked. There is, however, one
"gotcha" in this: When building the index man only uses the first occurence
of every "# name" line; so if you want to add a man page to replace an
existing entry you must either put your new entry at the beginning of the file
or edit the file to remove the old entry.
The man pages in this version of Minix come from a variety of sources.
Most of them were written by Andrew Tanenbaum and his collaborators.
Many of these apply to modified versions of the original Minix commands
that were released with upgrades to version 1.6, and the performance of
individual commands may not be exactly as indicated in these man pages.
Some pages have been rewritten by asw, or were written by asw and his
students at the Universidad Nacional Autonoma de Nicaragua in 1993;
there is an alternative man1esp page with entires in Spanish. Some
were written by the authors of various add-ons to the original Minix
1.5. In most cases the author and reviser of a page is indicated in
the text; if no author is credited for a particular entry it was
probably written by Andrew Tanenbaum.
See also: man(1), man_sections(5), ast2man(8)
(asw 14.02.95)

View File

@@ -0,0 +1,41 @@
# MAN6
MAN6 (6)
Section 6 of the Manual is unofficial, and describes games and entertainment
programs.
The sections of the manual are:
Section 1: User commands
Section 2: System calls
Section 3: C library
Section 4: File formats
Section 5: Miscellaneous
-->Section 6: Games
Section 7: Special files (devices)
Section 8: Maintenance procedures
# animals
animals (6)
COMMAND animals - twenty-questions type guessing game about animals
SYNTAX animals [database]
FLAGS (none)
EXAMPLES animals Start the game
Animals is a guessing game. The user picks an animal and the computer
tries to guess it by posing questions that should be answered by
typing y for yes and n for no. Whenever the computer loses, it asks
some questions that allow it to improve its database, so as time goes
on, it learns. The default database should be in /usr/lib/animals.
(ast)
# banner
banner (6)
COMMAND banner - print a banner
SYNTAX banner arg ...
FLAGS (none)
EXAMPLES banner happy birthday Print a banner saying happy birthday
Banner prints its arguments on stdout using a matrix of 6 x 6 pixels
per character. The @ sign is us

View File

@@ -0,0 +1,188 @@
# MAN7
MAN7 (7)
Section 7 of the Manual describes special files and devices in the
directory /etc.
The sections of the manual are:
Section 1: User commands
Section 2: System calls
Section 3: C library
Section 4: File formats
Section 5: Miscellaneous
Section 6: Games
-->Section 7: Special files (devices)
Section 8: Maintenance procedures
# dosA, dosB, dosC, dosD, dosE, dosF
dosA (7) dosB (7) dosC (7) etc.
NAME:
/dev/dosA .. /dev/dosF - synonyms for MS-DOS directories A: .. F:
DESCRIPTION:
The dosdir, dosread, and doswrite commands use the letters A..F
to refer to MS-DOS disk devices. These commands look in the /dev directory
for names like /dev/dosA, etc., which must be linked to the standard Minix
devices names, using the ln command, for example:
ln /dev/at0 /dev/dosA
The links may vary from machine to machine, depending upon what
equipment is installed. Some possibilites are:
/dev/dosA - refers to /dev/pc0 (5.25" device) or /dev/ps0 (3.5")
/dev/dosB - refers to /dev/pc1 (5.25" device) or /dev/ps1 (3.5")
/dev/dosC - refers to /dev/hd1 (hard disk C:)
/dev/dosD - refers to /dev/hd2 (hard disk D:)
/dev/dosE - refers to /dev/at0 (5.25" device) or /dev/PS0 (3.5")
/dev/dosF - refers to /dev/at1 (5.25" device) or /dev/PS1 (3.5")
The Minix 1.5 hard disk drivers support disk partitions of up
to 64M; and dosdir, etc., cannot work with DOS partitions larger than
this.
SEE ALSO:
fd0(7), PS0(7), etc.
/usr/doc/dosread.doc, /usr/src/commands/ibm/dosread/README
# fd0
/dev/fd0 /dev/fd1
These are names for the disk drives that auto detect the format.
Disk access via these names may be slower, since the driver has to determine
what kind of disk format it is dealing with by trial and error. Also,
early versions of Minix did not support 1.44M disks (type /dev/PS0), and
this format is not auto-detecting reliably by all parts of the Minix 1.5
system, most notoriously by the original Minixc bootloader.
SEE ALSO: PS0(7), dosA(7), etc.
# PS0 at0 fd0 pat0 pc0 ps0
/dev/PS0 /dev/at0 /dev/pat0 /dev/pc0 /dev/ps0
These are some of the floppy disk device types. In every case
the 0 device corresponds to the first drive (A: under MS-DOS); there
may also be a 1 device (i.e., /dev/PS1) corresponding to the second
floppy device.
Referring to these devices rather than the generic /dev/fd0,
/dev/fd1 names is faster and possibly more reliable.
/dev/pc0 is a 5.25" 360K disk drive, XT-type
/dev/ps0 is a 3.5" 720K drive
/dev/at0 is a 5.25" 1.2M drive
/dev/PS0 is a 3.5" 1.44M drive
/dev/pcat0 is a /dev/at0-type drive with a 360K disk.
SEE ALSO: fd0(7) dosA(7), etc.
# console tty0
/dev/console, /dev/tty0
This is the video display and keyboard. The two names are equivalent.
SEE ALSO: tty(7), tty1(7), ttyp(7), ptyp(7)
# ether
/dev/ether
This is the ethernet card. With Mariusz Ostrowski's ether drivers
one ethernet interface is supported. The driver must be recompiled for the
appropriate hardware, of which several types are supported.
SEE ALSO: /usr/local/src/ether*
# hd0 hd1 hd2 hd3 hd4
/dev/hd0 /dev/hd1 /dev/hd2 /dev/hd3 /dev/hd4
These are the names used by Minix to refer to hard drive partitions.
/dev/hd0 is the root partition; this name is used by fdisk, but is never
used to refer to an actual data partition. /dev/hd1 .. /dev/hd4 refer to
the four possible partitions on the first hard drive.
Two hard drives are supported by Minix 1.5; the second drive's
partition table is referred to as /dev/hd5 and the partitions are /dev/hd6
.. /dev/hd9.
Minix 1.5 does not support sub-partitions.
Linux was originally based upon Minix, and Linux can mount Minix
hard drive partions. The Linux naming system is different, however; the
partition tables for the first and second are known to Linux as /dev/hda
and /dev/hdb, and the partitons are hda1, hda2, etc.
# kmem mem
/dev/kmem /dev/mem
These device names refer to memory, and allow programs to access
memory locations. /dev/mem refers to all of memory and /dev/kmem refers to
the memory used by the kernel.
SEE ALSO: port(7)
# lp
/dev/lp
This is the printer. Minix 1.5 supports only one parallel printer,
corresponding to the MS-DOS LPT1: device.
SEE ALSO: lpr(1)
# null
/dev/null
This is the famous /dev/null which accepts all the data you
throw at it and always gives an imediate end-of-file when you read it.
# port
/dev/port
Similar to /dev/mem and /dev/kmem, this device makes 80x86 I/O
ports accessible.
SEE ALSO: mem(7), kmem(7)
# ptyp0 ttyp0
/dev/ptyp0 ../dev/ptypf, /dev/ttyp0 .. /dev/ttypf
These are devices that provide pseudo ports for network connections.
# ram
/dev/ram
This is a RAM disk. By default Minix copies the contents of its
root directory from the ram image device to /dev/ram, making access to the
most-used files very rapid. In this mode the size of the RAM disk is
fixed by the size of the ram-image device.
Using the boot monitor it is also possible to create an empty
/dev/ram of any desired size, which can be mounted at any point in the
Minix file system except the root. With standard Minix 1.5 it is not
possible to make a root RAM device of arbitrary size.
SEE ALSO: monitor(8)
# tty
/dev/tty
/dev/tty does not refer to a particular physical device. It is
always the users login terminal, which may be the console, a remote
terminal connected to a serial port, or a network terminal using a
pseudo-terminal.
SEE ALSO: tty0(7), tty1(7), ttyp(7), ttys(4)
# tty1 tty2
/dev/tty1 /dev/tty2
These are the IBM PC serial ports, corresponding to DOS devices
COM1: and COM2:. If the /etc/ttys(4) file is properly configured logins
can be made from serial terminals connected to these lines.
SEE ALSO: tty0(7), ttys(4), stty(1), getty(1)
tty tty0 tty1 tty2
tty tty0 tty1 tty2

File diff suppressed because it is too large Load Diff