If porting to z Linux, your only issues are likely to be hardware issues.
Don't assume endian-ness. Avoid unions of ints and chars.

union {
    int foo;
    char bar[4];
} IamDangerous;

If porting to z/OS, you have the same hardware issues plus the ASCII-EBCDIC
issue plus compiler and library differences. For a start, watch out for
programs that assume 'R'+1 == 'S' or 'A' > 'a' or '1'-48 == 1. But simple,
basic, middle-of-the-road C is completely portable.

#include <stdio.h>
int main(int argc, char* argv[])
{
    printf("Hello, world!\n");
}

will compile and run pretty much identically in all three places. Four, if
you count z/OS batch and z/OS UNIX shell as two different places.

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On
Behalf Of Mark Post
Sent: Saturday, March 26, 2016 4:34 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Linux

>>> On 3/26/2016 at 11:59 AM, Steve Beaver <st...@stevebeaver.com> wrote: 
> First of all I am first and foremost an zOS Systems programmer that 
> only writes in HLASM and REXX as needed.
>  
> My goal is to learn Linux and then develop in Linux and then as needed 
> port it to zSeries box.  That being said,

Just to be clear, when you talk about "port it to zSeries" do you mean z/OS,
or Linux running on z?  If the latter, then there won't be much, if any,
porting involved.  If the former, then that raises a whole raft of other
problems/questions.

----------------------------------------------------------------------
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