Annotation of researchv10dc/dist/man/v4/man0/basinf, revision 1.1.1.1

1.1       root        1: .tr |
                      2: .bp
                      3: .ce
                      4: HOW TO GET STARTED
                      5: .sp 1.5
                      6: This section provides the basic information
                      7: you need to get started on \s8UNIX\s10:
                      8: how to log in and log out,
                      9: how to communicate through your terminal,
                     10: and how to run a program.
                     11: .pg
                     12: .ft I
                     13: Logging in.||
                     14: .ft R
                     15: You must call \s8UNIX\s10 from an appropriate terminal.
                     16: \s8UNIX\s10 supports \s8ASCII\s10 terminals typified by the \s8TTY\s10 37,
                     17: the GE Terminet 300, the Memorex 1240, and various
                     18: graphical terminals.
                     19: You must also have a valid user name,
                     20: which may be obtained, together with the telephone number, from the system administrators.
                     21: The same telephone number
                     22: serves terminals operating at all the standard speeds.
                     23: After a data connection is established,
                     24: the login procedure depends on what kind of terminal
                     25: you are using.
                     26: .pg
                     27: .in .5i
                     28: .ul
                     29: \s8TTY\s10 37 terminal:||
                     30: \s8UNIX\s10 will type out ``login: ''; you respond with
                     31: your user name.
                     32: From the \s8TTY\s10 37 terminal, and any other which has the ``new-line''
                     33: function (combined carriage return and linefeed), terminate each line you type with the
                     34: ``new-line'' key
                     35: (\fInot\fR the ``return'' key).
                     36: .pg
                     37: .ul
                     38: 300-baud terminals:||
                     39: Such terminals include the GE Terminet 300, most display terminals,
                     40: Execuport, TI, and certain
                     41: Anderson-Jacobson terminals.
                     42: These terminals generally have a speed
                     43: switch which should be set at ``300'' (or ``30'' for
                     44: 30 characters per second)
                     45: and a half/full duplex switch which should be set at
                     46: full-duplex.
                     47: (Note that this switch will often have to be changed
                     48: since many other systems require half-duplex).
                     49: When a connection is established, a few garbage
                     50: characters are typed (the login message at the wrong speed).
                     51: Depress the ``break'' key;
                     52: this is a speed-independent signal to \s8UNIX\s10 that a 300-baud
                     53: terminal is in use.
                     54: \s8UNIX\s10 will type ``login: '' at the correct speed; you type your
                     55: user name, followed by the ``return'' key.
                     56: Henceforth, the ``return'', ``new line'', or ``linefeed'' keys
                     57: will give exactly the same results.
                     58: .pg
                     59: .in 0
                     60: For all these terminals, it is important
                     61: that you type your name in lower case if possible; if you type
                     62: upper case letters, \s8UNIX\s10
                     63: will assume that your terminal cannot generate lower-case
                     64: letters and will translate all subsequent upper-case
                     65: letters to lower case.
                     66: .pg
                     67: The evidence that you have successfully
                     68: logged in is that the Shell program
                     69: will type a ``%'' to you.
                     70: (The Shell is described below under
                     71: ``How to run a program.'')
                     72: .pg
                     73: For more information, consult
                     74: \fIgetty\fR (VII), which discusses the login sequence in more
                     75: detail, and \fIdc\fR (IV), which discusses typewriter I/O.
                     76: .pg
                     77: .ul
                     78: Logging out.||
                     79: There are three ways to log out:
                     80: .pg
                     81: .in .5i
                     82: You can simply hang up the phone.
                     83: .pg
                     84: You can log out by typing an end-of-file indication
                     85: (EOT character, control ``d'') to the Shell.
                     86: The Shell will terminate and the ``login: '' message
                     87: will appear again.
                     88: .pg
                     89: You can also log in directly as another user
                     90: by giving a \fIlogin\fR command (I).
                     91: .pg
                     92: .in 0
                     93: .ul
                     94: How to communicate through your terminal.||
                     95: When you type to \s8UNIX\s10, a gnome deep in the system
                     96: is gathering your characters and saving them in a secret
                     97: place.
                     98: The
                     99: characters will not be given to a program
                    100: until you type a return (or new-line), as described above
                    101: in
                    102: .ul
                    103: Logging in.
                    104: .pg
                    105: \s8UNIX\s10 typewriter I/O is full-duplex.
                    106: It has full read-ahead, which means that you can
                    107: type at any time,
                    108: even while a program is
                    109: typing at you.
                    110: Of course, if you type during output, the output will
                    111: have the input characters interspersed.
                    112: However, whatever you type will be saved
                    113: up and interpreted in correct sequence.
                    114: There is a limit to the amount of read-ahead,
                    115: but it is generous and not likely to be exceeded unless
                    116: the system is in trouble.
                    117: When the read-ahead limit is exceeded, the system
                    118: throws away all the saved characters.
                    119: (We reassure you that this doesn't happen often.)|
                    120: .pg
                    121: On a typewriter input line, the character ``@''
                    122: kills all the characters typed before it, so typing mistakes
                    123: can be repaired on a single line.
                    124: Also, the character ``#'' erases the last character typed.
                    125: Successive uses of ``#'' erase characters back to, but
                    126: not beyond, the beginning of the line.
                    127: ``@'' and ``#'' can be transmitted to a program
                    128: by preceding them with ``\\''.
                    129: (So, to erase ``\\'', you need two ``#''s).
                    130: .pg
                    131: The \s8ASCII\s10 ``delete'' (a.k.a. ``rubout'') character is not passed to programs
                    132: but instead generates
                    133: an
                    134: .ul
                    135: interrupt signal.
                    136: This signal
                    137: generally causes whatever program
                    138: you are running to terminate.
                    139: It is typically used to stop a long printout that
                    140: you don't want.
                    141: However, programs can arrange either to ignore
                    142: this signal altogether,
                    143: or to be notified when it happens (instead
                    144: of being terminated).
                    145: The editor, for example, catches interrupts and
                    146: stops what it is doing,
                    147: instead of terminating, so that an interrupt can
                    148: be used to halt an editor printout without
                    149: losing the file being edited.
                    150: .pg
                    151: The \fIquit\fR signal is generated
                    152: by typing the \s8ASCII\s10 FS character.
                    153: It not only causes a running program to terminate
                    154: but also generates a file with the core image
                    155: of the terminated process.
                    156: Quit is useful
                    157: for debugging.
                    158: .pg
                    159: Besides adapting to the speed of the terminal,
                    160: \s8UNIX\s10 tries to be intelligent about whether
                    161: you have a terminal with the new-line function
                    162: or whether it must be simulated with carriage-return
                    163: and line-feed.
                    164: In the latter case, all input carriage returns
                    165: are turned to new-line characters (the standard
                    166: line delimiter)
                    167: and both a carriage return and a line feed
                    168: are echoed to the terminal.
                    169: If you get into the wrong mode, the \fIstty\fR command
                    170: (I) will rescue you.
                    171: .pg
                    172: Tab characters are used freely in \s8UNIX\s10 source programs.
                    173: If your terminal does not have the tab function,
                    174: you can arrange to have them turned into spaces
                    175: during output, and echoed as spaces
                    176: during input.
                    177: The system assumes
                    178: that tabs are set every eight columns.
                    179: Again, the \fIstty\fR command (I)
                    180: will set or reset this mode.
                    181: Also, there is a file which, if printed on \s8TTY\s10 37
                    182: or TermiNet 300 terminals, will set the tab stops
                    183: correctly (\fItabs\fR (VII)).
                    184: .pg
                    185: Section \fIdc\fR (IV) discusses typewriter I/O more fully.
                    186: Section \fIkl\fR (IV) discusses the console typewriter.
                    187: .pg
                    188: .ul
                    189: How to run a program; The Shell.||
                    190: When you have successfully logged into \s8UNIX\s10, a program
                    191: called the Shell is listening to your terminal.
                    192: The Shell reads typed-in lines, splits them up
                    193: into a command name and arguments, and executes the command.
                    194: A command is simply an executable program.
                    195: The Shell looks first in your current directory
                    196: (see next section)
                    197: for a program with the given name,
                    198: and if none is there, then in a system directory.
                    199: There is nothing special about system-provided
                    200: commands except that they are kept in a directory
                    201: where the Shell can find them.
                    202: .pg
                    203: The command name is always the first word on an input line;
                    204: it and its arguments are separated from one another by
                    205: spaces.
                    206: .pg
                    207: When a program terminates, the Shell will ordinarily regain control and type 
                    208: a ``%'' at you to indicate that it is ready for another command.
                    209: .pg
                    210: The Shell has many other capabilities, which are described in detail in section
                    211: \fIsh\fR\|(I).
                    212: .pg
                    213: .ul
                    214: The current directory.||
                    215: \s8UNIX\s10 has a file system arranged in a hierarchy of directories.
                    216: When the system administrator gave you a user name,
                    217: he also created a directory for you (ordinarily
                    218: with the same name as your user name).
                    219: When you log in, any file
                    220: name you type is by default
                    221: in this directory.
                    222: Since you are the owner of this directory, you have
                    223: full permissions to read, write, alter, or destroy
                    224: its contents.
                    225: Permissions to have your will with other directories
                    226: and files will have been granted or denied to you
                    227: by their owners.
                    228: As a matter of observed fact, few \s8UNIX\s10 users
                    229: protect their files from destruction,
                    230: let alone perusal, by other users.
                    231: .pg
                    232: To change the
                    233: current directory (but not the set of permissions you
                    234: were endowed with at login) use \fIchdir\fR (I).
                    235: .pg
                    236: .ul
                    237: Path names.||
                    238: To refer to files not in the current directory, you must
                    239: use a path name.
                    240: Full path names begin with ``/'', the name of the root directory of the
                    241: whole file system.
                    242: After the slash comes the name of each directory containing the next
                    243: sub-directory (followed by a ``/'') until finally the
                    244: file name is reached.
                    245: E.g.:
                    246: .ul
                    247: /\|usr/\|lem/\|filex
                    248: refers to the file
                    249: .ul
                    250: filex
                    251: in the directory
                    252: .ul
                    253: lem; lem
                    254: is itself a subdirectory of
                    255: .ul
                    256: usr; usr
                    257: springs directly from the root directory.
                    258: .pg
                    259: If your current directory has subdirectories,
                    260: the path names of files therein begin with
                    261: the name of the subdirectory (no prefixed ``/'').
                    262: .pg
                    263: Without important exception,
                    264: a path name may be used anywhere a file name is
                    265: required.
                    266: .pg
                    267: Important commands which modify the contents of files
                    268: are \fIcp\fR (I), \fImv\fR (I), and \fIrm\fR (I),
                    269: which respectively copy, move (i.e. rename) and remove files.
                    270: To find out the status of files or directories, use \fIls\fR (I).
                    271: See \fImkdir\fR (I) for making directories; \fIrmdir\fR (I) for destroying them.
                    272: .pg
                    273: For a fuller discussion of the file system, see
                    274: ``The \s8UNIX\s10 Time-Sharing System,''
                    275: by the present authors,
                    276: to appear in the Communications of the ACM;
                    277: a version is also available from the same source as this
                    278: manual.
                    279: It may also be useful to glance through
                    280: section II of this manual, which discusses
                    281: system calls, even if you don't intend
                    282: to deal with the system at the assembly-language level.
                    283: .pg
                    284: .ul
                    285: Writing a program.||
                    286: To enter the text of a source program into a \s8UNIX\s10 file, use \fIed\fR (I).
                    287: The three principal languages in \s8UNIX\s10 are
                    288: assembly language (see \fIas\fR (I)), Fortran (see \fIfc\fR (I)),
                    289: and C (see \fIcc\fR (I)).
                    290: After the program text has been entered through 
                    291: the editor
                    292: and written on a file, you can give the file
                    293: to the appropriate language processor as an argument.
                    294: The output of the language processor
                    295: will be left on a file in the current directory named ``a.out''.
                    296: (If the output is precious, use \fImv\fR to move it to a less
                    297: exposed name soon.)|
                    298: If you wrote in assembly language, you will probably
                    299: need to load the program with library subroutines; see
                    300: \fIld \fR(I).  The other two language processors call
                    301: the loader automatically.
                    302: .pg
                    303: When you have finally gone through this entire process
                    304: without provoking any diagnostics, the resulting program
                    305: can be run by giving its name to the Shell
                    306: in response to the ``%'' prompt.
                    307: .pg
                    308: The next command you will need is \fIdb\fR (I).
                    309: As a debugger, \fIdb\fR is better than average for
                    310: assembly-language programs,
                    311: marginally useful for C programs
                    312: (when completed, \fIcdb\fR (I) will be a boon),
                    313: and virtually useless for Fortran.
                    314: .pg
                    315: Your programs can receive arguments from the command line
                    316: just as system programs do.
                    317: See \fIexec\fR (II).
                    318: .pg
                    319: .ul
                    320: Text processing.||
                    321: Almost all text is entered through the editor.
                    322: The commands most often used to write text on a terminal are:
                    323: .ul
                    324: cat, pr, roff, nroff,
                    325: and
                    326: .ul
                    327: troff,
                    328: all in section I.
                    329: .pg
                    330: The \fIcat\fR command simply dumps \s8ASCII\s10 text
                    331: on the terminal, with no processing at all.
                    332: The \fIpr\fR command paginates the text, supplies headings,
                    333: and has a facility for multi-column output.
                    334: .ul
                    335: Troff
                    336: and
                    337: .ul
                    338: nroff
                    339: are elaborate text formatting programs,
                    340: and require careful forethought
                    341: in entering both the text and the formatting commands
                    342: into the input file.
                    343: .ul
                    344: Troff
                    345: drives a Graphic Systems phototypesetter;
                    346: it was used to produce this manual.
                    347: .ul
                    348: Nroff
                    349: produces output on a typewriter terminal.
                    350: .ul
                    351: Roff
                    352: (I)
                    353: is a somewhat less elaborate text formatting
                    354: program, and requires somewhat less forethought.
                    355: .pg
                    356: .ul
                    357: Surprises.||
                    358: Certain commands provide inter-user communication.
                    359: Even if you do not plan to use them, it would be
                    360: well to learn something about them, because someone else may
                    361: aim them at you.
                    362: .pg
                    363: To communicate with another user currently logged in,
                    364: .ul
                    365: write
                    366: (I)
                    367: is used;
                    368: .ul
                    369: mail
                    370: (I)
                    371: will leave a message whose presence will be announced
                    372: to another user when he next logs in.
                    373: The write-ups in the manual also suggest how to respond to
                    374: the two commands if you are a target.
                    375: .pg
                    376: When you log in, a message-of-the-day may greet you
                    377: before the first ``%''.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.