Browse Prior Art Database

Support Dosgetinfoseg in MVS

IP.com Disclosure Number: IPCOM000101614D
Original Publication Date: 1990-Aug-01
Included in the Prior Art Database: 2005-Mar-16
Document File: 1 page(s) / 40K

Publishing Venue

IBM

Related People

Cox, D: AUTHOR [+2]

Abstract

This article describes the techniques used to gain the ability to support Process and Thread information in MVS with the same data structure as OS/2*. The problem is that in the OS/2 environment information is furnished to any program to identify the process and thread under which the program is running. This is used as a key to uniquely identify the instance of a program, when more than one instance of a program is running.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 81% of the total text.

Support Dosgetinfoseg in MVS

       This article describes the techniques used to gain the
ability to support Process and Thread information in MVS with the
same data structure as OS/2*.  The problem is that in the OS/2
environment information is furnished to any program to identify the
process and thread under which the program is running. This is used
as a key to uniquely identify the instance of a program, when more
than one instance of a program is running.

      In order to port OfficeVision (OV) code from OS/2 to MVS this
information is needed in the same format as it is provided in OS/2.
The solution is to provide a function that returns similar
information about the process and thread identity in MVS. This
information is provided to a program in OS/2 by the function
DOSGETINFOSEG, which is mimicked in OV/MVS. The equivalent concept to
the process is the address space in MVS. The information mapping is
accomplished by replacing the Process ID (PID) with the Address Space
Id (ASID). They are both half-words or 16 bits. The Task Control
Block (TCB) is an equivalent concept as the thread, but it is
identified by the TCB address. The Thread Id is a half-word in OS/2,
but the TCB address is a full-word or 32 bits.  The solution for this
information is to assign a sequential number to all TCBs in the
address space. The number is kept in the local area of the Persistent
Storage Mechanism (PSM).  The numbers are reused as TCBs come and go,
but, once assigned, th...