xcuse
文章平均质量分 67
Ensighine
IT考古,翻新酒瓶
展开
-
如何在Power Linux上运行AIX程序(实现验证,附源码开源地址)
最后更新2021/1/10静心研究了小半年,终于把原型验证搞定了,可以在Power Linux上直接运行AIX程序。当然,目前只是实现了POC,还有大量的工程工作。源代码下载地址:https://gitee.com/HarryHurryHungry/xcuse原创 2021-11-28 14:38:45 · 664 阅读 · 0 评论 -
执行XCOFF(AIX)程序的两种方案比较
最后更新2021/12/17xcoff程序与AIX(OS)、Power服务器、Power ISA紧密绑定,尽管没有任何硬性规定xcoff不能跑在别的OS或者CPU之上,但到目前为止,这四者差不多四位一体,主体上是捆在一起的。Power ISA,只有IBM Power CPU一种实现,甚至用于嵌入式的PowerPC产品都越来越少了。当然IBM借助于OpenPower基金会,也做了若干努力,例如搞了一些新的开源产品,包括Microwatt等,这是在对抗x86和ARM扬汤止沸动作中,又拼命想移除RISC-V原创 2021-12-17 20:54:53 · 923 阅读 · 0 评论 -
qemu分析之linux-user 2
最后更新2021/12/30终于走到ppc代码call out的位置。如果是同架构cpu,glue代码做转换还相对容易一些,直接可以跳转过去,而且代码是统一的,相对简单一些。如果不同架构CPU,ABI不同,指令代码不同,这个glue code需要好好研究一下。看来未来一段时间,都要搞这个东西了。忽然想到了一个”捷径“,可以用原有写好的ppc (同架构)glue代码做桥接。具体来说,就是把ppc glue code作为guest代码load进来,类似库函数实现。而ppc glue code里面具体调用sy原创 2021-12-30 15:27:46 · 504 阅读 · 0 评论 -
qemu之linux-user分析 1
最后更新2021/12/26这几天研究qemu linux-user有关的问题,此地立个桩,把我认为值得记录的研究结果记录在此。qemu整体的编译不细说了,只针对我需要的ppc64相关关键记录,很大众特别是没遇到问题的过程就不记录了,也许以后整理全本说明的时候填充一下。另外由于我的最终目标是搞aix-user,与aix-user相关的内容也许会在这里有关联,但全部的内容应在另一个专题中,此处都是linux-user的东西。需要继续分析的标记为黑体,随时更新。前置通过configure定义目标,我用的是原创 2021-12-26 14:22:17 · 1089 阅读 · 0 评论 -
qemu-linux-user ELF vs XCOFF 2
最后更新2021/12/16原创 2021-12-16 16:57:26 · 213 阅读 · 0 评论 -
qemu-linux-user ELF vs XCOFF 1
最后更新2021/12/14注:以下及以后本系列都是个人对相关技术在此时此刻的理解和研究,会根据学习深入,不断修正,但过去历史文章不见得会被(及时)修改订正,见谅。当然欢迎读者批评指正,本人虚心接受,但什么时候把文章修改正确,不好说。============================================qemu-linux-use利用linux binfmt执行机制(或者说代码)实现了对ELF的解析和加载。判断文件类型的机制是统一的,binfmt提供了两个方案:扩展名和MAGIC魔原创 2021-12-15 16:48:18 · 871 阅读 · 0 评论 -
ppc64abi32-aix-user设想
最后更新2021/12/11陆陆续续做了几个月的基础工作,拼凑一个个碎块,大概需要的脚垫准备齐全,要填的坑也都有了填坑的办法,准备再增加代码虚拟执行,让AIX应用直接跑在x86 Linux之上,同时也把在虚拟环境下,两套系统接口部分的方案搞清楚,确定下来:哪个效率更高?跑完整虚拟机,包括硬件设备驱动、BIOS都虚拟化,最终分界在虚拟硬件设备硬件接口部分;跑userspace代码虚拟,接口部分设定在应用程序调用系统调用部分;其实其中还穿插着AIX API与Linux API转换;PowerISA和原创 2021-12-11 12:36:02 · 422 阅读 · 0 评论 -
aix libc函数映射2
最后更新2021/13/04NLS,regex有了些眉目,然后曾经以为被填满的旧坑变成了陷阱。XMC_XO重定向出了问题,重定向结果不对,打击心情,陆续再继续研究吧。cut可以直接跑,没啥问题,算是第一个直接跑起来完全没问题的AIX 32位程序;TODO:grep, head, tail, tr目前都存在XMC_XO的问题,待解决。awk,crash 。。。more,需要libcurses.a,这个放以后;...原创 2021-12-04 17:54:02 · 113 阅读 · 0 评论 -
aix libc函数映射1
最后更新2021/11/29xcoff解析、重定向之后,要搬砖头盖长城了。libc/unix总共三千多个export的函数、变量要一个个搞定,大工程啊!先研究方案。极小化入口参数对照分析可能是个解决办法搞一个包含目标函数、变量的最小程序,分别在aix和pl上编译,然后对比入口参数。三种可能:完全一样,包括参数结构。中头彩了,直接用就好。大概一样,只有顺序不同,问题不大,也是二等奖,不过是在glue代码中做个转换,五分钟搞定。完全不一样,特别是包含名称相同但内容不同的结构体、没有对应的函数或原创 2021-11-30 11:10:24 · 734 阅读 · 0 评论