.PAGE SIZE 58, 85 .NONUMBER .; for VAX .LEFT MARGIN 10 .RIGHT MARGIN 75 .; for RSX .;.LEFT MARGIN 0 .;.RIGHT MARGIN 65 .AUTOPARAGRAPH # .SKIP 5 .CENTER THE RSX MULTI-TASKER .SKIP .CENTER March 1989 .SKIP .CENTER "In hoc signo foobar" .SKIP .CENTER Fine Realtime Commentary Since 1975 .SKIP 6 .CENTER ^&TABLE OF CONTENTS\& .SKIP .LITERAL RSX SIG NEWS Editor's Corner RSX-1 Submitting Articles to the Multi-Tasker RSX-1 Bulletin Board Notes RSX-2 Chairman's Corner RSX-2 ARTICLES Wrong Way BRU, RMD snapshot, and other notes RSX-3 Fall 89 Symposium Q and A session RSX-6 .END LITERAL .SKIP 10 Opinions expressed in the Multi-Tasker are those of individual members. They do not represent the official position of the RSX SIG or that of DECUS leadership in general. .PAGE .CENTER ^&RSX SIG NEWS\& .SKIP 2 .COMMENT .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT Editor's Corner .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT .SKIP 4 .CENTER Editor's Corner .SKIP .LITERAL Jim McGlinchey, Managing Editor Phil Hannay, Production Editor Bruce Mitchell, Minister of Propaganda .END LITERAL .SKIP .TEST PAGE 15 .SKIP 2 .CENTER ----- Submitting Articles to the Multi-Tasker ----- You are encouraged to submit articles to the Multi-Tasker. No article is too big or too small. They can be serious or funny, and of any techinical level. Please submit machine readable media if possible. Hardcopy submissions are okay if they are fairly short. Illustrations and drawings that can be photocopied may accompany the article. Most any media is acceptable, however RX50, RX01/2, TK50 and 1600 BPI magtape are preferred. All RSX volume formats are acceptable, and VMS formats are also acceptable on RX50, TK50 and 1600 BPI magtape. You can also submit articles through the RSX bulletin board system at (612) 777-7664. Kermit the file into your account and then send it via MAIL to username MULTITASKER. The Multi-Tasker begins life as a RUNOFF file, so feel free to submit your articles in RUNOFF format. The page size will be 80 columns by 58 lines, with the left margin at 10 and right margin at 75. Use literal format for code examples. If you change margins, use incremental changes rather than absolute. Mail your articles and other submissions to the expansive Multi-Tasker offices: .LITERAL Phil Hannay Cargill Research Bldg Box 9300 Minneapolis, MN. 55440 tel. 612-475-5433 (daytime) .END LITERAL .COMMENT .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT Bulletin Board Notes .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT .TEST PAGE 15 .SKIP 4 .CENTER Bulletin Board Notes .SKIP The RSX Bulletin Board is online. Software availability: RSX MAIL, Kermit, old issues of The Multi-Tasker and various other items. Free advice from everybody who logs in too. The system can always use additional hardware. Anything, including archaic items. We are still looking for an RL02 drive. Contact Jim Bostwick, at 612-475-6264 (daytime) if you wish to donate some equipment. The BBS number: 612-SPR-PONG (612-777-7664). This line is autobaud 110 - 1200 baud. To request an account, log in with account name ACCOUNT, password REQUEST. .COMMENT .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT Chairman's Corner .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT .test page 15 .skip 4 .center Chairman's Corner .SKIP .center Jim Bostwick .skiP No submission this month. .COMMENT .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT Articles .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT .PAGE .CENTER ^&ARTICLES\& .SKIP 2 .COMMENT .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT Wrong Way BRU, RMD snapshot and other notes .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT .TEST PAGE 15 .SKIP 4 .c Wrong Way BRU, RMD snapshot and Other Notes .s2 .lit Tony Gandy SYSTEME Corporation 101 Southhall Lane, Suite 460 Maitland, Fl. 32751 p.s. Maitland is a suburb of Orlando (which is a suburb of Disney World). .eli .c Wrong Way BRU A while ago, we encountered a BRU problem which has been submitted as an SPR to the Colorado Customer Support Center. Due to the nature of the problem, I thought is wise to spread the news in the Multitasker. One of our inexperienced users (maybe Justin's twin sister, Justine?) was attempting to backup an RD53 to a TK50 on an 11/53 using BRUSYS. She used instructions that were hand written by someone who knew how to run BRUSYS. Those instructions are transcribed below: .lit BOOT BRUSYS FROM MU: FIRST DEVICE: DU: SECOND DEVICE: MU: RETURN PUT SCRATCH TAPE IN MU: DRIVE RUN BRU BRU>/REW/VER FROM: DU: TO: MU: REBOOT AT BRU> .eli No problems, right? Well, everything went fine until the "BRU>" prompt appeared. Instead of entering "/REW/VER", she lost her place and entered "RUN BRU" again. Whereupon, BRU asked for FROM and TO devices. She answered with "DU:" and "MU:" respectively. The TK50 started flashing it lights just as if all were right with the world and BRU was copying the disk to the tape. No such luck. BRU copied the TAPE TO THE DISK! Since the TK50 was an old BRU backup of a few files, the resultant disk was no longer bootable. The cause of such a disaster is easy to dismiss as resulting from an inexperienced person reversing the FROM and TO devices. And, in fact, our heroine was so blamed and unjustly accused. Around the world, how many times since the advent of BRUSYS has data been destroyed when a backup was attempted and BRU went the wrong way. Only with luck were we able to reproduce the failure and demonstrate that it may also occur with on-line BRU. To test your confidence in BRU, try the following: .lit RUN $BRU BRU>RUN $BRU From: DU: (or whatever your disk is) To: MU: (or whatever your tape is) Initialize output disk [Y/N]: CTRL-Z to avoid madness .eli Note that the request about initializing the disk only occurs if BRU wants to write to a disk. Also, in BRUSYS, any operation to a disk initializes it and thus no initialize questions appears. That's why we got bit in the first place. Since BRU and BRUSYS do not properly validate the options input (but do reverse the FROM/TO meanings), are there any other RSX utilities which behave in a strange manner when run interactively. Good hunting (and pecking) and be sure to keep the editor informed. .s1 .c *************************************** While I am writing, which I seldom do, I might as well clear my queue of stuff destined for the Multi-tasker. .s1 .c *************************************** .s1 .c RMD Snapshot Have you ever wanted to take a snapshot of an RMD display when something happened, but were foiled by the clear screen caused by a CTRL-Z or CTRL-C? You can "NOSCROLL" or "Hold Screen", but RMD is still cranking and will not quit until a CTRL-Z or CTRL-C. Then, unscrolling clears the screen. Here is an easy way. When you see the RMD display of interest, enter CTRL-O. The display will stay frozen even if a CTRL-Z or CTRL-C is entered. Of course, the MCR prompt ">" overlays the "T" in "TASK=" and the cursor is left on the second line of the screen, but you can't have everything. A printer attached to the screen would also give a hardcopy of what you see. .s1 .c *************************************** .s1 .c Hardcopy of BRU Directory Have you ever been frustrated by looking at a BRU directory go by on your screen? Sure would be nice to put that in a file for editing or whatever. We have a command file to create a BRU directory file but it is highly specialized to our applications and not very general. However, the basic sequence is as follows: .lit Install BRU: INS $BRU Get the backup set names: BRU /REW/DIR MS: Reassign LUN of BRU: REA BRU 1 CO: Start a new console log: SET /COLOG/LOGFILE=BRUDIR Make a directory file: BRU /REW/DIR/BAC:????? MS: Start a new console log: SET /COLOG/LOGFILE Remove BRU: REM BRU .eli Naturally, your tape is probably different from MS: and you want to work with an "IMAGE" backup, but you know the appropriate commands to get a BRU directory. The key is that the directory goes to the console log which is LB:[1,4]BRUDIR.LOG. Now that you have a file to work with, there is no limit to the mischief you can get into. .s1 .c ************************************* That's all from the land of Mickey Mouse, where the pool needs algaecide, A/C keeps active tasks from sweating, and non-resident drivers are called tourists. .pg .COMMENT .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT Fall 89 Symposium RSX Q and A Session .COMMENT +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .COMMENT .TEST PAGE 15 .SKIP 4 .C;Fall 89 Symposium RSX Q and A Session .S2 .c;Transcribed from tape by Phil Hannay .SK3 .c Fall 89 RSX Question and Answer Session The following are some of the questions that were posed to a panel of various DEC RSX developers assembled for the Q and A session. The answers were given by the developers with prompting from other knowledgable users in the audience. Note how long this session took to come out in print. And these are only a the first third of the questions asked. Just another reason to make plans to appear in person at the next DECUS symposium and ask your own questions in real time. By the way, this session and most others are available on tape from DECUS shortly after the end of each symposium. AND NOW WE TAKE YOU TO THE ANEHEIM CONVENTION CENTER IN ANEHEIM, CALIFORNIA, WHERE THE PROGRAM IS JUST NOW BEGINNING... .lm +4 .p -4 .S1 Q. Setting an event flag does not by itself cause a significant event. Do you always need to declare a significant event after setting an event flag? If not, when? A. There is no need for a higher priority task that sets an event flag to declare a significant event, since the active task list will be scanned from the blocked higher priority task on down. In the case where a lower priority or same priority task is setting the event flag, you will need to declare a significant event if you want to insure that another task, of same or higher priority that is waiting for the flag, will execute immediately. .S1 Q. Using XX: as the crash device in M+ V4.1 sysgen causes an "invalid device" message? Anybody else have problems? A. No. .S1 Q. What C compilers are available for RSX? A. Talk to Frank Dupchunas PDP-11 languages manager about DEC's possible field test/release. Whitesmith C is a commercial third party offering. And of course, the DECUS C available from the DECUS library. .S1 Q. Is there any chance that the terminal driver ACD (Ancillary Control Driver) mechanisms of the TTDRV is clobbering "U.A" flags set by PROENT entry point? It appears that context is destroyed if characters on the software side of the typeahead buffer have not been processed with new characters come in on the receive (RECENT) side. Any ideas? A. It seems that there may be a possible problem in this area but nothing definite. .S1 Q. Would you consider supporting more than 4 units per MSCP controller. You really need more unit numbers in schemes that involve shared disks in redunant systems. If I mung DUDRV for more units, it seems to work fine. Its just sysgen that restricts it to 4. Is there any reason why I should not increase the number of units in DUDRV? A. Not really. I think its done mostly for sanity sake since you can only have 4 disks online at one time. But I see your point, that you may want to bring different disks on and offline for different processors. We'll have to look at it, but it sounds like a reasonable suggestion. .S1 Q. How can a privileged task reliably determine the login UIC associated with a task that sends a receive data packet to that privileged task? I know I can make an inference from the task name of the sender and its assoicated TI, but its not appropriate in my case. A. You need to get it out of the UAB of the terminal associated with with the sending task. In the send packet, the TI is already in the send packet even though it is not given to the receiving task, so you can look at the packet before receiving it (in system state) to retrieve that info. Look in the DRRAS module in the exec for the message packet format. I believe the TI and UIC of the sender task follow the message itself. .S1 Q. With the retirement of the PRO hardware line and the upcoming retirement of P/OS, are there any plans to provide PRO products to the public domain? Which products? A. The person you need to talk to isn't here. You need to talk to Jeff Slayback. I believe he is looking at these issues and have some plans for the products. He's here at the symposium, just not here in the room. .S1 Q. How can you drain a print queue whose device is XOFFed, deleting those files marked for delete. I tried starting an unsued terminal port and assigning it to the queue and it did just what I wanted. But it wouldn't work for NL:. We have a lot of systems that don't have a spare terminal line. I don't want to delete the queue because it will not delete the files to be printed. I think I can write a different null device driver that could satisfy the spooler. Any easier way? A. I'm not sure why the null device NL: did not work. It looks alot like a spoolable device and I'm not sure why the queue manager would not accept it. Also, if you set up the queue as "shared", you'll have a better chance at getting a queue set up to an odd device. If I were to do that, I'd just write a new despooler task. I think your problem could have been cause by the input spool bit and output spool bit of the device (in the DCB CW1 type flags) that are not in an agreeable state (DV.RSP or something like that.) .S1 Q. We have a lot of remote terminals. When we log off, the terminal speed resets to 1200. Since we run at 9600 baud, its a pain. Is there anyway to prevent this other than BYE/H? A. Yes. Default answer speed is set when the connection is established. You can set the default answer speed to another speed. You can set it in sysgen, or use the SET /REMOTE command to set a new default answer speed (at startup or VMR) after sysgen. Also, consider setting the remote ports to AUTOBAUD to dynamically set the terminal speed upon connection. .S1 Q. Older DECnet (M+ V2.1) versions cannot talk to later M+ and VMS DECnet. It is a known problem, and it got to do with some bit not being set or something like that, with the answer from TSC being that that DEC doesn't support the old versions, so one should upgrade. But we have systems that will not go to a new version for a variety of reasons. What are the details on this problem? A. I'm not going to address the political issues of this. I will say that its an incompatiblity with the session version number. I am working on getting Colorado to have a patch available to fix the problem. It is an issue of the old versions no longer being supported under contract. However, if enough users press the issue, it will help. To clarify, any RSX11M+ DECnet version earlier than V3.0 update C will have this problem. It also includes 11M or P/OS versions of similar vintage. The logical link won't set up, so most everything does not work. .S1 Q. I have a file in directory [0,0] called BACKUP.SYS. I don't know what it is, theres nothing in the documentation and its getting larger. What is it? A. If you have one, you created it. BACKUP.SYS in [0,0] is the output of a BRU image save. .S1 Q. We have a location that is trying to set the record for the number of installed tasks. They are all attached to the same region, and when they hit 256 installed tasks, the attachment counter rolled over. If tasks a removed reducing the attachment counter to zero, the attachment structure was deleted from pool and the system crash. The temp fix was to just install more tasks. The SPR said that you would look at fixing that problem in a future release. By the way, they have now hit the 512 mark. Do you know if you've look at it yet? A. Yes, I believe we fixed that in M+ V4.1 or V4.2. .S1 Q. We are running M+ V3.0. While printing to a non-DEC printer wide carriage daisy wheel printer, the first 10 lines or so come out fine, then the next 10 lines get messed up or skipped, and then it prints the rest of the lines normally. The terminal line is set at 600 baud, but the printer is slower than that. Do you know what's happening? A. You are probably overflowing the buffer of printer since the printer cannot keep up. Normally we use XON/XOFF flow control to regulate the flow of the data, and the printer is not doing this right. It could be that flow control is not enabled on the terminal (SET#/SYNCH) or not enabled on the printer also. It could also mean the printer does not do XON/XOFF, but uses a different handshake method (like CTS/RTS hardwiring). If your printer does not do XON/XOFF, you can sometimes work around this by sending nonprintable fill characters out on the line which will buy you time for the printer to catch up with the printables. Use the SET#/VFILL and SET#/HFILL commands to direct terminal driver to insert extra nonprintable fill characters in each output line. .S1 Q. SET HOST/DTE loses it on products such as All-in-1 or VTL or an editor that send long lines when I dial out to another system. Apparently, an XOFF is passed to the terminal, which shifts it into "mumble mode", otherwise known as the graphics character set. After resetting the terminal and presing CTRL-W to refresh the screen, it does it again. I tried various permutations and switch settings, and I cannot seem to get around it. Its when an output line is extra long, like more than 80 columns. Whats up? A. It sounds like somewhere an escape sequence to switch to a different character set into GR is being lost. If your getting to the graphics, its doing the shift-in/shift-out. If its because the line has gone long, its probably DTE thats just throwing away the end of it. (from the audience: Why don't you just use Kermit, and be done with the DEC supported stuff?) That's my sentiments too, by the way. Its also possible that if you set the buffer length to a larger size before going into DTE, it'll behave. .S1 Q. Were running an 11/70 under RSX11M V3.2, with 20ma TT ports coming off a DZ-11. We want to hook a modem to one of the ports. We have a 20ma to RS232 adapter, but just can't seem to get it too work. Can we set to port to REMOTE to allow us to connect or what? A. There are no control lines on 20ma for handshaking with the modem, so setting the port REMOTE will not work. It must be left NOREMOTE. As for the modem, it is expecting some handshake signals before it will answer the phone and respond to a carrier. Your convertor may be able to supply those, or you may need to jumper the RS232 connector to bring some signals high - for sure DTR and maybe some others depending on the modem. Some modems can "force DTR" as a switch setting on the modem, allowing them to answer, even when no control lines are coming from the computer (or convertor). Be advised that in this case, the computer cannot hangup the phone if you logout after dialin. You must break carrier by hanging up the remote modem. Likewise, watch when you dialout, as you may need to physically hang up the phone when you are done. .S1 Q. We have an 11/44. When we went to V4.0 of RSX11M-PLUS, we encountered an "exec parity error" when using DECnet. Our hardware maintenace people said they thought it was a software error, so we upgraded to V4.1. However, the error persists. What is it and what does it mean? A. I don't know if you'll like the answer when I'm done. The 11/44 and 11/70 type machines have a memory trap for hardware memory errors. On an 11/70, there are some known cases where a software error will mimic the hardware error, but on an 11/44, I know of no such cases. I suspect it really is a hardware parity error. If you have trouble convincing your maintenance people, try having them move the memory cards into a different order. Chances are, the parity error will move to a new location, proving that it is hardware. If you move the cards yourself, remember to chance the addresses and other jumpers to reflect their new order. .S1 Q. We are using DECservers as a local area net with RSX-11M-PLUS V2.1. (This is reverse LAT where sessions are connected to the terminal server ports that are then attached to desired computer, as V2.1 doesn't have LAT.) When we do a broadcast ALL on a system, if there is a port that does not have an active session connected to it, our system crashes with pool exhaustion. What's causing it? A. It looks like the classic case where MCR and other device are talking back to eachother until pool runs out. It may be that the DECserver port connected to the computer is set with ACCESS LOCAL or ACCESS DYNAMIC, rather than REMOTE. In these cases, the broadcast message will be sent out, causing the terminal server to respond with a "who are you?" prompt, which then sets up the out of control jabber between the terminal server and the computer. .S1 Q. With M+, is there a way to take a full function DECnet system and converting it to a circuit router or an end node, without having to do a new NETGEN? Also, we have a number of routing nodes, and it seems the highest numbered node always becomes the circuit router, which is not what we want. How is that determined? Would the circuit cost affect it? A. In CETAB.MAC, there is a feature definition macro that contains a parameter defining if it is a level 2 router, level 1 router, or endnode. You can hand edit that parameter. The routing decision is based on routing priority and if equal, the higher node number. So you need to change the circuit priorities. The circuit cost does nothing. .lm -4 .p 5