BTOS MAJOR COMPONENTS

KERNEL
……MULTIPLE TASK AND PROCESS CONTROL
……PRIORITY PROCESS SCHEDULING
……INTER-PROCESS COMMUNICATIONS (IPC) PRIMITIVES

SYSTEM PROCESSES
……MEMORY MANAGEMENT
……TASK MANAGEMENT
……DEVICE MANAGEMENT
……FILE MANAGEMENT
……NETWORK MANAGEMENT

DEVICE AND INTERRUPT HANDLERS
……COMMON DEVICE AND INTERRUPT SPECIFIC CODE

SYSTEM COMMON PROCEDURES
……DEVELOPMENT LIBRARIES FOR COMMON BTOS FUNCTIONS AND PROCEDURES
……UNIFORM INTERFACE FOR CONSISTENT APPLICATION DEVELOPMENT

INTEGRATED COMMAND INTERPRETER EXECUTIVE
……FORMS ORIENTED COMMAND INTERPRETER
……PROVIDES OPERATOR INTERFACE WITH 'HELP' FACILITY
……MAY BE REPLACED BY CUSTOM APPLICATION

BTOS MANAGEMENT FACILITIES

……MEMORY AND PARTITION MANAGEMENT
……TASK AND PROCESS MANAGEMENT
……INTERRUPT MANAGEMENT
……INTER-PROCESS COMMUNICATIONS MANAGEMENT
……FILE MANAGEMENT
……TIMER MANAGEMENT
……VIDEO MANAGEMENT
……KEYBOARD MANAGEMENT
……PARAMETER MANAGEMENT
……DISK MANAGEMENT
……SYSTEM SERVICES MANAGEMENT
……QUEUE MANAGEMENT
……SPOOLER MANAGEMENT
……MOUSE MANAGEMENT
……CLUSTER MANAGEMENT
……CONTINGENCY MANAGEMENT
……CONFIGURATION MANAGEMENT

MEMORY AND PARTITION MANAGEMENT
THE MEMORY AND PARTITION MANAGEMENT FACILITY SUPPORTS THE DYNAMIC ALLOCATION AND DE-ALLOCATION OF AREAS OF MEMORY FOR STORAGE OF OBJECT CODE AND DATA.

TWO TYPES OF MEMORY ALLOCATION ARE AVAILABLE:
……LONG-LIVED MEMORY - EXPANDING DOWNWARD FROM HIGH MEMORY LOCATIONS
……SHORT-LIVED MEMORY - EXPANDING UPWARD FROM LOW MEMORY LOCATIONS

SHORT-LIVED MEMORY:
……IS ALLOCATED BY BTOS WHEN A TASK IS INITIATED
……IS DE-ALLOCATED WHEN A TASK TERMINATES
……CAN BE ALLOCATED / DE-ALLOCATED BY A SPECIFIC TASK REQUEST

LONG-LIVED MEMORY:
……IS ALLOCATED / DE-ALLOCATED BY A SPECIFIC TASK REQUEST
……CAN BE USED TO PASS PARAMETERS TO THE NEXT TASK

TERMS USED IN ADDRESSING MEMORY INCLUDE:
PHYSICAL MEMORY ADDRESS
……MEMORY ADDRESS OF A BYTE
……NOT NORMALLY USED BY BTOS

SEGMENT ADDRESS
……POINTS AT THE FIRST BYTE OF AN AREA OF MEMORY
……HIGH ORDER PART OF A PHYSICAL MEMORY ADDRESS

OFFSET ADDRESS
……BYTE ADDRESS RELATIVE TO A SEGMENT ADDRESS
……LOW ORDER PART OF A PHYSICAL MEMORY ADDRESS

LOGICAL MEMORY ADDRESS
……POINTER CONSISTING OF A SEGMENT AND OFFSET ADDRESS
……PHYSICAL ADDRESS IS SUM OF SEGMENT AND OFFSET ADDRESS

BTOS USES LOGICAL MEMORY ADDRESSING WHENEVER POSSIBLE

PHYSICAL MEMORY IS ALLOCATED AND DE-ALLOCATED IN PAGES
……PAGES ARE FIXED LENGTH PHYSICAL MEMORY AREAS
……IN REAL MODE A PAGE IS 16 WORDS LONG AND CALLED A PARAGRAPH

A MEMORY SEGMENT:
……IS A CONTIGUOUS AREA OF MEMORY
……CONSISTING OF AN INTEGRAL NUMBER OF PAGES

MEMORY SEGMENTS CAN BE:
……ADJACENT,
……DISJOINTED AND
……PARTIALLY OR TOTALLY OVERLAPPING
  (A PHYSICAL MEMORY LOCATION CAN BE IN MULTIPLE SEGMENTS}

THREE TYPES OF SOFTWARE MEMORY SEGMENTS:
……CODE - PROCESSOR INSTRUCTIONS
……STATIC DATA - LOADED INTO MEMORY FROM TASK IMAGE
……DYNAMIC DATA - ALLOCATED BY REQUEST OF THE APPLICATION

MAIN MEMORY IS ORGANIZED INTO PARTITIONS
……A PARTITION CONSISTS OF A VARIABLE NUMBER OF SEGMENTS

APPLICATION TASKS EXECUTE IN PARTITIONS

