clinuxassemblyzoss390x

Is the executable code generated by a C compiler on Z/OS executable on a an IBM z/Linux platform?


In the IBM environment a hybrid C / Assembler compiler call Metal C exists and it permits C source programs to be intermixed with Assembler source programs and compiled as an executable.

My question is this, ignoring all the external linkage references that the resultant executable might have for a moment, could the combined C / Assembler executable run on a z/Linux platform, its just machine instructions, right?


Solution

  • The underlying Operating System and its associated call stack determines compatibility. z/OS uses a specific calling convention, system calls and libraries that are fundamentally different than Linux. Thus they are not binary compatible.

    That said, if you are using languages that are available on both platforms then you may be able to simply recompile and "port" your application.