BSD 3 development
[unix-history] / usr / doc / summary / vhel1
CommitLineData
8dc8ae1a
BJ
1.SH
2B. Hardware
3.PP
4The
5.UC "UNIX/32V"
6operating system
7runs on
8a DEC VAX-11/780*
9.FS
10*VAX is a Trademark of Digital Equipment Corporation.
11.FE
12with at least the following equipment:
13.IP
14memory: 256K bytes or more.
15.IP
16disk: RP06, RM03, or equivalent.
17.IP
18tape: any 9-track MASSBUS-compatible tape drive.
19.LP
20The following equipment is strongly recommended:
21.IP
22communications controller such as DZ11 or DL11.
23.IP
24full duplex 96-character ASCII terminals.
25.IP
26extra disk for system backup.
27.LP
28The system is normally distributed on 9-track tape.
29The minimum memory and disk space specified is enough to run
30and maintain
31.UC "UNIX/32V,"
32and to keep all source on line.
33More memory will be needed
34to handle
35a large number of users,
36big data bases, diversified complements of devices, or large
37programs.
38The resident code
39occupies 40-55K bytes depending
40on configuration;
41system data also occupies 30-55K bytes.
42.SH
43C. Software
44.PP
45Most of the programs available as
46.UC "UNIX/32V"
47commands are listed.
48Source code and printed manuals are
49distributed for all of the listed software
50except games.
51Almost all of the code is written in C.
52Commands are self-contained and do not require extra setup
53information,
54unless specifically noted as ``interactive.''
55Interactive programs can be made to run from a prepared script
56simply by redirecting input.
57Most programs intended for interactive use
58(e.g., the editor)
59allow for an escape to
60command level (the Shell).
61Most file processing commands
62can also go from standard input to standard output
63(``filters'').
64The piping facility of the Shell may be used
65to connect such filters directly to the input or output
66of other programs.
67.NH
68Basic Software
69.PP
70This
71includes the time-sharing operating
72system with utilities, and a
73compiler for the programming language C\(emenough
74software to
75write and run new applications
76and to maintain or modify
77.UC "UNIX/32V"
78itself.
79.NH 2
80Operating System
81.sh UNIX
82The basic resident code
83on which everything else depends.
84Supports the system calls, and maintains the file system.
85A general description of
86.UC UNIX
87design
88philosophy and system facilities appeared in
89the Communications of the ACM, July, 1974.
90A more extensive survey is in the Bell System Technical Journal
91for July-August 1978.
92Capabilities include:
93.op
94Reentrant code for user processes.
95.op
96``Group'' access permissions for cooperative projects,
97with overlapping memberships.
98.op
99Alarm-clock timeouts.
100.op
101Timer-interrupt sampling and interprocess monitoring
102for debugging and measurement.
103.OP
104Multiplexed I/O for machine-to-machine communication.
105.sh DEVICES
106All I/O is logically synchronous.
107I/O devices are simply files in the file system.
108Normally, invisible buffering makes all physical
109record structure and device characteristics transparent and exploits the
110hardware's ability to do overlapped I/O.
111Unbuffered physical record
112I/O is available for unusual applications.
113Drivers for these devices are
114available:
115.op
116Asynchronous interfaces: DZ11, DL11.
117Support for most common ASCII terminals.
118.op
119Automatic calling unit interface: DN11.
120.op
121Printer/plotter: Versatek.
122.op
123Magnetic tape: TE16.
124.op
125Pack type disk: RP06, RM03;
126minimum-latency seek scheduling.
127.op
128Physical memory of VAX-11, or mapped memory in resident system.
129.op
130Null device.
131.op
132Recipies are supplied to aid the construction of drivers for:
133.nf
134.in +2
135Asynchronous interface: DH11.
136Synchronous interface: DU11.
137DECtape: TC11.
138Fixed head disk: RS11, RS03 and RS04.
139Cartridge-type disk: RK05.
140Phototypesetter: Graphic Systems System/1 through DR11C.
141.in -2
142.fi
143.sh BOOT
144Procedures to get
145.UC "UNIX/32V"
146started.
147.NH 2
148User Access Control
149.LP
150.sh LOGIN
151Sign on as a new user.
152.op
153Verify password and establish user's
154individual and group (project) identity.
155.op
156Adapt to characteristics of terminal.
157.op
158Establish working directory.
159.op
160Announce presence of mail (from MAIL).
161.op
162Publish message of the day.
163.op
164Execute user-specified profile.
165.op
166Start command interpreter or other initial program.
167.sh PASSWD
168Change a password.
169.op
170User can change his own password.
171.op
172Passwords are kept encrypted for security.
173.sh NEWGRP
174Change working group (project).
175Protects against unauthorized changes to projects.
176.NH 2
177Terminal Handling
178.LP
179.sh TABS
180Set tab stops appropriately for specified terminal type.
181.sh STTY
182Set up options for optimal control of a terminal.
183In so far as they are deducible from the input, these
184options are set automatically by LOGIN.
185.op
186Half vs. full duplex.
187.op
188Carriage return+line feed vs. newline.
189.op
190Interpretation of tabs.
191.op
192Parity.
193.op
194Mapping of upper case to lower.
195.op
196Raw vs. edited input.
197.op
198Delays for tabs, newlines and carriage returns.
199.NH 2
200File Manipulation
201.LP
202.sh CAT
203Concatenate one or more files onto standard output.
204Particularly used for unadorned printing, for
205inserting data into a pipeline,
206and for buffering output that comes in dribs and drabs.
207Works on any file regardless of contents.
208.sh CP
209Copy one file to another,
210or a set of files to a directory.
211Works on any file regardless of contents.
212.sh PR
213Print files with title, date, and page number on every page.
214.op
215Multicolumn output.
216.op
217Parallel column merge of several files.
218.sh LPR
219Off-line print.
220Spools arbitrary files to the line printer.
221.sh CMP
222Compare two files and report if different.
223.sh TAIL
224Print last
225.I n
226lines of input
227.op
228May print last
229.I n
230characters, or from
231.I n
232lines or characters to end.
233.sh SPLIT
234Split a large file into more manageable pieces.
235Occasionally necessary for editing (ED).
236.sh DD
237Physical file format translator,
238for exchanging data with foreign
239systems, especially IBM 370's.
240.sh SUM
241Sum the words of a file.
242.NH 2
243Manipulation of Directories and File Names
244.LP
245.sh RM
246Remove a file.
247Only the name goes away if any other names are linked to the file.
248.OP
249Step through a directory deleting files interactively.
250.OP
251Delete entire directory hierarchies.
252.sh LN
253``Link'' another name (alias) to an existing file.
254.sh MV
255Move a file or files.
256Used for renaming files.
257.sh CHMOD
258Change permissions on one or more files.
259Executable by files' owner.
260.sh CHOWN
261Change owner of one or more files.
262.sh CHGRP
263Change group (project) to which a file belongs.
264.sh MKDIR
265Make a new directory.
266.sh RMDIR
267Remove a directory.
268.sh CD
269Change working directory.
270.sh FIND
271Prowl the directory
272hierarchy finding
273every file that meets
274specified criteria.
275.op
276Criteria include:
277.in +2
278.nf
279name matches a given pattern,
280creation date in given range,
281date of last use in given range,
282given permissions,
283given owner,
284given special file characteristics,
285boolean combinations of above.
286.in -2
287.fi
288.op
289Any directory may be considered to be the root.
290.op
291Perform specified command on each file found.
292.NH 2
293Running of Programs
294.LP
295.sh SH
296The Shell, or command language interpreter.
297.op
298Supply arguments to and run any executable program.
299.op
300Redirect standard input, standard output, and standard error files.
301.op
302Pipes:
303simultaneous execution with output of one process connected
304to the input of another.
305.OP
306Compose compound commands using:
307.in+2
308if ... then ... else,
309.br
310case switches,
311.br
312while loops,
313.br
314for loops over lists,
315.br
316break, continue and exit,
317.br
318parentheses for grouping.
319.in -2
320.op
321Initiate background processes.
322.op
323Perform Shell programs, i.e., command scripts with
324substitutable arguments.
325.op
326Construct argument lists from all file names
327satisfying specified patterns.
328.OP
329Take special action on traps and interrupts.
330.OP
331User-settable search path for finding commands.
332.OP
333Executes user-settable profile upon login.
334.OP
335Optionally announces presence of mail as it arrives.
336.op
337Provides variables and parameters with default setting.
338.sh TEST
339Tests for use in Shell conditionals.
340.op
341String comparison.
342.op
343File nature and accessibility.
344.op
345Boolean combinations of the above.
346.sh EXPR
347String computations for calculating command arguments.
348.OP
349Integer arithmetic
350.OP
351Pattern matching
352.sh WAIT
353Wait for termination of asynchronously running processes.
354.sh READ
355Read a line from terminal,
356for interactive Shell procedure.
357.sh ECHO
358Print remainder of command line.
359Useful for diagnostics or prompts in Shell programs,
360or for inserting data into a pipeline.
361.sh SLEEP
362Suspend execution for a specified time.
363.sh NOHUP
364Run a command immune to hanging up the terminal.
365.sh NICE
366Run a command in low (or high) priority.
367.sh KILL
368Terminate named processes.
369.sh CRON
370Schedule regular actions at specified times.
371.op
372Actions are arbitrary programs.
373.op
374Times are
375conjunctions of month, day of month, day of week, hour
376and minute.
377Ranges are specifiable for each.
378.sh AT
379Schedule a one-shot action for an arbitrary time.
380.sh TEE
381Pass data between processes and divert a copy into one or more files.
382.NH 2
383Status Inquiries
384.LP
385.sh LS
386List the names of one, several, or all files in one or more directories.
387.op
388Alphabetic or temporal sorting, up or down.
389.op
390Optional information:
391size,
392owner,
393group,
394date last modified,
395date last accessed,
396permissions,
397i-node number.
398.sh FILE
399Try to determine
400what kind of information is in a file by consulting
401the file system index and by reading the file itself.
402.sh DATE
403Print today's date and time.
404Has considerable knowledge
405of calendric and horological peculiarities.
406.op
407May set
408.UC "UNIX/32V" 's
409idea of date and time.
410.sh DF
411Report amount of free space on file system devices.
412.sh DU
413Print a summary of total space occupied by all files in a hierarchy.
414.sh QUOT
415Print summary of file space usage by user id.
416.sh WHO
417Tell who's on the system.
418.op
419List of presently logged in users,
420ports and times on.
421.op
422Optional history of all logins and logouts.
423.sh PS
424Report on active processes.
425.op
426List your own or everybody's processes.
427.op
428Tell what commands are being executed.
429.op
430Optional status information:
431state and scheduling info,
432priority,
433attached terminal,
434what it's waiting for,
435size.
436.sh IOSTAT
437Print statistics about system I/O activity.
438.sh TTY
439Print name of your terminal.
440.sh PWD
441Print name of your working directory.
442.NH 2
443Backup and Maintenance
444.LP
445.sh MOUNT
446Attach a device containing
447a file system to
448the tree of directories.
449Protects against nonsense arrangements.
450.sh UMOUNT
451Remove the file system contained on a device
452from the tree of directories.
453Protects against removing a busy device.
454.sh MKFS
455Make a new file system on a device.
456.sh MKNOD
457Make an i-node (file system entry) for a special file.
458Special files are
459physical devices,
460virtual devices, physical memory, etc.
461.sh TP
462.sh TAR
463Manage file archives on magnetic tape or DECtape.
464TAR is newer.
465.op
466Collect files into an archive.
467.op
468Update DECtape archive by date.
469.op
470Replace or delete DECtape files.
471.op
472Print table of contents.
473.op
474Retrieve from archive.
475.sh DUMP
476Dump the file system
477stored on a specified device, selectively by date, or indiscriminately.
478.sh RESTOR
479Restore a dumped file system,
480or selectively retrieve parts thereof.
481.sh SU
482Temporarily become the super user with all the rights and privileges
483thereof.
484Requires a password.
485.sh DCHECK
486.sh ICHECK
487.sh NCHECK
488Check consistency of file system.
489.op
490Print gross statistics:
491number of files,
492number of directories,
493number of special files,
494space used,
495space free.
496.op
497Report duplicate use of space.
498.op
499Retrieve lost space.
500.op
501Report inaccessible files.
502.op
503Check consistency of directories.
504.op
505List names of all files.
506.sh CLRI
507Peremptorily expunge a file and its space from a file system.
508Used to repair damaged file systems.
509.sh SYNC
510Force all outstanding I/O on the system to completion.
511Used to shut down gracefully.
512.NH 2
513Accounting
514.LP
515The timing information on which the reports are based can be
516manually cleared or shut off completely.
517.sh AC
518Publish cumulative connect time report.
519.op
520Connect time by user or by day.
521.op
522For all users or for selected users.
523.sh SA
524Publish Shell accounting
525report.
526Gives usage information on each command executed.
527.op
528Number of times used.
529.op
530Total system time, user time and elapsed time.
531.op
532Optional averages and percentages.
533.op
534Sorting on various fields.
535.NH 2
536Communication
537.LP
538.sh MAIL
539Mail a message to one or more users.
540Also used to read and dispose of incoming mail.
541The presence of mail is announced by LOGIN
542and optionally by SH.
543.op
544Each message can be disposed of individually.
545.op
546Messages can be saved in files or forwarded.
547.sh CALENDAR
548Automatic reminder service for events of today and tomorrow.
549.sh WRITE
550Establish direct terminal communication with another user.
551.sh WALL
552Write to all users.
553.sh MESG
554Inhibit receipt of messages from WRITE and WALL.
555.sh CU
556Call up another time-sharing system.
557.OP
558Transparent interface to remote machine.
559.OP
560File transmission.
561.OP
562Take remote input from local file or put remote output
563into local file.
564.OP
565Remote system need not be
566.UC "UNIX/32V" .
567.sh UUCP
568.UC UNIX
569to
570.UC UNIX
571copy.
572.OP
573Automatic queuing until line becomes available
574and remote machine is up.
575.OP
576Copy between two remote machines.
577.op
578Differences, mail, etc., between two machines.
579.NH 2
580Basic Program Development Tools
581.LP
582Some of these utilities are used as integral parts of
583the higher level languages described in section 2.
584.sh AR
585Maintain archives and libraries.
586Combines several files into one for housekeeping efficiency.
587.op
588Create new archive.
589.op
590Update archive by date.
591.op
592Replace or delete files.
593.op
594Print table of contents.
595.op
596Retrieve from archive.
597.sh AS
598Assembler.
599.op
600Creates object program consisting of
601.in+2
602.nf
603code, normally read-only and sharable,
604initialized data or read-write code,
605uninitialized data.
606.in -2
607.fi
608.op
609Relocatable object code is directly executable without
610further transformation.
611.op
612Object code normally includes a symbol table.
613.op
614``Conditional jump'' instructions become
615branches or branches plus jumps depending on distance.
616.sh Library
617The basic run-time library.
618These routines are used freely by all software.
619.op
620Buffered character-by-character I/O.
621.op
622Formatted input and output conversion (SCANF and PRINTF)
623for standard input and output, files, in-memory conversion.
624.op
625Storage allocator.
626.op
627Time conversions.
628.op
629Number conversions.
630.op
631Password encryption.
632.op
633Quicksort.
634.op
635Random number generator.
636.op
637Mathematical function library, including
638trigonometric functions and inverses,
639exponential, logarithm, square root,
640bessel functions.
641.sh ADB
642Interactive debugger.
643.op
644Postmortem dumping.
645.OP
646Examination of arbitrary files, with no limit on size.
647.op
648Interactive breakpoint debugging with the debugger as a separate
649process.
650.OP
651Symbolic reference to local and global variables.
652.op
653Stack trace for C programs.
654.OP
655Output formats:
656.in+2
657.nf
6581-, 2-, or 4-byte integers in octal, decimal, or hex
659.br
660single and double floating point
661.br
662character and string
663.br
664disassembled machine instructions
665.br
666.fi
667.in-2
668.op
669Patching.
670.OP
671Searching for integer, character, or floating patterns.
672.sh OD
673Dump any file.
674Output options include any combination of
675octal or decimal or hex by words,
676octal by bytes,
677ASCII,
678opcodes,
679hexadecimal.
680.op
681Range of dumping is controllable.
682.sh LD
683Link edit.
684Combine relocatable object files.
685Insert required routines from specified libraries.
686.op
687Resulting code is sharable by default.
688.sh LORDER
689Places object file names in proper order for loading,
690so that files depending on others come after them.
691.sh NM
692Print the namelist (symbol table) of an object program.
693Provides control over the style and order of
694names that are printed.
695.sh SIZE
696Report the memory requirements
697of one or more object files.
698.sh STRIP
699Remove the relocation and symbol table information from
700an object file to save space.
701.sh TIME
702Run a command and report timing information on it.
703.sh PROF
704Construct a profile of time spent per routine
705from statistics gathered by time-sampling the
706execution of a program.
707.op
708Subroutine call frequency and average times for C programs.
709.sh MAKE
710Controls creation of large programs.
711Uses a control file specifying source file dependencies
712to make new version;
713uses time last changed to deduce minimum amount of work necessary.
714.op
715Knows about CC, YACC, LEX, etc.
716.NH 2
717UNIX/32V Programmer's Manual
718.LP
719.sh Manual
720Machine-readable version of the
721.UC "UNIX/32V"
722Programmer's Manual.
723.op
724System overview.
725.op
726All commands.
727.op
728All system calls.
729.op
730All subroutines in C and assembler libraries.
731.op
732All devices and other special files.
733.op
734Formats of file system and kinds
735of files known to system software.
736.op
737Boot and maintenance procedures.
738.sh MAN
739Print specified manual section on your terminal.
740.NH 2
741Computer-Aided Instruction
742.LP
743.sh LEARN
744A program for interpreting CAI scripts, plus scripts
745for learning about
746.UC "UNIX/32V"
747by using it.
748.op
749Scripts for basic files and commands,
750editor,
751advanced files and commands,
752.UC EQN ,
753.UC MS
754macros,
755C programming language.