BTOS MAINTAINS THREE TYPES OF PARTITIONS:
……SYSTEM:                BTOS AND SYSTEM SERVICE APPLICATION
……PRIMARY APPLICATION:   THE APPLICATION SYSTEM CONTROLLING THE KEYBOARD AND VIDEO DISPLAY
……SECONDARY APPLICATION: BACKGROUND APPLICATION SYSTEMS

LOADING A APPLICATION TASK FOR EXECUTION CONSISTS OF:
……ASSIGNING A PARTITION
……ALLOCATING SHORT-LIVED MEMORY TO HOLD THE TASK IMAGE
……READING THE TASK IMAGE INTO THE SHORT-LIVED MEMORY
……ADJUSTING LOGICAL MEMORY ADDRESSES IN THE TASK
……SCHEDULING THE TASK FOR EXECUTION BY PRIORITY
 

TASK AND PROCESS MANAGEMENT
THE TASK AND PROCESS MANAGEMENT FACILITY PROVIDES:
……EVENT-DRIVEN PRIORITY SCHEDULING OF APPLICATIONS
……DYNAMIC CONTROL OF MULTIPLE TASKS AND PROCESSES

AN APPLICATION SYSTEM:
……IS COMPOSED OF 1 TO N TASKS AND PROCESSES
……EXECUTES IN A SPECIFIC AREA OF MAIN MEMORY

A TASK IS AN EXECUTABLE PROGRAM THAT CONSISTS OF:
……OBJECT CODE,
……DYNAMIC / STATIC DATA AND
……ONE OR MORE PROCESSES

A PROCESS IS:
……THE BASIC ELEMENT OF COMPUTATION THAT USES A PROCESSOR
……SCHEDULED FOR EXECUTION BASED ON PRIORITIES AND EVENTS

A TASK IMAGE IS:
……THE DISK RESIDENT IMAGE OF AN EXECUTABLE PROGRAM
……CREATED BY LINKING COMPILER PRODUCED OBJECT MODULES

CENTRAL PROCESSOR SCHEDULING IS DETERMINED BY PROCESS PRIORITY

A PROCESS PRIORITY CAN RANGE FROM A HIGH OF 0 TO A LOW OF 254
……PRIORITY 255 IS RESERVED FOR A BTOS NULL PROCESS

A PROCESS CONTROLS THE CENTRAL PROCESSOR UNTIL:
……IT VOLUNTARILY RELINQUISHES CONTROL
……AN EVENT CAUSES A HIGHER PRIORITY PROCESS TO EXECUTE
……A PROCESSOR TIME SLICE (AVAILABLE)

A PROCESS CAN EXIST IN ONE OF FOUR STATES:
……RUNNING:   EXECUTING INSTRUCTIONS IN THE PROCESSOR
……READY:     PRIORITY QUEUED, READY FOR EXECUTION
……WAITING:   WAITING AT AN EXCHANGE FOR A MESSAGE (IPC)
……SUSPENDED: STOPPED FOR BTOS SYSTEM REASONS
 

INTERRUPT MANAGEMENT
PROVIDES THE MECHANISMS FOR HANDLING INTERRUPTS

AN INTERRUPT:
……HALTS THE SEQUENTIAL EXECUTION OF PROCESSOR INSTRUCTIONS
……SAVES THE CURRENT CONTEXT (SOFTWARE AND HARDWARE REGISTERS)
……ENTERS THE APPROPRIATE INTERRUPT HANDLER

AFTER THE INTERRUPT CONDITION IS RESOLVED, BTOS EITHER
……RESTORES THE CURRENT PROCESS AND RESUMES EXECUTION
……SELECTS A HIGHER PRIORITY PROCESS TO RESUME EXECUTION

INTERRUPTS CAN BE EITHER:
……EXTERNAL:
…………HARDWARE ORIENTED
………………INVALID MEMORY ADDRESS, PARITY, POWER FAILURE,
…………MASKABLE OR NON-MASKABLE
……INTERNAL:
…………LOCAL TO PROCESSOR
………………I.E. DIVIDE BY ZERO, OVERFLOW, INT INSTRUCTION,
……………………ALSO KNOWN AS TRAPS
……PSEUDO:
…………IMPLEMENTED IN SOFTWARE
………………I.E. PROGRAM TIMER

HANDLERS ARE PROVIDED FOR EACH EXPECTED TYPE OF INTERRUPT

UNEXPECTED INTERRUPTS CAUSE THE SYSTEM TO 'CRASH' AND RE-INITIALIZE

FOUR KINDS OF INTERRUPT HANDLERS:
MEDIATED   RAW   TRAP    COMMUNICATIONS

MEDIATED INTERRUPT HANDLER
……PERMIT AUTOMATIC INTERRUPT NESTING BY PRIORITY
……CAN COMMUNICATE ITS RESULTS TO A PROCESS
……CAN BE WRITTEN IN FORTRAN, PASCAL OR ASSEMBLER LANGUAGE

RAW INTERRUPT HANDLER
……DISABLES ALL INTERRUPTS WHILE PROCESSING
……PROVIDES THE FASTEST EXECUTION FOR HIGH-SPEED DEVICES
……CAN SERVICE INTERNAL OR EXTERNAL INTERRUPTS, BUT NOT PSEUDO
……CONVERTS TO MEDIATED INTERRUPT HANDLER TO INFORM A PROCESS
……USUALLY WRITTEN IN ASSEMBLER LANGUAGE

