)_/:>   RSX11M Version 3.X Real Time Operating System   <:\_(



                       [:>    An Introduction    <:]



                                Written By:



                    -=%> Terminus  &  Lord Digital <%=-



  [%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-]

  [:  Originally Displayed On:  Metro - Net  System 001  [301]/944-3023   :]

  [:          -^:^-          -^:^-          -^:^-          -^:^-          :]

  [:     Other Boards may display this file as long as all credits and    :]

  [:       information that is found in the original, remains intact.     :]

  [-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%]



---------------

[ Description ]:>

---------------



     RSX11M is a disk-based real time operating system which runs on any PDP11

processor except the PDP11/03 or the LSI-11.It provides an environment for the

execution of multiple real time tasks (program images) using a priority

structured event driven scheduling mechanism.System generation allows the

user to configure the software for systems ranging in size from small 16K

word systems to 1920K word systems.

     RSX11M can be generated as either a mapped or unmapped system,depending on

whether the hardware configuration includes a KT11 Memory Management Unit.

If the configuration does not include hardware memory management the system

can support between 16K and 28K words of memory.If the configuration includes

hardware memory management,the system can support between 24K and 124K words

of memory on processors other than the PDP11/70,or between 64K words and 1920K

words on the PDP11/70.

     Memory is logically divided into partitions into which tasks are loaded

and  executed.Activity in a partition can be either user controlled or system-

controlled,the user determines the placement of tasks in the former,and the

system controls the placement of tasks in the latter.Automatic  memory com-

paction minimizes any fragmentation of a system controlled partition.Unmapped

systems support only User controlled partitions.Mapped systems support both

User controlled and System controlled partitions.

     Real time interrupt response is provided by the system's task scheduling

mechanism which recognizes 250 software priority levels.The user specified task

priority determines the task's eligibility to execute.A task can be fixed

in a partition to ensure immediate execution when it is activated,or it can

reside on disk while it is dormant to make memory available to other tasks.

Task checkpointing enables tasks to be displaced from a partition to enable a

higher priority non-resident task to execute.

     RSX11M offers complete program development facilities as well as a real

time response run-time system.Program development and real time tasks can

execute concurrently in systems with at least 24K words of memory.The system's

software priority levels enable the user to compile/assemble,debug and install

tasks without affecting real time task response.

     Tasks can be written in MACRO-11 assembly language,and optionally FORTRAN4

FORTRAN IV PLUS,COBOL 11,AND BASIC.Shareable libraries and system support for

user created libraries are provided.A text editor,utilities,symbol cross ref-

erence and task memory dump facility is provided to assist task development

and check out.

     The RSX11M file system provides automatic space allocation and file struc-

tures for all block-structured devices.Features include:



 [*> sequential,random,and relative (with RMS 11) file organizations.

 [*> file protection

 [*> device independence and logical device assignment.



     During system generation the user can select a minimum 2K word version of

the file system to conserve space.On systems with other than the minimum 2K

word version of the file system,multi header file support is provided.It

enables file size to be limited only by the capacity of the volume on which it

resides (usually systems have multiple 160 or 300 Mbyte CDC drives).

Indirect command file support provides batch like facilities.A terminal user

can create a file containing system commands.The system can then be instructed

to execute the commandf2in the file without operator intervention.The indirect

command file processor can be executing command files concurrent with real

time task execution.



-------------------

[ File Specifiers ]:>

-------------------



          DDnn:[group,member]filename.filetype;version/sw.../subsw...



Where:

       DDnn: Is the physical device name on which the volume containing

       the desired file is mounted.For example,DM1: or DQ1:.The name

       consists of two ascii characters followed by an optional one or

       two OCTAL unit number and a colon.

       (Note: In most cases,if a unit number is not given,it will default

       to 0.)

              DD - 2 alpha characters

              nn - 2 OCTAL numbers - range is (0-77)

              :  - required when device is specified



       [group,member] is the group number and member number associated with

       the User File Directory (UFD) containing the desired file.



              [      - required when UIC specified

              group  - OCTAL number - range is (0-377)

              member - OCTAL number - range is (0-377)

              ]      - required when UIC specified



       filename is the name of the file.



              filename - ALPHANUMERIC characters - maximum is 9



       .filetype is the filetype of the file.The filetype is a convenient

       means of distinguishing different forms of the same file.For example,

       a FORTRAN source program might be named COMP.FTN,the object file for

       the same program might be named COMP.OBJ and the runnable code for the

       program might be named COMP.TSK.



              .        - required when filetype specified

              filetype - ALPHANUMERIC characters - maximum is 3



       ;version is an OCTAL number that specifies different versions of the

       same file.For example,when a file is created,it is assigned a version

       number of 1 by default.Thereafter,each time the file is opened,the File

       Control System (FCS) - F11ACP.TSK - creates a new file with the same

       filename.filetype and a version number incremented by 1.



              ;       - required when version is specified

              version - OCTAL numbers - range is (1-77777)



       /sw.../subsw... discussed later



A program performs I/O on Logical Unit Numbers (LUNs) which the programmer or

an operator subsequently assigns to specific devices before the program will

actively use the LUNs.Also,in RSX11M a connected device is inoperable unless

there is a resident I/O Driver for the device type.An I/O driver performs

the functions that enable physical I/O operations to occur.RSX11M recognizes

two types of I/O devices:

        1. Physical Device Names - names associated with a hardware controller

        2. Pseudo - device names - names not associated with any physical de-

           vice until they are associated to a physical device.



Name      Mfgr          Physical Device

----      ----          ---------------

DB        DIVA          COMPUTROLLER V Controller

DK        DEC           RK11 Controller

DM        SI            Model 4500 Controller

DP        SI            Model 9500 Controller

DQ        SI            Model 9500 Controller with shared computer option

DX        DEC           RX11 Controller

FX        SMS           FT0100D Floppy Controller

LP        VERSATEC      Controller and Printer/Plotter

LT        TI            Model 810 Line Printer

MT                      Magtape Controller

                        (DEC TMI Controller)

                        (WP Western Peripherals)

                        (Cipher Magtape Controller)

PP        DEC           PC11 Paper Tape Punch

PR        DEC           PC11/PR11 Paper Tape Reader

TT                      Any terminal connected

XL        DEC           DL11-E Asynchronous Communications Line Interface



Logical devices are System Generation (SYSGEN) options of RSX11M that allow

the user to assign logical names to physical devices by means of the MCR

command 'ASN'.



Code                      Device Function

----                      ---------------



LB      System Library.Disk containing System Libraries

SD      Disk which contains all files necessary for normal system use

SY      System default device containing all tasks and files which do not need

        to be accessed for write functions during normal system operation.

CO      Console Output Device,device to which System error messages are sent.

        This is normally 'RED'irected to TT0:

CL      Console Listing Device.Device which receives all I/O for default LUN 6

        This is normally 'RED'irected to TT0:

TI      Terminal Input device,terminal from which a task was requested.



                        NULL Device

                        -----------

NL      The Bit Bucket





----------------------------

[ User Identification Code ]:>

----------------------------



The purpose of User Identification Codes (UIC) is to provide a method through

which files can be allocated,located and maintained on a device.On a random

access device there are User File Directories (UFD) in which files are cata-

logued.A particular UFD is referenced by specifying the associated UIC.UICs

are of the form:           [group,member]

The group number identifies the groups of directories.The member number is

used to identify a specific member of a particular group.The conventions are:



        1. Group numbers between 0 and 7 (octal) are reserved for access by

           the 'system operator'.Users assigned a group number in this range

           are therefore referred to as 'privileged users'.

        2. The UIC [0,0] is reserved for the System Directory.The associated

           UFD contains a directory of all UFD's on the device.This UFD is

           therefore the Master File Directory (MFD).

        3. No user can be assigned the UIC [0,0].



           Common UIC's on RSX11M Version 3.X



        0,0  Master File Directory

        1,1  System Libraries

        1,2  Startup and Help Files

        1,3  Lost File Directory

        1,6  Error Logging Files

        1,54 DEC System Tasks

        7,2  Error message files

        7,3  Queue Manager Files





--------------------

[ Getting Specific ]:>

--------------------



     Filetypes



     .CMD   Indirect Command File (edited and created by the editor)

     .DAT   Data File

     .DOC   Document File

     .HLP   Help File

     .LST   List file (generated by the MACRO-11 Assembler)

     .MAC   MACRO-11 Source File (Assembler)

     .MAP   Task Map File

     .MLB   Macro Library File (used by BIGMAC.TSK)

     .MSG   Message File

     .OBJ   Compiled Task Object File

     .OLB   Object Library File (used by BIGTKB.TSK)

     .PMD   Post Mortum or Snapshot Dump File (core dump)

     .SML   System Macro Library File

     .STB   Task Symbol Table File

     .SYS   Bootable Operating system File

     .TMP   Temporary File

     .TSK   Task or Driver Image File

     .TXT   Text File



        File Specification Defaults

------------------------------------------------------------------------------

|  Field        |                Default                                     |

------------------------------------------------------------------------------

| DDnn:         | SY:                                                        |

------------------------------------------------------------------------------

| [ggg,mmm]     | The UIC with which you logged on,or a UIC determined by    |

|               | the MCR command   SET /UIC=[ggg,mmm]                       |

------------------------------------------------------------------------------

| filename      | No Default                                                 |

------------------------------------------------------------------------------

| filetype      | Depends on the command string in which the file specifier  |

|               | appears.                                                   |

------------------------------------------------------------------------------

| version       | For Input files,the highest existing version.For Output    |

|               | files,the highest existing version + 1.Note that some cmds |

|               | require an explicit version number.                        |

------------------------------------------------------------------------------



                    WILDCARDS (an asterisk convention)



------------------------------------------------------------------------------

| DDnn:         | Cannot be wildcarded.Must be specified or default to SY:   |

------------------------------------------------------------------------------

| [ggg,mmm]     | All UIC's on the specified or default device except [0,0]  |

------------------------------------------------------------------------------

| Filename      | All filenames with the specified,defaulted or wildcarded   |

|               | UIC,type and version.                                      |

------------------------------------------------------------------------------

| Filetype      | All filetypes with the specified,defaulted or wildcarded   |

|               | UIC,name and version.                                      |

------------------------------------------------------------------------------

| Version       | All versions of the specified,defaulted or wildcarded UICs |

|               | names,and types.                                           |

------------------------------------------------------------------------------



-----------------------------

[ Monitor Console Interface ]:>

-----------------------------



The operator communicates with the RSX11M system from one of the following

terminals:



              [*> Teletype Models ASR/KSR-33 or ASR/KSR-35

              [*> LA-30 or LA-36 DECwriter,or

              [*> VT05,VT50,VT50H,VT52,or VT55 Display

              [*> MicroComputer emulating one of the above



MCR (Monitor Console Routine) is the interface between the terminal and the

RSX11M system.An operator communicates with MCR by typing input in response

to the default prompt '>' at an unattached terminal,or by typing input to the

explicit MCR prompt 'MCR>' at any terminal.



------------------

[ Command Syntax ]:>

------------------



It is not necessary to type the entire command name when submitting a command.

MCR requires only the first three letters of the command name,followed by the

command parameters,if any exist.If parameters exist,they must be proceeded by

at least one blank or tab.

The following example shows how the TIME command can be specified.Note that the

square brackets in the example indicate that the 'E' is optional;there the

first three letters indicate the command name.The angle brackets denote that

the enclosed values are not literally part of the command syntax.For example,

 indicates that a carriage return terminates the input line.



>TIM[E]   or TIME    is acceptable



------------

[ Keywords ]:>

------------



Some commands use keywords that generally apply to a command argument.A key-

word consists of a slash '/' followed by an '=' sign and the value of the

keyword,as follows:  /Keyword=value . Keywords can be entered in any order.As

an example of keyword usage,the Install command requires a filename argument

specifying the task to be installed.Keywords can be appended to the filename.

One such keyword, /TASK,can specify the name under which the task can be in-

stalled.



------------

[ Comments ]:>

------------



MCR treats a line of text as a comment if the first character in the line is

a semi-colon ';'.In addition,the exclamation mark '!' may be used to delimit

comments in a command.The first exclamation mark starts the comment and the

next exclamation mark or end of line terminates the comment.All text between

the two exclamation marks is ignored.For example: >; This line is a comment.

>TAS !This is a comment string! Comment are useful to clarify commands in

MCR indirect command files,remember those ?



--------------------------------------

[ Command References to Active Tasks ]:>

--------------------------------------



Task-Naming Convention - In a system that supports multi-user protechMon,more

than one copy of a task can be active simultaneously.When a user requests a

task that is already active,having requested from another terminal,the MCR

dispatcher automatically creates a name for a copy of the requested task:

tskTnn where nn is the unit number of the requesting terminal.However,to refer

to that task from the terminal that requested it,the user need only specify

the three character task name (tsk).For example,if a user requests PIP from

TT2:,when PIP is already running at another terminal,the MCR dispatcher runs

a task called PIPT2.To abort PIPT2 from TT2:,the users enters the command:

ABO PIP and MCR aborts the correct version of PIP.However to abort TT2:'s

version of PIP from another Terminal,a privileged user (me) must type:

>ABO PIPT2.Note that this naming convention does not apply to tasks requested

by the MCR RUN command.

Install-Run-Remove Tasks - whenever a user activates a task by means of the

install-run-remove option of the RUN command,the MCR Dispatcher names the

task TTnn: where nn is the unit number of the terminal that requested the

task.To refer to task TTnn: in a command issued from terminal TTnn:,the user

can omit the task name altogether.For example,if a user issues the command

>RUN $CALC from TT1:,MCR runs the task in a file called CALC.TSK listed

in the system directory (for example,[1,54] in a mapped system),and names

it TT1.To abort this task from TT1:,the user can issue the Abort command

without specifying a parameter; that is, >ABO .The command >ABO TT1: 

issued either from TT1: or any privileged terminal also causes MCR to abort

the task originally referred to as $CALC in a RUN command issued from terminal

TT1:.Only a privileged user,or a user at a privileged terminal,can abort a

task requested from another terminal.



                                 -:-:-:-:-:-:-



        /-:=-/:>::::::1984:Terminus:::&:::Lord:Digital:::::<:\-=:-\

       /--------------------------------------------------------------\

      <*=-      Call: Metro Net System 001 At:  <301>-944/3023      -=*>