在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 9822|回复: 33

ic616 isr9 以后程序不能运行的原因和临时解决

[复制链接]
发表于 2015-7-30 10:11:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
众所周知,IC616在更新ISR9以后,采用原来的补丁会导致程序启动时出现崩溃。最近我花了点时间看了下,大概明白了是怎么回事。

原因是C家现在采用了Vilabs的软件保护系统Code armor Intelligence(http://www.vilabs.com/product/co ... ware-usage-tracking)。这套系统在原有的flexlm基础上又加了许多许可证检查,主程序完整性,使用情况监控等等功能。而且还有打小报告的功能,如果它觉得你的使用有问题会偷偷通过网络将你的信息报给C家,如果你是个公司的话,很快c家就可以凭这些证据法务部来函让你交钱了。。

但程序崩溃并不是这个系统预先设计的事。直接原因是和谐版使用的许可证不是真正的许可证,缺了好几项东西(SIGN2之类)。Vilabs启动时某处有个strcpy,要拷贝这些信息,但是因为许可证信息残缺,strcpy的source是个空指针,导致程序segfault。

该系统有个特点就是如果检测出程序受跟踪,比如你用gdb或者strace运行virtuoso,他就会停止运行来隐藏自己。目前我的解决办法就是再patch一下,让CAI以为正在受跟踪,从而跳过它那段有问题的检测程序。如果你用的是ISR12 64bit,可以在用hex编辑器打开virtuoso,在offset 0xb1b56f8处开始的五个字节都改成90 90 90 90 90。在我的机器上这样就不会有启动崩溃的问题。希望大家实验一下。
 楼主| 发表于 2015-7-30 10:17:55 | 显示全部楼层
另外有mentor账号的,又苦于找不到analog fastspice和谐方式的可以将文件给我看看。。我之前自己弄过,但现在换公司了,没有mentor账号了。。
发表于 2015-7-30 10:19:01 | 显示全部楼层
sodisne,原来如此,这么一来就能run了
发表于 2015-7-30 10:36:09 | 显示全部楼层
佩服佩服!


回复 1# doggg2
发表于 2015-7-30 19:36:47 | 显示全部楼层
佩服佩服!
发表于 2015-8-1 09:05:15 | 显示全部楼层
分析的有问题,Vilabs并没真正启用,造成segment的原因和Vilabs没有关系
 楼主| 发表于 2015-8-6 13:19:06 | 显示全部楼层
本帖最后由 doggg2 于 2015-8-6 13:21 编辑

回复 6# lightgun

我见到的使用情况是
情况一:在strace或gdb下运行virtuoso,无segfault
情况二:正常运行,有segfault

又已知在trace情况下vilabs服务根本就不会初始化。

最合情合理的解读是vilabs的那段代码引起segfault。我说的临时解决就是让程序一直认为是在trace下所以就会跳过那段。

这段我还确实跟着debugger看了一边,确实是vilabs的检查函数中的某个strcpy引起的。也许检查程序不叫vilabs什么的,但是确实是在vilabs服务启动后,在原有的lmcheckout上增加的检查函数。
发表于 2015-8-8 17:45:23 | 显示全部楼层
回复 7# doggg2


   1. segment fault确实是strcpy当中一个参数如果为空造成的,但这和vilab没有关系   2. vilab和flexlm是两套独立的体系,针对点不一样
发表于 2015-8-8 17:47:27 | 显示全部楼层
回复 7# doggg2

1)造成segment fault的原因确实是strcpy中一个参数(若为空)引起的,但这和vilab没有关系2)vilab和flexlm是两个不同的咚咚,各自针对的保护的着力点也不一样
发表于 2015-8-9 09:57:11 | 显示全部楼层
所以...論壇上的patch...都已經無法使用了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-25 19:31 , Processed in 0.047783 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表