TRAP INTERRUPT HANDLER
……A SPECIALIZED RAW INTERRUPT HANDLER FOR (INT) INSTRUCTION
……USED FOR ENTRY INTO HOSTED OPERATING SYSTEMS (MS-DOS)
……ENVIRONMENT OF TRAP HANDLER IS PARTITION WHERE ESTABLISHED

COMMUNICATIONS INTERRUPT HANDLER
……SUPPORTS SERIAL I/O COMMUNICATIONS CONTROLLER
……CONTROLLER SUPPORTS TWO RS232/V.24 COMMUNICATIONS CHANNELS
……SAME HANDLER CAN SERVICE BOTH COMMUNICATIONS CHANNELS
……THIS HANDLER NORMALLY SUPPLIED IN SUPPORT OF:
…………STANDARD ASYNCHRONOUS, SYNCHRONOUS AND BIT-SYNCHRONOUS
     EMULATORS, PROTOCOLS AND GATEWAYS
……CAN BE USER-WRITTEN FOR SPECIALIZED COMMUNICATIONS NEEDS

INTERRUPT HANDLERS CAN BE WRITTEN AND LINKED INTO:
……BTOS
……TASKS
……APPLICATION SYSTEMS
……SYSTEM SERVICES
 

INTER-PROCESS COMMUNICATIONS MANAGEMENT (IPC)
THE INTER-PROCESS COMMUNICATIONS FACILITY PROVIDES FOR THE PASSING OF INFORMATION (MESSAGES) BETWEEN PROCESSES.

FOR A LARGE EXTENT, THE POWER OF BTOS RESULTS FROM ITS IPC FACILITY

IPC SUPPORTS THREE MULTIPROCESSING CAPABILITIES:
……COMMUNICATIONS:      TRANSMISSION OF DATA BETWEEN PROCESSES
……SYNCHRONIZATION:     ENSURES THAT PROCESSES WORK TOGETHER
……RESOURCE MANAGEMENT: SHARING RESOURCES IN A CONTROLLED WAY

BTOS SYSTEM SERVICES REQUIRE IPC FOR NORMAL OPERATION

USER DEVELOPED APPLICATION SYSTEMS CAN ALSO USE IPC

IPC IS ACCOMPLISHED THROUGH THE USE OF
……MESSAGES:               CONVEYS INFORMATION AND PROVIDES SYNCHRONIZATION
……EXCHANGES:              A MESSAGE CENTER AND QUEUE BETWEEN PROCESSES
……BTOS KERNEL PRIMITIVES: COMMON BTOS OBJECT PROCEDURES

IPC BETWEEN PROCESSES REQUIRES:
……TWO PROCESSES (CLIENT AND SERVER)
……THREE BTOS KERNEL PRIMITIVES (REQUEST, RESPOND AND WAIT)
……TWO EXCHANGES (REQUEST AND RESPONSE)
……MESSAGE (REQUEST BLOCK)

THE CLIENT PROCESS:
……ALLOCATES AND MANAGES THE REQUEST EXCHANGE
……ALLOCATES AND MANAGES THE REQUEST MESSAGES
……USES THE BTOS KERNEL PRIMITIVES SEND AND WAIT

THE SERVER PROCESS:
……ALLOCATES AND MANAGES THE RESPONSE EXCHANGE
……ALLOCATES AND MANAGES THE RESPONSE MESSAGE
……USES THE BTOS KERNEL PRIMITIVES SEND AND WAIT

THE BTOS IPC KERNEL PRIMITIVES:
REQUEST PRIMITIVE
……QUEUES A REQUEST FROM A CLIENT PROCESS TO THE
……REQUEST EXCHANGE OF A SERVICE PROCESS
RESPOND PRIMITIVE
……USED BY A SERVICE PROCESS TO QUEUE A RESPOND IN THE
……EXCHANGE OF A WAITING CLIENT PROCESS
WAIT PRIMITIVE
……USED TO SUSPEND A PROCESS EXECUTION UNTIL A MESSAGE
……IS AVAILABLE AT AN EXCHANGE

IPC EXCHANGES ARE ALLOCATED IN THREE WAYS:
……AT BTOS SYSTEM BUILD TIME FOR SOME SYSTEM SERVICES
……DYNAMICALLY ALLOCATED AS NEEDED BY APPLICATION SYSTEMS
……DYNAMICALLY DE-ALLOCATED AS NEEDED BY APPLICATION SYSTEMS
……A DEFAULT RESPONSE EXCHANGE IS ASSIGNED AT PROCESS EXECUTION

THE MESSAGE (REQUEST BLOCK) CONSISTS OF FIVE PARTS:
……A STANDARD HEADER
……REQUEST SPECIFIC CONTROL INFORMATION
……A ROUTING CODE
……DESCRIPTIONS OF THE REQUEST DATA ITEMS
……DESCRIPTIONS OF THE RESPONSE DATA ITEMS
……DATA ITEMS

