[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ih] "Installing TCP and servers" on Tenex memo (William W. Plummer - 19SEP76)
- Subject: [ih] "Installing TCP and servers" on Tenex memo (William W. Plummer - 19SEP76)
- From: geoff at iconia.com (the keyboard of geoff goodfellow)
- Date: Sat, 21 Mar 2020 19:55:28 -1000
in poking around an "ancient" archive of files -- just uncovered this "gem":
To: System Programmers
From: William W. Plummer, BBN
Re: Installing TCP and servers
1. Make a directory <TCP> to hold all of the files.
2. If the TCP and servers are to be run by <SYSTEM> or <TCP> or
whoever, give that user WHEEL (so it can use PTY's in their
current partially implemented form) and NETWIZ (so it can
use raw network messages.
3. Add the TCP assembly switch to PARAMS.MAC. See partial
4. Add code under TCP switch in FORKS.MAC. See partial listing.
5. Add directed PSI code in IMPDV.MAC. See partial listing.
6. Define FORKX as JSYS 747 in STENEX.MAC. Reassemble STENEX.
7. Define FORKX in PROLOG.MAC. Delete LDINIT.REL;* to cause the
JSYS dispatch vector to be reassembled.
8. In PARAMS.MAC set NPTYS to 8. Figure out what line numbers
your PTY's will be for later use.
9. Be sure your CHKJFN routine matches the one enclosed. Same
for other PTY-related fragments enclosed.
10. Assemble a new monitor.
11. A copy of the file <SYSTEM>SYSJOB.TCP is included here which
should be updated for your system. To restart the TCP after
flushing the old jobs, just copy this file to
<SYSTEM>SYSJOB.COMMANDS and Job0 will do the rest.
12. To have the TCP started automatically when the system comes
up, include the contents of SYSJOB.TCP in SYSJOB.RUN.
13. You may want to have a separate account and pieslice for the
14. Files and what they do:
<TCP>TCP155.SAV Contains all code for the TCP job and
interface (simulated JSYS's) for users.
<TCP>TTLSRV.MAC Sources for "TCP Telnet Server".
<TCP>TTLSRV.SAV The actual program.
<TCP>TTLSRV.LOG Textual log of activities.
<TCP>ECHO.SAV An echo server.
<TCP>ECHO.LOG A log file.
<TCP>SINK.SAV InterNet version of NIL:
<TCP>SINK.LOG Textual log file.
<TCP>XTCP155.SAV Used to map the TCP for debugging.
<TCP>XTCI155.SAV Used to map the TCI
<TCP>START-TCP155.SAV Program run by a created job to cause
a TCP to be mapped and started.
<TCP>START-TTLSRV155.SAV Program run by a created job to
cause the TTLSRV to be started.
<TCP>START-ECHO.SAV Program run by a created job to
start the ECHO server.
<TCP>START-SINK.SAV Program run by a created job to
start the SINK server.
15. A word about TCP155.SAV
This is a specially constructed SSAVE file. Parts are "normal"
Read, Copy-on-write, Execute while others are actual shared Read-Write.
This file may be copied with the EXEC "COPY" command and may be
shipped around with FTP, but don't try to GET and SSAVE it. Don't
try to just RUN it. In order for the GET JSYS to properly map the
file, it must be openned with "per-page table" access. That is all
XTCP155 and XTCI155 do: open the file, do a GET and HALTF. The
EXEC "START" command may then be used. Programs like START-TCP155
do the same but automatically start the program.
TCP is the actual protocol routines, the packetizer, the
retransmitter, the reassembler, ... etc.
Geoff.Goodfellow at iconia.com
living as The Truth is True