|
|
1.1 ! root 1: .lg ! 2: .lt 6i ! 3: .ll 6i ! 4: .lt 6i ! 5: .ps 10 ! 6: .vs 12p ! 7: .de he ! 8: .tl '-''' ! 9: 'sp .5i ! 10: 'ft R ! 11: .CH ! 12: 'ft ! 13: 'ps ! 14: 'sp .5i ! 15: .. ! 16: .de fo ! 17: 'ft R ! 18: 'ps 10 ! 19: 'sp .5i ! 20: .CF ! 21: 'ft ! 22: 'ps ! 23: 'bp ! 24: .. ! 25: .wh 0 he ! 26: .wh -1i fo ! 27: .de pg ! 28: .sp .5 ! 29: .. ! 30: .tr | ! 31: .sp 3i ! 32: .ps 18 ! 33: .ft B ! 34: .ce ! 35: UNIX PROGRAMMER'S MANUAL ! 36: .ps 12 ! 37: .vs 14p ! 38: .sp 2 ! 39: .ft I ! 40: .ce ! 41: Fourth Edition ! 42: .sp 3 ! 43: .ce 3 ! 44: K. Thompson ! 45: .sp .5 ! 46: D. M. Ritchie ! 47: .sp 2 ! 48: .ce ! 49: November, 1973 ! 50: .sp 2.5i ! 51: .ps 10 ! 52: .vs 12p ! 53: .ft R ! 54: .ce 2 ! 55: Copyright \(co 1972, 1973 ! 56: Bell Telephone Laboratories, Inc. ! 57: .sp ! 58: .ce 3 ! 59: No part of this document may be reproduced, ! 60: or distributed outside the Laboratories, without ! 61: the written permission of Bell Telephone Laboratories. ! 62: .bp ! 63: .sp 3i ! 64: .ce2 ! 65: Copyright \(co 1972, 1973 ! 66: Bell Telephone Laboratories, Incorporated ! 67: .sp 3i ! 68: .ll 4.5i ! 69: .in 1.5i ! 70: .ft R ! 71: This manual was set ! 72: by a Graphic Systems phototypesetter driven ! 73: by the \fItroff\fR formatting program operating ! 74: under the \s8UNIX\s10 system. ! 75: The text of the manual was ! 76: prepared using the \fIed\fR text editor. ! 77: .br ! 78: .ft R ! 79: .ll 6i ! 80: .in 0 ! 81: .bp 1 ! 82: .sp 3 ! 83: .ce 2 ! 84: PREFACE ! 85: to the Fourth Edition ! 86: .sp ! 87: .de CF ! 88: .ro ! 89: .tl ''%'' ! 90: .ar ! 91: .. ! 92: In the months since the last appearance of this manual, ! 93: many changes have occurred ! 94: both in the system itself and in the way it is ! 95: used. ! 96: The most important changes result from a complete ! 97: rewrite of the \s8UNIX\s10 system in the C language. ! 98: There have also been substantial changes in much of the ! 99: system software. ! 100: It is these changes, of course, ! 101: which mandated the new edition of this manual. ! 102: .pg ! 103: The number of \s8UNIX\s10 installations ! 104: is now above 20, and many more are expected. ! 105: None of these has exactly the same complement ! 106: of hardware or software. ! 107: Therefore, at any particular installation, ! 108: it is quite possible that this manual will ! 109: give inappropriate information. ! 110: In particular, ! 111: .ft I ! 112: the information in this manual applies ! 113: only to \s8UNIX\s10 systems which operate ! 114: under the C language versions of the system. ! 115: .ft R ! 116: Installations which use older versions of \s8UNIX\s10 ! 117: will find earlier editions of this manual ! 118: more appropriate to their situation. ! 119: .pg ! 120: Even in installations which have the latest versions of the ! 121: operating system, ! 122: not all the software and other ! 123: facilities mentioned herein ! 124: will be available. ! 125: For example, ! 126: the typesetter, voice response unit, and voice synthesizer ! 127: are hardly universally available devices; ! 128: also, some of the \s8UNIX\s10 software has not been ! 129: released for use outside the ! 130: Bell System. ! 131: .sp 2 ! 132: The authors are grateful ! 133: to L. L. Cherry, ! 134: M. E. Lesk, ! 135: E. N. Pinson, ! 136: and C. S. Roberts for their ! 137: contributions ! 138: to the system software, ! 139: and to L. E. McMahon for software and for ! 140: his contributions to this manual. ! 141: We are particularly appreciative of the ! 142: invaluable technical, editorial, and administrative ! 143: efforts of ! 144: J. F. Ossanna, M. D. McIlroy, and R. Morris. ! 145: They all contributed greatly to the stock of ! 146: \s8UNIX\s10 software and to this manual. ! 147: Their inventiveness, ! 148: thoughtful criticism, ! 149: and ungrudging support ! 150: increased immeasurably ! 151: not only whatever success the \s8UNIX\s10 system enjoys, ! 152: but also our own enjoyment in its creation. ! 153: .bp ! 154: .sp 2 ! 155: .ce ! 156: INTRODUCTION TO THIS MANUAL ! 157: .pg ! 158: .pg ! 159: This manual gives descriptions of the publicly available ! 160: features of \s8UNIX\s10. ! 161: It provides neither a general ! 162: overview (see ``The \s8UNIX\s10 Time-sharing System'' for that) ! 163: nor details of the implementation of the system (which ! 164: remain to be disclosed). ! 165: .pg ! 166: Within the area it surveys, this manual attempts ! 167: to be as complete and timely as possible. ! 168: A conscious ! 169: decision was made to describe each program ! 170: in exactly the state it was in at the time ! 171: its manual section ! 172: was prepared. ! 173: In particular, the ! 174: desire to describe something as it should be, not as it is, ! 175: was resisted. ! 176: Inevitably, this means that ! 177: many sections will soon be out of date. ! 178: .pg ! 179: This manual is divided into ! 180: eight sections: ! 181: .pg ! 182: .nf ! 183: I. Commands ! 184: II. System calls ! 185: III. Subroutines ! 186: IV. Special files ! 187: V. File formats ! 188: VI. User-maintained programs ! 189: VII. Miscellaneous ! 190: VIII. Maintenance ! 191: .pg ! 192: .fi ! 193: Commands are programs intended to be invoked directly by ! 194: the user, in contradistinction to subroutines, which are ! 195: intended to be called by the user's programs. ! 196: Commands generally reside in directory ! 197: .ft I ! 198: /bin ! 199: .ft R ! 200: (for \fIbin\fR\|ary programs). ! 201: This directory is searched automatically ! 202: by the command line interpreter. ! 203: Some programs also reside in ! 204: .ft I ! 205: /\|usr/\|bin, ! 206: .ft R ! 207: to save space in ! 208: \fI/bin.\fR ! 209: Some programs ! 210: classified as commands are located elsewhere; this ! 211: fact is indicated in the appropriate sections. ! 212: .pg ! 213: System calls are entries into the \s8UNIX\s10 supervisor. ! 214: In assembly language, they are coded with the use ! 215: of the opcode \fIsys\fR, a synonym for the ! 216: \fItrap\fR instruction. ! 217: In this edition, ! 218: the C language interface routines to the system ! 219: calls have been incorporated in section II. ! 220: .pg ! 221: A small assortment ! 222: of subroutines is available; ! 223: they are described in section III. ! 224: The binary form of most of them is kept in ! 225: the system library ! 226: \fI/\|lib/\|liba.a.\fR ! 227: The subroutines available from C and from Fortran are also included; ! 228: they reside in ! 229: \fI/\|lib/\|libc.a\fR ! 230: and ! 231: \fI/\|lib/\|libf.a\fR ! 232: respectively. ! 233: .pg ! 234: The special files section IV discusses the characteristics of ! 235: each system ``file'' which actually refers to an I/O device. ! 236: The names in this ! 237: section refer to the DEC device names for the ! 238: hardware, ! 239: instead of the names of ! 240: the special files themselves. ! 241: .pg ! 242: The file formats section V documents the structure of particular ! 243: kinds of files; for example, the form of the output of the loader and ! 244: assembler is given. Excluded are files used by only one command, ! 245: for example the assembler's intermediate files. ! 246: .pg ! 247: User-maintained programs (section VI) are not considered part ! 248: of the \s8UNIX\s10 system, and the principal reason for ! 249: listing them is to indicate their existence without ! 250: necessarily giving a complete description. ! 251: The author should be consulted for information. ! 252: .pg ! 253: The miscellaneous section (VII) gathers odds and ends. ! 254: .pg ! 255: Section VIII discusses commands which are not intended ! 256: for use by the ordinary user, ! 257: in some cases because they disclose information ! 258: in which he is presumably not interested, ! 259: and in others because they perform ! 260: privileged functions. ! 261: .pg ! 262: .pg ! 263: Each section consists of a number of independent ! 264: entries of a page or so each. ! 265: The name of the entry is in the upper corners of its pages, ! 266: its preparation date in the upper middle. ! 267: Entries within each section are ! 268: alphabetized. ! 269: The page numbers of each entry start at 1. ! 270: (The earlier hope for frequent, partial ! 271: updates of the manual is clearly in vain, but ! 272: in any event it is not feasible to ! 273: maintain consecutive page numbering in a document ! 274: like this.) ! 275: .pg ! 276: All entries are based on a common format, ! 277: not all of whose subsections will always appear. ! 278: .pg ! 279: .in .5i ! 280: The \fIname\fR section repeats the entry name and gives ! 281: a very short description of its purpose. ! 282: .pg ! 283: The \fIsynopsis\fR summarizes the use of the ! 284: program being described. ! 285: A few conventions are used, particularly in the ! 286: Commands section: ! 287: .pg ! 288: .in 1i ! 289: \fBBoldface\fR words are considered literals, and ! 290: are typed just as they appear. ! 291: .pg ! 292: Square brackets ( [ ] ) around an argument ! 293: indicate that the argument is optional. ! 294: When an argument is given as ``name'', it always ! 295: refers to a file name. ! 296: .pg ! 297: Ellipses ``.\|.\|.'' are used to show that the previous argument-prototype ! 298: may be repeated. ! 299: .pg ! 300: A final convention is used by the commands themselves. ! 301: An argument beginning with a minus sign ``_'' ! 302: is often taken to mean some sort of flag argument ! 303: even if it appears in a position where a file name ! 304: could appear. Therefore, it is unwise to have files ! 305: whose names begin with ``_''. ! 306: .pg ! 307: .in .5i ! 308: The \fIdescription\fR section discusses in detail the subject at hand. ! 309: .pg ! 310: The \fIfiles\fR section gives the names of files which are ! 311: built into the program. ! 312: .pg ! 313: A ! 314: .ft I ! 315: see also ! 316: .ft R ! 317: section gives pointers to related information. ! 318: .pg ! 319: A \fIdiagnostics\fR ! 320: section discusses ! 321: the diagnostic indications which may be produced. ! 322: Messages which are intended to be self-explanatory ! 323: are not listed. ! 324: .pg ! 325: The \fIbugs\fR section gives ! 326: known bugs and sometimes deficiencies. ! 327: Occasionally also the suggested fix is ! 328: described. ! 329: .pg ! 330: .in 0 ! 331: At the beginning of this document is a table of contents, ! 332: organized by section and alphabetically within each section. ! 333: There is also a permuted index derived from the table of contents. ! 334: Within each index entry, the title ! 335: of the writeup to which ! 336: it refers is followed by the appropriate section number in parentheses. ! 337: This fact is important because there is considerable ! 338: name duplication among the sections, ! 339: arising principally from commands which ! 340: exist only to exercise a particular system call. ! 341: .pg ! 342: .pg ! 343: This manual was prepared using the \s8UNIX\s10 text ! 344: editor \fIed\fR and the formatting program \fItroff\fR.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.