STANDARD IPC (TWO WAY) BETWEEN TWO PROCESSES WOULD BE:
SERVER PROCESS:
……'WAIT'S FOR REQUEST MESSAGE IN SERVICE EXCHANGE
CLIENT PROCESS:
……PREPARES REQUEST MESSAGE FOR SERVICE TO PROCESS
……SENDS MESSAGE TO REQUEST EXCHANGE USING 'REQUEST'
……WAITS FOR MESSAGE IN RESPONSE EXCHANGE USING 'WAIT'
SERVER PROCESS:
……AWAKES AND PROCESSES REQUEST MESSAGE FROM CLIENT
……PREPARES RESPONSE MESSAGE FOR CLIENT TO PROCESS
……SENDS MESSAGE TO RESPONSE EXCHANGE USING 'RESPOND'
CLIENT PROCESS:
……AWAKES AND PROCESSES RESPONSE FROM SERVER

A FILTER PROCESS IS A SPECIAL IPC SERVICE USED TO MODIFY
AND ADD-VALUE TO STANDARD SERVICE PROCESS
……INTERCEPT MESSAGES FOR SPECIAL PASSWORD VALIDATION
……INTERCEPT MESSAGES FOR SPECIAL BACKUP LOGGING
……SPECIAL ENCRYPTION OF DATA IN MESSAGES
……SUPPLY A SPECIAL GATEWAY BETWEEN INCONSISTENT PROCESSES

A FILTER PROCESS IS INTERPOSED BETWEEN CLIENT & SERVICE PROCESS
INTERACTION OF A FILTER PROCESS WOULD BE:
SERVER PROCESS:
……'WAIT'S FOR REQUEST MESSAGE IN SERVICE EXCHANGE
FILTER PROCESS:
……'WAIT'S FOR REQUEST MESSAGE IN FILTER EXCHANGE
CLIENT PROCESS:
……PREPARES REQUEST MESSAGE FOR SERVICE TO PROCESS
……SENDS MESSAGE TO (FILTER) EXCHANGE USING 'REQUEST'
FILTER PROCESS:
……AWAKES AND PROCESSES REQUEST MESSAGE FROM CLIENT
……PREPARES FILTERED MESSAGE FOR SERVICE TO PROCESS
……SENDS MESSAGE TO REQUEST EXCHANGE USING 'RESPOND'
SERVER PROCESS:
……AWAKES AND PROCESSES REQUEST MESSAGE FROM CLIENT
……PREPARES RESPONSE MESSAGE FOR CLIENT TO PROCESS
……SENDS MESSAGE TO (FILTER) EXCHANGE USING 'RESPOND'
FILTER PROCESS:
……AWAKES AND PROCESSES RESPONSE FROM SERVER
……SENDS MESSAGE TO (CLIENT) EXCHANGE USING 'RESPOND'
CLIENT PROCESS:
……AWAKES AND PROCESSES RESPONSE FROM SERVER (FILTER)

IPC IS SUPPORTED IN A SPECIAL WAY FOR CLUSTER CONFIGURATIONS

IN THE CLUSTER CONFIGURATION,
……IPC IS EXTENDED TO PROVIDE TRANSPARENT ACCESS FROM CLUSTER
    WORKSTATIONS TO SERVER PROCESSES THAT EXECUTE AT THE
    MASTER WORKSTATION
……THIS EXTENSION IS PROVIDED THROUGH A IPC FILTER OPERATION BY
    THE BTOS INTER-STATION COMMUNICATION (ISC) FACILITY
 

FILE MANAGEMENT
THE FILE MANAGEMENT FACILITY PROVIDES FOR METHODS FOR MANAGING
DISK FILES

A DISK FILE IS A COLLECTION OF DISK SECTORS UNDER A GIVEN NAME

A DISK FILES ARE ORGANIZED ON DISK BY:
[ VOLUME ] DEVICE - LOGICAL OR HARDWARE NAME
< DIRECTORY > NAME OF A SET OF FILES
FILE-NAME SPECIFIC FILE NAME

DISK FILE PASSWORD PROTECTION IS AT THE FOLLOWING LEVELS:
……DEVICE - VOLUME - DIRECTORY - FILE-NAME

FILE MANAGEMENT PROVIDES ACCESS TO DISK FILE DATA AS:
……RANDOMLY ADDRESSED 512 BYTE SECTORS
……UP TO 127 SECTORS CAN BE READ OR WRITTEN IN SINGLE REQUEST
……DATA TRANSFER IS DIRECTLY FROM DISK TO REQUESTING BUFFER

FILE MANAGEMENT EFFICIENCY IS PROVIDED IN THE FOLLOWING WAYS:
……CAREFUL DATA PLACEMENT {MINIMIZE DISK HEAD MOVEMENT}
……RANDOMIZATION (HASHING) TECHNIQUES {MINIMIZING DISK READS}

FILE MANAGEMENT RELIABILITY IS PROVIDED IN THE FOLLOWING WAYS:
……MULTILEVEL PASSWORD PROTECTION {VOLUME, DIRECTORY OR FILE}
……MULTIPLE FILE PROTECTION LEVELS {FILE EXPANSION, ETC.}
……DUPLICATION OF TWO VOLUME CONTROL STRUCTURES {VHB AND FHB}

