Reusable Server KernelNew! RSK socket library documentation!
Items on this page:
- RSK Description
- Info about GA
- RSK Service Available Here
- RSK Socket Library
- Sample RSK Server
- Problem Reporting Facility
- Conference Handouts
This package lets vendors and ambitious application programmers write multithreaded server programs that are heavily exploitive of VM/ESA's best server-related technologies. These servers can be constructed without knowledge of data transport mechanisms (e.g., TCP/IP), multithreading APIs (CMS's ThreadCreate) or I/O performance boosters (e.g., VM Data Spaces) and without reinventing API suites necessary in one server after another (e.g., authorization primitives).
Provided in the PTF are:
- Line drivers for commonly-used data transport methods
- A callable DASD I/O engine that hides volume boundaries, presenting a flat, block-oriented, persistent storage model
- An authorization API relating users, objects, and actions
- An enrollment API exploitive of VM Data Spaces
- A file caching API exploitive of VM Data Spaces, including code page translation support
- An anchor API
- A storage management facility, including the ability to allocate and release storage in a VM Data Space
- An API set to manage subordinate (worker) virtual machines
- A runtime environment manager
- Administrative command sets of various kinds
- Language bindings for assembler and PL/X programmers
Experience with assembler or PL/X is required.
APAR VM61878 for VM/ESA 2.2.0 and 2.3.0 delivers the RSK. The PTF numbers are UM29139 and UM29140 respectively.
To download the GA-level documentation:
On VM 2.4.0 and later, the RSK is in the base... no PTF is needed.
The latest service for the RSK fixes all of these problems:
- Enrollment API performance
- Spool file receive nit
- ssCacheCreate ALET
- Worker API problems
- IUCV line driver
- ssMemoryRelease can be tricked
- UDP problems
- Missing nodename
- Storage management problem
- Spool file purging
- Spool ld behavior at startup
- Line driver behavior during data send
- Socket library fixes
- SPOOL LD behavior with PUNCH format
- Worker API difficulties
- Worker API and IUCV line driver
- Worker API storage overlay
The service is posted on this page in a VMARC archive file. Click here to see file details.
To download the service,
- Click here to download the archive.
- FTP the archive to your VM system in binary.
- Run the file through this CMS Pipeline:
PIPE < RSKFIX VMARC A | fblock 80 00 | > RSKFIX VMARC A F 80
- Use VMARC UNPK to unpack the service:
VMARC UNPK RSKFIX VMARC A = = A
If you do not have VMARC, use these links to download VMARC MODULE and VMARC HELPCMS. After downloading them, FTP them to your VM system in binary and then use CMS Pipelines to recover the original CMS files:
PIPE < VMARC MODULE A | deblock cms | > VMARC MODULE A PIPE < VMARC HELPCMS A | deblock cms | > VMARC HELPCMS A
We've been asked several times to enhance the RSK line drivers to give them a way to originate (not just accept) transport connections.
The quickest way we saw to help people who wanted to originate activity was to document the socket library that's already in the RSK.
This library is a thin layer over the IUCV socket API and is integrated with multitasking CMS and the RSK runtime environment.
Your server can call the socket entry points to conduct either TCP or UDP activity.
For more information, download the latest RSK documentation.
The GA level of the RSK does not come with the sample HTTP server or other "extras" that were in the beta package. I've updated those samples and extras so that they'll work with the GA level. Click here to download the VMARC file containing them.
I had the privilege of presenting an RSK workshop at this conference, held November 3, 1998 in Poughkeepsie, NY. Here are the materials from that conference: