c - 由 Z/OS 上的 C 编译器生成的可执行代码是否可以在 IBM z/Linux 平台上执行?
问题描述
在 IBM 环境中,存在称为 Metal C 的混合 C/Assembler 编译器,它允许 C 源程序与 Assembler 源程序混合并编译为可执行文件。
我的问题是,暂时忽略生成的可执行文件可能具有的所有外部链接引用,组合的 C/Assembler 可执行文件是否可以在 z/Linux 平台上运行,它只是机器指令,对吗?
解决方案
底层操作系统及其关联的调用堆栈决定了兼容性。z/OS 使用与 Linux 根本不同的特定调用约定、系统调用和库。因此它们不是二进制兼容的。
也就是说,如果您使用在两个平台上都可用的语言,那么您可以简单地重新编译和“移植”您的应用程序。
推荐阅读
- forms - 在表单提交之前执行异步功能
- android - android studio - 在调试模式下从已安装的应用程序中取出样式
- sql - 在 Power Bi 中将 SQL 查询转换为 DAX 以从表中获取单个值
- math - 傅里叶逆变换虚部数的物理意义是什么?
- python - sympy.plotting.plot3d 不绘制常量函数
- python - 动态访问文本文件中的特定标签并获取其下的元素并再次从下一个单词开始并使用python获取其下的元素
- javascript - 带有 base64 嵌入字体的序列化 SVG 图像,在 IE Edge 中无法正确呈现
- rdf - 关于属性特征的问题
- vmware - 无法下载最新的 VimService.dll 文件
- docker - 如何正确共享一个 jupyter docker 来托管