FILE MANAGEMENT CONVENIENCE IS PROVIDED IN THE FOLLOWING WAYS:
……SIMPLE ORGANIZATION OF DISK FILE DATA
……SUPPORTS LONG FILE NAMES
……DYNAMIC FILE LENGTHS {FILE MUST FIT ON ONE DISK}
……AUTOMATIC RECOGNITION OF VOLUMES PLACED ON-LINE
……READ (SHARED) OR MODIFY (EXCLUSIVE) FILE MODES
……DEVICE INDEPENDENCE {DEVICE IS TRANSPARENT TO USER}

IN A CLUSTER CONFIGURATION,
……FILES CAN BE LOCATED AT CLUSTER WORKSTATIONS USING LOCAL DISK STORAGE,
……AS WELL AS AT THE MASTER WORKSTATION DISK STORAGE

AN APPLICATION DEVELOPER CAN IN ANY OPEN FILE:
……READ OR WRITE A 512 BYTE SECTOR WITH ONE DISK ACCESS
……READ OR WRITE UP TO 65,024 BYTES WITH ONE DISK OPERATION
……OVERLAP INPUT AND OUTPUT WITH PROCESS EXECUTION
……OPTIMIZE DISK ARM SCHEDULING

FILE ACCESS METHODS AUGMENT FILE MANAGEMENT
……- FILE MANAGEMENT ORGANIZES DATA IN 512 BYTE SEGMENTS
……- FILE ACCESS METHODS ORGANIZE DATA AS ONE OF THE FOLLOWING:
       AN UNSTRUCTURED SEQUENCE OF BYTES (SAM)
       A SEQUENCE OF VARIABLE-LENGTH RECORDS (RSAM)
       A SEQUENCE OF FIXED-LENGTH RECORDS (DAM AND ISAM)

SEQUENTIAL ACCESS METHOD (SAM):
……UNSTRUCTURED SEQUENCE OF BYTES
……SEQUENTIAL INPUT/OUTPUT
……AUTOMATIC OVERLAPPED INPUT/OUTPUT
……FILES CAN BE OPENED FOR READ, WRITE AND APPEND

RECORD SEQUENTIAL ACCESS METHOD (RSAM):
……SEQUENCE OF FIXED OR VARIABLE-LENGTH RECORDS
……SEQUENTIAL INPUT/OUTPUT
……AUTOMATIC OVERLAPPED INPUT/OUTPUT
……FILES CAN BE OPENED FOR READ, WRITE AND APPEND
……OPERATIONS FOR SCANNING FORWARD TO NEXT WELL-FORMED RECORD

DIRECT ACCESS METHOD (DAM):
……SEQUENCE OF NUMBERED, FIXED-LENGTH RECORDS
……RANDOM INPUT/OUTPUT BY RECORD NUMBER
……NON-OVERLAPPED INPUT/OUTPUT
……FILES CAN BE OPENED FOR READ OR MODIFY

INDEXED SEQUENTIAL ACCESS METHOD (ISAM):
……A MULTI-KEY, MULTI-USER ACCESS METHOD
……SEQUENCE OF KEYED, FIXED-LENGTH RECORDS
……RANDOM AND SEQUENTIAL INPUT/OUTPUT
……NON-OVERLAPPED INPUT/OUTPUT
……USES DAM ACCESS METHODS
……DATA SET IS MAINTAINED IN TWO PHYSICAL FILES:
    INDEX FILE
       HOLDS INDEXES FOR ALL KEYS IN A DATA SET
    DATA STORE FILE
       HOLDS THE DATA RECORDS
 

TIMER MANAGEMENT
THE TIMER MANAGEMENT FACILITY PROVIDES CURRENT DATE AND TIME

THE TIMER MANAGEMENT FACILITY HAS FOUR FUNCTIONS:
……REAL-TIME CLOCK
……PROGRAMMABLE INTERVAL TIMER
……MAINTAIN DAY, DATE AND TIME DATA STRUCTURES
……DELAY

THE REAL-TIME CLOCK PROVIDES:
……TIME AND DATE FOR EACH WORKSTATION
……REAL-TIME CLOCK INTERRUPT HANDLER
……ONE SHOT TIMING IN 100 MS INTERVALS
……REPETITIVE TIMER IN 100 MS INTERVALS

THE PROGRAMMABLE INTERVAL TIMER IS PROVIDES HIGH RESOLUTION TIME FOR PSEUDO-INTERRUPT HANDLERS

THE DAY, DATE AND TIME DATA STRUCTURES PROVIDE
……TIME TO AN ACCURACY OF 1 SECOND
……DATES UP TO THE YEAR 2042

THE DELAY FACILITY ALLOWS A PROCESS TO BE SUSPENDED FOR A SPECIFIC INTERVAL IN MULTIPLES OF 100 MS
 

VIDEO MANAGEMENT
THE VIDEO MANAGEMENT FACILITY PROVIDES FOR THE DISPLAY OF
ALPHANUMERIC INFORMATION BY AN APPLICATION SYSTEM

VIDEO MANAGEMENT CONSISTS OF HARDWARE AND SOFTWARE:
……VIDEO CONTROLLER HARDWARE
……VIDEO CONTROL SOFTWARE
……LOADABLE SOFT FONT TABLE
……SOFT FONT DESIGN PROGRAM

