Re: usleep()

2020-10-02 Thread Seymour J Metz
Not quite; they did the minimim amount for POSIX and X-Open, then added stuff 
for later iterations of their UNIX certification.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3



From: IBM Mainframe Discussion List  on behalf of 
Mike Schwab 
Sent: Friday, October 2, 2020 11:54 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: usleep()

I think IBM did the minimum amount of work to qualify for the U.S.
Government requirement for POSIX at one point and has not kept it up
to date.

On Fri, Oct 2, 2020 at 10:24 AM Thomas David Rivers  wrote:
>
> Paul Gilmartin wrote:
>
> >
> >>
> >>
> >What is IBM's rationale for supporting the deprecated usleep but not
> >POSIX nanosleep on z/OS?
> >
> > https://secure-web.cisco.com/15ber4_2yl9qOXLoJC6r3enZh5QziAVC39L_snbERfZSOwZFHn-tPUvFtPPjNeP6J-fAnmc7zVBdb45A4VmZrFvek-ec24Rlfmw045YNkKgXTMLmr5bLh07-og-huGCRHRbDdSiEq0KHeu95pRw_Nk5k6VqEh7iFgeVdnMOVKrjkbH3X2-583UcfIup0vYE9qgWZznA0aqgyYuGxE76uNHIcgjLSDI-Sm_2ZyfY5JOwWKh2ZDZPgQxmhg6-zaXWWX0RjxdNgKR5XKOJV5_aNd-PF3vqd4TdiFW7wp6J-23m7-HOUy4XufdmPhSMiolqhEmRVWSjK6XgQnyO7etdCF72EngYc4lxoPDaR94QFZ0sGlyZgN6VtE_YQDiRyz7UHFStUPoXdhBLkZnSuA6tHxuIA22uSRaVO12GxNXZD-Z3hgI8X-842LAxp9Du7DCkQn/https%3A%2F%2Fpubs.opengroup.org%2Fonlinepubs%2F9699919799%2Ffunctions%2Fnanosleep.html#tag_16_350
> >
> >And providing the idiosyncratic cond_timed_wait.
> >
> >-- gil
> >
> >
> >
> We added nanosleep() to the Dignus runtime library, and as IBM's
> documentation
> suggests, it uses the BPX cond_timed_wait function (there's a note there
> saying you
> can use BPX cond_timed_wait to implement nanosleep.)
>
> So - it would be pretty easy to add your own nanosleep if you want, just
> call
> cond_timed_wait as IBM says.
>
> nanosleep() is "newer" than the original POSIX-1, so I suppose until
> some customer
> submits an RFE for it it won't appear in the IBM C library.  It's also
> part of the REALTIME
> section of POSIX, which IBM doesn't support.
>
>
>
> https://secure-web.cisco.com/1ta4flfdOYvdobDLBeabZZYwn_OUPyHpHl8NtZgg5L8XFEaQubjdtwe1iTgCUBB2pdY1dvJxnemRY9YA-pvr1EceoSF_itZ1yF2TyaMadI4ViFLY6qti_TQH1mfdxOvl_aL2Jknj2w5E1FM8C8fkjdPF-DmQG4ejsNjKuLjcGGz3wY3cclaWKw7bwGjN5t7CbJF9PXpj2KR82gutHMX7ljZQiBdssTeb4xSTdHM-iYpiDD3H5eXO5Yxs3J-KNztt8ofgaLN3dWzmcSrCd8cKsFVCYPd1aXrGBoFSscQZCUyZd91ZkuheKCZqqIqlveNAVgyht2UhSGdWWVEzFszXZkAROY77-kUYDoYQklmAJKyWZQ8OlDfz-L1wgiwn7JEFf5ZRxl819wrChSEpTZCyY70fRSbG_LHsSpOMvpFV8AtlAm6SUQlokHBao1SJeYY2y/https%3A%2F%2Fpubs.opengroup.org%2Fonlinepubs%2F009695399%2Ffunctions%2Fnanosleep.html
>
> z/OS doesn't really let you do the REALTIME timers (yet, I suppose), but
> this function
> is so handy and so common we added it to our runtime.
>
> And, in fact, our usleep() just invokes nanosleep() as is now common on
> many implementations.
>
>
>- Dave R. -
>
> --
> riv...@dignus.comWork: (919) 676-0847
> Get your mainframe programming tools at 
> http://secure-web.cisco.com/1okrNzXX_qhM0bnfpYvmM6qzMIRH75unmneSRpkqyhHLC0fQt7-7dhfy-KnIxZtJb7jteOx1US9bej8vB83gWy66ln-9Dx-PfWwpmjnHvqG6Okgf_7bDzYZwIi8M98Wpnh3h5xz1M5Y0_Msz7d56lpBKUx1jEomTwF0A_7YogAu_vvYEhwyCDYFMoKHN4G1jGW74SI0aKSfjm7bV-JMbQhiCHJmCKlVbPRTeNJ1TJM6a1y1NOmCbOEeil4I2Il1vkSa1-Y6avocBqnjcDYEOZpEt8Agy6rOjDMco3WHBS0euKVXcKdYH5In5UV_S9YB5PSDZ2YCbd3SN78JP2524RW_Sa3CV4DTl0Y9cDSV3r2yxD69yPkS67qhc0-x2aqATIoXPVZLDsBRXzByw7-NzrrSJ7iKWIFqDucONIdqwpqBzq7lmMEhMXlZVdT1ytY1cV/http%3A%2F%2Fwww.dignus.com
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN



--
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?

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


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


Re: usleep()

