More likely IEFUSI or similar. Hiperspace is NOT in the 31-bit (or 64-bit) 
memory map. That's the point of it.

Cheers, Martin

Martin Packer,
zChampion, Principal Systems Investigator,
Worldwide Banking Center of Excellence, IBM

+44-7802-245-584

email: martin_pac...@uk.ibm.com

Twitter / Facebook IDs: MartinPacker
Blog: 
https://www.ibm.com/developerworks/mydeveloperworks/blogs/MartinPacker



From:   Alan Young <ayo...@teleport.com>
To:     IBM-MAIN@LISTSERV.UA.EDU
Date:   10/03/2015 06:44
Subject:        Re: LE Question
Sent by:        IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>



The C runtime I/O functions fopen(), fread(), fwrite(), etc. support 
hiperspace data if the fopen() file mode parameter 
type=memory(hiperspace) is specified.

The functions are callable from COBOL. You just have to setup the 
parameters for what C expects and compile with NODYNAM. On our system a 
test program will allocate up to 2GB before a runtime error occurs. I 
don't know if that's due to AMODE 31 restrictions or not. Until we get 
64 bit COBOL, I guess one can try to allocate multiple files to store 
2GB in each.

I don't know if you will need to pass the file stream pointer back and 
forth between the programs or if opening the file with the same 
parameters in both will access the same file... We don't have a C 
compiler to try that out.

Alan

Scott Ford wrote:
> Sam,
>
> Yeah I agree.  I might have to stay with QSAM file until we can write 
and
> test an API..
> Thanks a lot,
>
> As always much appreciated.
>
> Regards,
> Scott
>
> On Monday, March 9, 2015, Sam Siegel <s...@pscsi.net> wrote:
>
> 
>> OK ... that is a lot of data.
>>
>> Since an address space provides for just 2GB in the 31 bit range for 
code,
>> data and system code, you cannot get 3GB in there.  You have the 
following
>> choices:
>> 1) 1 or more data spaces
>> 2) 64bit memory
>> 3) some 31 bit data in current address space; remainder in dataspace(s)
>> and/or 64bit memory.
>>
>> 64 bit memory is the cleanest in terms of using linear addresses. 
However,
>> if data needs to be referenced by COBOL, you will face problems.  You 
might
>> need to copy back data to 31bit address space or other means.
>>
>> dataspaces cannot be directly accesses by COBOL as you need to be in AR
>> mode and use the proper ALETs. COBOL does not do ALETs.
>>
>> If you go the 64 bit memory route.  You can create an API in "c" that 
will
>> retrieve data on behalf of COBOL and copy it back to 31 bit memory.
>>
>> If you go the dataspace route, you can create an API in asm that will
>> retrieve ALET qualified data on behalf of COBOL and copy it over to
>> non-alet qualified memory.
>>
>> Either way, i think you need an API.
>>
>> On Mon, Mar 9, 2015 at 3:44 PM, Scott Ford <idfzos...@gmail.com
>> <javascript:;>> wrote:
>>
>> 
>>> Sam,
>>>
>>> 2-3 G .....
>>>
>>> Regards,
>>> Scott
>>>
>>> On Monday, March 9, 2015, Paul Gilmartin <
>>> 0000000433f07816-dmarc-requ...@listserv.ua.edu <javascript:;>> wrote:
>>>
>>> 
>>>> On Mon, 9 Mar 2015 14:18:15 -0700, Sam Siegel wrote:
>>>>
>>>> 
>>>>> How much data?  10meg?  100meg?  1gig?
>>>>>
>>>>> 
>>>> How about 10 gig?  None of those numbers would be unreasonable
>>>> if COBOL supported 64-bit addressing.  But IBM can't see the use
>>>> for that.
>>>>
>>>> Of course if the data are large enough they go into page data sets
>>>> anyway, but that's utterly transparent to the programmer.
>>>>
>>>> 
>>>>> On Mar 9, 2015 2:06 PM, "Scott Ford" wrote:
>>>>> 
>>>>>> I will have to read and try ..my question is how do i pass a lot of
>>>>>> 
>>> data
>>> 
>>>>>> ...a dataspace ? i would like to avoid dasd if I can ..
>>>>>> 
>>>> -- gil
>>>> 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN



Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 
741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to