THE VIDEO CONTROLLER HARDWARE LOCATED IN THE PROCESSOR MODULE:
……READS CHARACTERS AND ATTRIBUTES FROM THE 4096 WORD
……(8192 CHARACTER) VIDEO CHARACTER MAP
……EMPLOYS A MODIFIABLE 4096 WORD VIDEO FONT RAM (SOFT FONT)
……CONVERTS THE CHARACTERS TO A PATTERN OF DOTS (PIXELS) FOR THE VIDEO DISPLAY

THE VIDEO IS TREATED AS A NUMBER OF RECTANGULAR AREAS (FRAMES)
……UP TO EIGHT FRAMES CAN BE DYNAMICALLY DEFINED AND MANAGED
……THE PURPOSE OF EACH FRAME IS APPLICATION SYSTEM DEPENDENT
……SUPPORTS HORIZONTAL WINDOWS

VIDEO CHARACTER ATTRIBUTES INCLUDE:
……BLINKING BOLD HALF-BRIGHT
……REVERSE VIDEO STRUCK-THROUGH UNDERLINE

VIDEO LINE ATTRIBUTES INCLUDE:
……DOUBLE-HIGH CHARACTERS (B27)
……DOUBLE-WIDE CHARACTERS (B27)

VIDEO DISPLAY ATTRIBUTES INCLUDE:
……VARIABLE NUMBER OF LINES (1-34)
……VARIABLE NUMBER OF COLUMNS (1-132)

THREE LEVELS OF VIDEO SOFTWARE CONTROL ARE PROVIDED:
……VIDEO DISPLAY MANAGEMENT (VDM)
……VIDEO ACCESS METHOD (VAM)
……VIDEO SEQUENTIAL ACCESS METHOD (SAM)

THE VDM FACILITY PROVIDES DIRECT CONTROL OVER THE VIDEO HARDWARE
……DETERMINE THE LEVEL OF VIDEO HARDWARE PRESENT
……LOAD A NEW CHARACTER FONT INTO THE FONT RAM
……CHANGE SCREEN ATTRIBUTES WHILE THE SCREEN IS BEING REFRESHED
……STOP VIDEO REFRESH
……DEFINE VIDEO FRAMES
……INITIALIZE EACH VIDEO FRAME
……INITIALIZE THE CHARACTER MAP

THE VDM FACILITY IS THE MOST EFFECTIVE METHOD OF MANAGING THE VIDEO

THE VAM FACILITY PROVIDES:
……A SET OF SYSTEM COMMON PROCEDURES
……DIRECT ACCESS TO THE CHARACTERS AND ATTRIBUTES OF EACH FRAME
……VAM OPERATIONS INCLUDE:
……PLACE A CHARACTER STRING ANYWHERE IN A FRAME
……SPECIFY CHARACTER ATTRIBUTES FOR A STRING
……SCROLL A FRAME UP OR DOWN
……POSITION A CURSOR IN A FRAME
……BLANK A FRAME

THE VAM FACILITY IS:
……IDEAL FOR FORMS-ORIENTED INTERACTION
……CONVENIENT FOR ADVANCED TEXT PROCESSING

THE VIDEO SAM FACILITY PROVIDES VIDEO ACCESS THROUGH BYTE STREAMS

THE VIDEO SAM VIDEO BYTE STREAMS SUPPORT:
……MULTIPLE FRAMES
……CHARACTER ATTRIBUTES
……POSITIONING OF A CHARACTER IN A FRAME
……CURSOR POSITIONING

STANDARD SAM OPERATIONS ARE AUGMENTED FOR THE VIDEO BY THE FOLLOWING:
……SPECIAL CHARACTER INTERPRETATIONS
……MULTIPLE ESCAPE SEQUENCES THAT CONTROL THE VIDEO CAPABILITY
……DEVICE DEPENDENT OPERATION THAT RETURNS INFORMATION ON THE VIDEO
 

KEYBOARD MANAGEMENT
THE KEYBOARD MANAGEMENT FACILITY ENABLES AN APPLICATION SYSTEM
TO CONTROL THE KEYBOARD

THE KEYBOARD IS MANAGED BY A CUSTOMIZABLE TRANSLATION TABLE
……SUPPORTS 256 KEY KEYBOARDS
……ATTRIBUTES FOR EACH KEY INCLUDE:
     KEY REPEAT START TIME
     KEY REPEAT RATE
     IMPACT OF 'LOCK' KEY ON SHIFTED CHARACTER

BTOS KEYBOARD MANAGEMENT SUPPORTS A LARGE VARIETY OF KEYBOARDS

THE APPLICATION SYSTEM CAN REQUEST INPUT IN EITHER:
……UN-ENCODED MODE:- ONE 8 BIT BYTE FOR EACH KEY MOTION
……CHARACTER MODE :- ONE 8 BIT BYTE FOR EACH KEY DEPRESSION
     EXCEPT: SHIFT, CODE, LOCK OR ACTION KEYS

THE MICROPROCESSOR IN THE KEYBOARD SUPPORTS UN-ENCODED MODE:
……EACH DEPRESSION AND RELEASE OF A KEY GENERATES A 8 BIT BYTE
……THE 8 BIT BYTE IDENTIFIES THE KEY AND THE DIRECTION OF MOTION