2020-10-02 Thread Mike Schwab
I think IBM did the minimum amount of work to qualify for the U.S.
Government requirement for POSIX at one point and has not kept it up
to date.

On Fri, Oct 2, 2020 at 10:24 AM Thomas David Rivers  wrote:
>
> Paul Gilmartin wrote:
>
> >
> >>
> >>
> >What is IBM's rationale for supporting the deprecated usleep but not
> >POSIX nanosleep on z/OS?
> >
> > https://pubs.opengroup.org/onlinepubs/9699919799/functions/nanosleep.html#tag_16_350
> >
> >And providing the idiosyncratic cond_timed_wait.
> >
> >-- gil
> >
> >
> >
> We added nanosleep() to the Dignus runtime library, and as IBM's
> documentation
> suggests, it uses the BPX cond_timed_wait function (there's a note there
> saying you
> can use BPX cond_timed_wait to implement nanosleep.)
>
> So - it would be pretty easy to add your own nanosleep if you want, just
> call
> cond_timed_wait as IBM says.
>
> nanosleep() is "newer" than the original POSIX-1, so I suppose until
> some customer
> submits an RFE for it it won't appear in the IBM C library.  It's also
> part of the REALTIME
> section of POSIX, which IBM doesn't support.
>
>
>https://pubs.opengroup.org/onlinepubs/009695399/functions/nanosleep.html
>
> z/OS doesn't really let you do the REALTIME timers (yet, I suppose), but
> this function
> is so handy and so common we added it to our runtime.
>
> And, in fact, our usleep() just invokes nanosleep() as is now common on
> many implementations.
>
>
>- Dave R. -
>
> --
> riv...@dignus.comWork: (919) 676-0847
> Get your mainframe programming tools at http://www.dignus.com
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN



-- 
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?

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


Re: usleep()

2020-10-02 Thread Thomas David Rivers

Paul Gilmartin wrote:



   


What is IBM's rationale for supporting the deprecated usleep but not
POSIX nanosleep on z/OS?
   
https://pubs.opengroup.org/onlinepubs/9699919799/functions/nanosleep.html#tag_16_350

And providing the idiosyncratic cond_timed_wait.

-- gil

 

We added nanosleep() to the Dignus runtime library, and as IBM's 
documentation
suggests, it uses the BPX cond_timed_wait function (there's a note there 
saying you

can use BPX cond_timed_wait to implement nanosleep.)

So - it would be pretty easy to add your own nanosleep if you want, just 
call

cond_timed_wait as IBM says.

nanosleep() is "newer" than the original POSIX-1, so I suppose until 
some customer
submits an RFE for it it won't appear in the IBM C library.  It's also 
part of the REALTIME

section of POSIX, which IBM doesn't support.


  https://pubs.opengroup.org/onlinepubs/009695399/functions/nanosleep.html

z/OS doesn't really let you do the REALTIME timers (yet, I suppose), but 
this function

is so handy and so common we added it to our runtime.

And, in fact, our usleep() just invokes nanosleep() as is now common on 
many implementations.



  - Dave R. -

--
riv...@dignus.comWork: (919) 676-0847
Get your mainframe programming tools at http://www.dignus.com

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


Re: Strange COBOL 6.2/3 problem: BASIS/COPYLOC/PDS fails

2020-10-02 Thread Charles Mills
Thank you. I'm not crazy. 

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Peter Vels
Sent: Thursday, October 1, 2020 3:00 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Strange COBOL 6.2/3 problem: BASIS/COPYLOC/PDS fails

I can reproduce this with: PP 5655-EC6 IBM Enterprise COBOL for z/OS  6.1.0
P180612

Peter

On Fri, 2 Oct 2020 at 00:46, Charles Mills  wrote:

> It appears to me that COBOL 6.2 or 6.3 fails a BASIS statement if there is
> any COPYLOC in effect and SYSLIB is a PDS, but not if SYSLIB is a PDSE.
>
> The error is IGYLI0053-U   A library read error occurred during "BASIS"
> processing.  No member was found or there was a bad block.
>
> //S1 EXEC PGM=IGYCRCTL,PARM='COPYLOC(MYUNIX,PATH("valid.unix.path")'
> //SYSLIB DD   DSN=PDS(E) containing GCOPYA,DISP=SHR
> //SYSIN  DD   *
>BASIS GCOPYA
> /*
> // remaining COBOL compile JCL
>
> Above works if SYSLIB is a PDSE but fails if it is a PDS. Works either way
> if you remove the COPYLOC. COPY seems to work okay; only BASIS seems to
> fail.
>
> Just tried a COPYLOC with a DSN rather than a PATH and it still fails.
>
> Would be curious what others think or if anyone wanted to try to duplicate.
> This is in Dallas so no ability to open a PMR.
>
> Charles
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

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

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


Re: usleep()

2020-10-02 Thread David Crayford

On 2020-10-01 8:16 PM, Paul Gilmartin wrote:

On Wed, 30 Sep 2020 17:19:32 -0400, Phil Smith III wrote:


The usleep() function in z/OS is documented as taking a single operand that 
must be less than 1M; on other platforms, it must be *at least* 1M. It also 
generates no error, and just returns instantly if you give it a value of 1M or 
more.

This seems.poor. Anyone got any insight/guesses? Yes, I realize it's deprecated.


What is IBM's rationale for supporting the deprecated usleep but not
POSIX nanosleep on z/OS?
 
https://pubs.opengroup.org/onlinepubs/9699919799/functions/nanosleep.html#tag_16_350

And providing the idiosyncratic cond_timed_wait.


Probably the same rationale for supporting System V message 
queues/semaphores etc and not POSIX.





-- gil

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


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