Providing additional system characteristics to a data processing system through operations of an application program, transparently to the operating system
First Claim
1. A method of processing of I/O functions of application programs being executed on a first central processing element and its associated first operating system in a first data processing system which is lacking a predetermined characteristic comprising the steps ofdirectly coupling the first central processing element to a second central processing element which forms a part of a second data processing system having said characteristic and including I/O devices and facilities coupled to the second processing element and addressable by an associated second operating system and indirectly addressable by a programmer via requests to the second operating system;
- transferring, under the control of a predetermined second application program executed on the second processing element, I/O commands and data of first application programs being executed on the first processing element from the first processing element to the second processing element via said direct coupling in a manner which is transparent to the second operating system; and
converting in one of said data processing systems said I/O commands and data to commands executable by and data useable by said second processing element and its second operating system so that I/O functions of programs being executed on the first processing element and its first operating system are available for processing in the second data processing system under control of the second operating system having said predetermined characteristic.
1 Assignment
0 Petitions
Accused Products
Abstract
The functions of two virtual operating systems (e.g., S/370 VM, VSE or IX370 and S/88 OS) are merged into one physical system. Partner pairs of S/88 processors run the S/88 OS and handle the fault tolerant and single system image aspects of the system. One or more partner pairs of S/370 processors are coupled to corresponding S/88 processors directly and through the S/88 bus. Each S/370 processor is allocated from 1 to 16 megabytes of contiguous storage from the S/88 main storage. Each S/370 virtual operating system thinks its memory allocation starts at address 0, and it manages its memory through normal S/370 dynamic memory allocation and paging techniques. The S/370 is limit checked to prevent the S/370 from accessing S/88 memory space. The S/88 Operating System is the master over all system hardware and I/O devices. The S/88 processors access the S/370 address space in direct response to a S/88 application program so that the S/88 may move I/O data into the S/370 I/O buffers and process the S/370 I/O operations. The S/88 and S/370 peer processor pairs execute their respective Operating Systems in a single system environment without significant rewriting of either operating system. Neither operating system is aware of the other operating system nor the other processor pairs.
-
Citations
26 Claims
-
1. A method of processing of I/O functions of application programs being executed on a first central processing element and its associated first operating system in a first data processing system which is lacking a predetermined characteristic comprising the steps of
directly coupling the first central processing element to a second central processing element which forms a part of a second data processing system having said characteristic and including I/O devices and facilities coupled to the second processing element and addressable by an associated second operating system and indirectly addressable by a programmer via requests to the second operating system; -
transferring, under the control of a predetermined second application program executed on the second processing element, I/O commands and data of first application programs being executed on the first processing element from the first processing element to the second processing element via said direct coupling in a manner which is transparent to the second operating system; and converting in one of said data processing systems said I/O commands and data to commands executable by and data useable by said second processing element and its second operating system so that I/O functions of programs being executed on the first processing element and its first operating system are available for processing in the second data processing system under control of the second operating system having said predetermined characteristic. - View Dependent Claims (2, 3)
-
-
4. A method of providing a single system image for application programs executing on a first central processing element under the control of a first operating system lacking a single system image characteristic, comprising the steps of
directly coupling the first processing element to a second central processing element which forms a part of a complex of interconnected second processing elements having associated therewith respective second operating systems; -
said second processing elements, their respective second operating systems and I/O resources in the complex providing a single system image within the complex for application programs executed on the second processing elements under the control of the respective second operating systems; transferring I/O commands and data of application programs executed on the first processing element from the first processing element to the coupled second processing element transparent to the respective second operating systems of the coupled second processing element; converting in said complex said I/O commands and data to commands executable by and data useable by said coupled processing element and its respective second operating system so that I/O functions of application programs executing on the first processing element and its first operating system are available for processing by the coupled second processing element under control of its respective second operating system with a single system image of the complex. - View Dependent Claims (5, 6)
-
-
7. A data processing method comprising the steps of
executing first application programs on a first central processing element and first hardware connected to the first processing element under the control of a first operating system, executing second application programs on a second central processing element and second hardware including I/O devices connected to the second processing element under the control of a second operating system with a predetermined I/O operating characteristic, directly coupling the first processing element and first hardware to the second processing element, uncoupling said second processing element from its hardware and transferring I/O commands and data from the first processing element and first hardware to the second processing element while the second processing element is uncoupled from its hardware under the control of a predetermined one of said second application programs when I/O commands are encountered in the first application programs, recoupling the second processing element with its hardware after completing the transferring of I/O commands and data from the first processing element and hardware, converting said I/O commands and data to commands executable by and data useable by said second processing element and its second operating system so that I/O functions of the first processing element and its first operating system are available for processing by the second processing element and its connected second hardware under control of its second operating system.
-
9. In a data processing system of the type in which a plurality of modules are interconnected by a high speed data interconnection, in which each module includes at least one each of a first central processing element, a main storage and an I/O device coupled to each other and managed and controlled by a respective first operating system to operate as a single processing unit, and in which the respective first operating systems assign corresponding unique object names to all I/O devices and sets of data resident in the modules so that means controlled by each one of the operating systems can access sets of data resident in all of the interconnected modules via said object names without an active intervention of the other operating systems, thereby providing a single system image to users of each of the modules;
- the improvement comprising
at least one additional processing element in one of the modules, alien to the respective operating system of a respective first central processing element of said one module, and managed and controlled by an operating system dissimilar to the first operating systems; means for tightly coupling said additional processing element to the respective first central processing element within said one module; means controlled by a predetermined application program executed on the respective first processing element for transferring I/O commands and data of application programs executed on the additional processing element from the additional processing element to said respective first processing element transparent to the operating system of the respective processing element; and means in said one module for converting said I/O commands and data to commands executable by and data useable by the respective first processing element so that I/O functions of said additional processing element are available for processing within the plurality of modules under control of the operating system of the respective processing element without an active intervention by other first operating systems. - View Dependent Claims (10, 11)
- the improvement comprising
-
12. A data processing system comprising
a plurality of modules interconnected by a high speed data interconnection; -
each module including at least one each of a first central processing element, a main storage and an I/O resource connected to each other and managed and controlled by a respective first operating system to operate as a single processing unit; means including the first operating systems assigned corresponding unique object names to all I/O resources and stored data sets within all of the modules so that each one of the operating systems can access said resources and data sets resident in any of the interconnected modules via object names without an active intervention of the other operating systems, thereby providing a single system image to users of each of the modules; at least one additional processing element in one of the modules, alien to the first operating systems, and managed and controlled by an operating system dissimilar to the first operating systems; means tightly coupling said additional processing element to a respective first central processing element within said one module; means controlled by a predetermined application program executed on the respective first processing element for transferring I/O commands and data of programs executed on the additional processing element from the additional processing element to said respective first processing element in a manner transparent to the first operating system of said respective first processing element; and means in said one module for converting said I/O commands and data to commands executable by and data useable by the respective first processing element so that said converted I/O commands and data are available for processing by the respective first processing element under control of its first operating system to access said resources and data sets via said unique object names. - View Dependent Claims (13)
-
-
14. A mechanism for providing an I/O environment having a predetermined characteristic for first application programs being executed on a first processing element and connected hardware under the control of an associated first operating system which are lacking said characteristic, comprising
a second processing element which forms a part of a data processing system with an I/O environment having said characteristic, said I/O environment including I/O devices and facilities connected to the second processing element and addressable by an associated second operating system and indirectly addressable by a programmer via requests to the second operating system, second application programs being executed on the second processing element and I/O environment under the control of the second operating system; -
means for directly coupling the first processing element and hardware to the second processing element; means effective when I/O commands are encountered during the execution of said first application programs for transferring the encountered I/O commands and related data from the first processing element and hardware to the second processing element via said direct coupling means in a manner transparent to the second operating system; and means controlled by a predetermined application program executed on one of the processing elements for converting said I/O commands and data to commands executable by and data useable by said second processing element and its second operating system so that said converted I/O commands are available for processing by the second processing element under control of its second operating system within said data processing system and its I/O environment having said selected characteristic. - View Dependent Claims (15, 16, 17)
-
-
18. A mechanism for processing I/O commands of System/370 application programs being executed on a System/370 processing element and connected hardware under the control of a System/370 operating system comprising
a System/88 data processing system including a System/88 processing element, associated System/88 I/O devices and facilities connected to the System/88 processing element and addressable by an associated System/88 operating system and indirectly addressable by a programmer via requests to the System/88 operating system; -
means directly coupling the System/370 processing element and hardware to the System/88 processing element; means effective when I/O commands are encountered during the execution of said System/370 application programs for transferring the encountered I/O commands and related data from the System/370 processing element and hardware to the System/88 processing element via said direct coupling means in a manner transparent to the System/88 operating system; and means controlled by an application program executed on one of the processing elements for converting said encountered I/O commands and related data to commands executable by and data useable by said System/88 processing element and its operating system so that I/O functions of the System/370 application programs are available for processing by the System/88 processing element under control of its operating system. - View Dependent Claims (19, 20, 21)
-
-
22. A data processing method comprising the steps of
executing first application programs on a first central processing element and hardware connected to the processing element under the control of a first operating system in a first data processing system which lacks characteristics of a single system image, directly coupling the first central processing element to a predetermined second central processing element of a second data processing system including a plurality of interconnected second central processing elements, the second central processing elements being connected to respective I/O devices and facilities, and having associated therewith respective second operation systems, said second data processing system including means for providing a single system image environment for application programs executed on the second central processing elements under the control of the second operating systems; -
transferring I/O commands and data of application programs being executed on the first central processing element from the first central processing element to the predetermined second central processing element in a manner which is transparent to the respective predetermined second operating system; and converting in one of said data processing systems alternatively before or after said transfer of I/O commands and data to commands executable by and data useable by said predetermined second processing element and its respective predetermined second operating system so that I/O functions of application programs executing on the first central processing element are available for processing by the second processing element under control of its second operating system within the single system image environment of the second data processing system.
-
-
23. Data processing apparatus comprising
a plurality of modules interconnected with each other to form a network; -
each module including at least one each of said first central processing element, a main storage and an I/O device coupled to each other and managed and controlled by a respective first operating system to operate as a single processing unit; the respective first operating systems assigning corresponding unique object names to each of said I/O devices and to data sets resident in the modules so that means controlled by each one of the operating systems can access sets of data resident in all of the interconnected modules via object names without an active intervention of other operating systems, thereby providing the characteristics of a single image to users of each of the modules; a data processing means including at least one additional central processing element in one of the modules managed and controlled by an operating system dissimilar to the first operating systems and lacking single system image characteristics; means for tightly coupling said additional processing element to a respective first central processing element within said one module; means controlled by a predetermined application program executed on the respective first central processing element for isolating the respective first central processing element from its main storage, I/O device and operating system and for transferring I/O commands and data of application programs executed on the additional processing element from the data processing means to said isolated respective first processing element via said coupling means in a manner which is transparent to the operating system of the respective processing element; means in said one module for converting said I/O commands and data to commands executable by and data useable by the respective first processing element alternatively before or after said transferring step; and means in said modules for processing the converted I/O commands and data of said additional processing element under control of the operating systems of the respective first processing element without an active intervention by the other first operating system, thereby providing the characteristic of a single system image to users of the data processing means.
-
-
24. A data processing method comprising the steps of
executing a first application program on a first central processing element and first hardware connected to the first central processing element under the control of a first operating system in a first data processing system; -
providing a second data processing system including a second central processing element and second hardware connected to the second processing element for executing second application programs and for processing I/O commands and data of said second application programs under the control of a second operating system dissimilar to the first operating system and having a predetermined I/O processing characteristic that is lacking in the first operating system; directly coupling the first central processing element and first hardware to the second central processing element; sending interrupt requests to the second processing element when I/O commands are encountered during the execution of the first application program on the first processing element; processing said interrupt requests in the second central processing element under the control of a predetermined second application program; during the execution of at least certain of the instruction of the predetermined second application program on the second processing element, operationally isolating the second processing element from the second hardware and second operating system and operating the second processing element with the first processing element and first hardware for completing the execution of the certain instructions with said first processing element and first hardware; transferring said encountered I/O commands and related data of the first application program from the first data processing system to the second element during said execution of the certain instructions while the second processing element is isolated from the second hardware and second operating system and operating with the first processing element and first hardware; converting said encountered I/O commands and data to commands executable by and data useable by the second processing element and the second operating system in one of said data processing systems alternatively before or after said transferring step; and processing said converted I/O commands and data in said second data processing system under the control of the second operating system with said I/O characteristic.
-
-
25. A data processing method comprising
processing first application programs on a first data processing system including a first processing element connected to first hardware under the control of a first operating system lacking a predetermined characteristic for processing I/O functions of application programs; -
processing second application programs on a second data processing system including a second processing element connected to second hardware including I/O devices under the control of a second operating system dissimilar to the first operating system and having said characteristic; directly coupling the second processing element to the first processing element and first hardware; configuration tables of the second operating system lacking a definition of said first system and its first processing element and said second operating system lacking a device driver for controlling data transfers between the first and second processing elements; operating the second processing element under the control of a predetermined one of said second application programs to isolate itself from the second hardware and second operating system and to interact with the first hardware for transferring I/O commands and data of said first application programs being processed on the first processing element from the first data processing system to the second processing element via said direct coupling in a manner transparent to the second operating system; and converting in one of said data processing systems said I/O commands and data to commands executable by and data usable by the second processing element and second operating system so that I/O functions of said first application programs are available for processing by the second processing element and second hardware under the control of the second operating system having said characteristic.
-
-
26. A data processing method comprising the steps of
executing first application programs on a first central processing element and first hardware connected to the element under the control of a first operating system; -
executing second application programs on a second central processing element and second hardware including I/O devices connected to the second processing element under the control of a second operating system; directly coupling the first processing element to the second processing element; temporarily isolating the second central processing element from the second hardware and second operating system and operating the second processing element with the first processing element and first hardware under the control of a predetermined second application program executed on the second processing element in response to requests from the first processing element to allow transfer of I/O commands and data commands; transferring I/O commands and data of first application programs being executed on the first processing element from the first processing element to the second processing element via said direct coupling in a manner which is transparent to the second operating system while the second processing element is isolated; and converting said I/O commands and data to commands executable by and data useable by said second processing element and its second operating system so that I/O functions of programs being executed on the first processing element and its first operating system are available for processing by the second processing element under control of its second operating system.
-
Specification