KEYBOARD MANAGEMENT DIRECTLY SUPPORTS CHARACTER MODE:
……REMEMBERS KEYS AS THEY ARE DEPRESSED
……DETERMINES WHEN A SPECIFIC CHARACTER HAS BEEN TYPED
……CONVERTS THAT CHARACTER USING THE KEYBOARD ENCODING TABLE
……SUPPLIES THE ENCODED CHARACTER TO THE APPLICATION SYSTEM

KEYBOARD LED INDICATORS ARE CONTROLLED BY THE APPLICATION SYSTEM

KEYBOARD MANAGEMENT SUPPORTS A TYPE-AHEAD BUFFER OF 128 BYTES

KEYBOARD MANAGEMENT DOES NOT ECHO CHARACTERS TO THE VIDEO DISPLAY
THE APPLICATION SYSTEM IS FREE TO INTERPRET EACH KEY AS NEEDED

THE 'ACTION' KEY IS A TYPE OF SHIFT KEY AND PROCESSED SPECIAL BY KEYBOARD MANAGEMENT.

THE 'ACTION' KEY MODIFIES THE INTERPRETATION OF OTHER KEYS:
……'ACTION-DELETE' :
      CLEARS THE TYPE AHEAD BUFFER
……'ACTION-OVER TYPE' :
      TURNS OFF THE VIDEO DISPLAY REFRESH
……'ACTION-FINISH' :
      ENDS THE EXECUTION OF THE APPLICATION SYSTEM
      ( IF NOT OVERRIDDEN BY APPLICATION )
……'ACTION-A' AND 'ACTION-B' :
      INVOKE THE `DEBUGGER' FACILITY
……OTHER 'ACTION' KEY COMBINATION :
      AVAILABLE FOR THE APPLICATION
 

PARAMETER MANAGEMENT
PROVIDES A STRUCTURED MECHANISM FOR PASSING INFORMATION FROM ONE APPLICATION SYSTEM TO IT'S SUCCESSOR IN THE SAME PARTITION

PARAMETERS ARE PASSED IN A VARIABLE LENGTH PARAMETER BLOCK (VLPB)

THE VLPB IS ALLOCATED AND INITIALIZED BY THE PASSING APPLICATION

THE VLPB IS ANALYZED BY THE SUCCESSOR APPLICATION

PARAMETER PASSING MUST TAKE PLACE IN THE SAME PARTITION

TWO TYPE OF PARAMETERS SUPPORTED:
……REGULAR PARAMETER {CAN CONSIST OF ZERO OR MORE SUB-PARAMETERS}
……SUB-PARAMETER {ARBITRARY SEQUENCE OF NON-BLANK CHARACTERS}

USERS OF PARAMETER MANAGEMENT INCLUDE:
……BTOS EXECUTIVE COMMAND INTERPRETER
……BATCH MANAGER
 

DISK MANAGEMENT
THE DISK MANAGEMENT FACILITIES PROVIDE DEVICE-LEVEL ACCESS TO DISK

FILE MANAGEMENT FACILITIES PROVIDES FOR FILE-LEVEL ACCESS

DEVICE LEVEL ACCESS IS REQUIRED IN ORDER TO:
……READ A FLOPPY DISKETTE WRITTEN ON A NON-B20 SYSTEM
……FORMAT AN INITIALIZED DISK

DEVICE LEVEL ACCESS IS PROVIDED FOR THE FOLLOWING MEDIA
……SINGLE OR DUAL SIDED,SINGLE OR DOUBLE DENSITY 5 1/4 INCH FLOPPY

THE DEVICE SPECIFICATION FOR ACCESS OF A DISK DEVICE IS:
……IF THE DEVICE IS A VALID FILE SYSTEM,
     [VOLUME NAME] (REQUIRES VOLUME PASSWORD)
……IF THE DEVICE IS NOT A VALID FILE SYSTEM,
     [DEVICE NAME] (REQUIRES DEVICE PASSWORD)
 

SYSTEM SERVICES MANAGEMENT
THE SYSTEM SERVICE FACILITIES PROVIDE FOR SYSTEM SERVICE PROCESSES TO BE INSTALLED AND MAINTAINED

BTOS INCLUDES MANY SYSTEM SERVICE PROCESSES THAT ARE SYSTEM-WIDE MANAGER FOR RESOURCES:
FILES   MEMORY   KEYBOARD   DATA   COMMUNICATIONS   ETC.

SYSTEM SERVICES ARE SCHEDULED FOR EXECUTION LIKE APPLICATION PROCESSES

SYSTEM SERVICES ARE AVAILABLE AT THE WORKSTATION WHERE INSTALLED
……IF INSTALLED AT THE MASTER WORKSTATION IN A CLUSTER,
     - ALL SLAVES WORKSTATIONS CAN ACCESS THE SYSTEM SERVICE

SYSTEM SERVICES CAN BE USER DEVELOPED AND CAN BE:
……LINKED INTO BTOS FOR AUTOMATIC INSTALLATION
……DYNAMICALLY INSTALLED
……DYNAMICALLY DE-INSTALLED

STANDARD SYSTEM SERVICES INCLUDE
……QUEUE MANAGER
……SPOOLER
……CONTEXT MANAGER
……ISAM
 

QUEUE MANAGEMENT
THE QUEUE MANAGEMENT FACILITY PROVIDES A SYSTEM SERVICE FOR SUPPORTING QUEUES

BTOS QUEUES ARE:
……NAMED,
……PRIORITY-ORDERED,
……DISK BASED AND
……ALL QUEUE INFORMATION IS CONTAINED IN QUEUE ENTRY FILES

A QUEUE ENTRY FILE CONTAINS INFORMATION FOR A PROCESSING SYSTEM:
……USER APPLICATION SYSTEM
……SPOOLER (SPOOLED PRINTING)
……BATCH MANAGER (SECONDARY PARTITION PROCESSING)
……BSC 3270 REMOTE JOB ENTRY (RJE)
……SNA RJE

QUEUE INFORMATION CAN BE CREATED AND MODIFIED
……BY SERVER PROCESSES ( SPOOLER, BATCH MANAGER, SNA RJE, ETC.)
……BY CLIENT PROCESSES ( WORD PROCESSOR, USER APPLICATION, ETC.)
 

SPOOLER MANAGEMENT
THE SPOOLER MANAGEMENT FACILITY PROVIDES A SYSTEM SERVICE FOR SUPPORTING SPOOLED PRINTING

PRINTER OUTPUT IS PLACED IN A DISK FILE BEFORE PRINTING

PRINT SCHEDULING IS MANAGED BY THE QUEUE MANAGEMENT FACILITIES

SPOOLER SUPPORTS PRINTERS ATTACHED TO THE:
……SERIAL (RS232/V.24) PORTS
……PARALLEL (CENTRONICS COMPATIBLE) PORT

PRIORITY PRINT SCHEDULING IS SUPPORTED

INSTALLATION PARAMETERS INCLUDE:
……PRINTER NAME
……SCHEDULING QUEUE NAME
……PRINTER CONFIGURATION FILE SPECIFICATION
……THE PRIORITY OF THE PROCESS THAT CONTROLS THE PRINTER
……PRINT CONTROL OF SPOOLER BANNER PAGE
 

MOUSE MANAGEMENT
THE MOUSE MANAGEMENT FACILITY PROVIDES THE MECHANISM FOR SUPPORTING A POINTING (MOUSE) DEVICE

THE MOUSE CONNECTS TO THE KEYBOARDS SPARE I-BUS CONNECTOR

A MOUSE SYSTEM SERVICE IS INSTALLED AT EACH WORKSTATION

USER SELECTABLE CURSOR SHAPE AND CURSOR MOVEMENT SPEED

OBJECT LIBRARY PROVIDED FOR USER APPLICATION DEVELOPMENT
 

CLUSTER MANAGEMENT
THE CLUSTER MANAGEMENT FACILITY PROVIDES THE MECHANISM FOR COMMUNICATION BETWEEN WORKSTATIONS

CLUSTER MANAGEMENT USES THE HIGH SPEED RS422 (1.8 MEGABITS) CHANNELS IN THE B25 PROCESSOR

SUPPORTS (MASTER - SLAVE) MULTI-USER SHARING OF RESOURCES

MULTIPLE SLAVES CAN SHARE A MASTER'S RESOURCES

MASTER WORKSTATION MAINTAINS:
……STATISTICS ON CLUSTER USAGE AND
……STATISTICS ON ANY CHANNEL ERRORS
 

CONTINGENCY MANAGEMENT
THE CONTINGENCY MANAGEMENT FACILITY PROVIDES MECHANISMS FOR HANDLING ERROR CONDITIONS

ERROR CONDITIONS CAN BE:
……HARDWARE FAULTS (MEMORY PARITY ERROR, ETC.)
……INCONSISTENCIES FOUND BY BTOS (BAD CHECK SUM, ETC. )
……PROBLEMS DETECTED BY APPLICATIONS PROGRAMS

BTOS TERMINATES EXECUTION WHEN IT DETECTS FATAL INCONSISTENCIES

HARDWARE FAULTS NORMALLY STOP BTOS SYSTEM OPERATION

USER-WRITTEN INTERRUPT HANDLERS CAN BE USED FOR SPECIAL HANDLING

BTOS CRASH CONDITIONS ARE RECORDED IN SYSTEM LOG FILE

BTOS RE-BOOTS AFTER ALL SYSTEM CRASHES
 

CONFIGURATION MANAGEMENT
THE CONFIGURATION MANAGEMENT FACILITY PROVIDES A MECHANISM FOR AUTOMATICALLY DETERMINING WORKSTATION CONFIGURATION

THE BOOTSTRAP POLLS EACH MODULE AND BUILD THE TABLE OF ID'S

EACH MODULE OR INPUT DEVICE ON A WORKSTATION HAS AN ID NUMBER:
A 16 BIT NUMBER THAT IDENTIFIES THE TYPE OF UNIT

DATA STRUCTURES ARE MAINTAINED OF THE CONFIGURATION INFORMATION:
BTOS SYSTEM CONFIGURATION:
……COMMON STRUCTURES AND PROCEDURES GIVE INFORMATION ON:
……SYSTEM HARDWARE,
……OPERATING SYSTEM,
……CURRENT OPERATION, ETC.

THE IDs OF ALL MODULES PRESENT ON THE SYSTEM:
……X-BUS (B26/B28)
……F-BUS (B27)
……SERIAL DEVICE BUS (I-BUS)