|
本帖最后由 wangxj_nemo 于 2012-12-18 16:14 编辑
IAR for AVR环境下,测试过程如下:
1) 源文件 LIB.h- #ifndef __LIB_H__
- #define __LIB_H__
- int sum(int x, int y);/* LIB HEADER TEST */
- #endif
复制代码 源文件 LIB.c- //LIB DEMO SRC
- #include "LIB.h"
- __flash char string[] = "Lib file with copy right infomormation";
- int sum(int x, int y)/* LIB DEMO SOURCE*/
- {
- return(x+y);
- }
复制代码 2) 生成lib文件MY_LIB_D.lib文件,发现文件里面有string信息:
3) 工程文件引用该库文件生成HEX文件如下:
人力无法解读:
4) HEX转BIN文件如下:
文件中出现可读的源码部分的信息:
BIN文件其它代码部分如下:
人力无法解读,属于寄存器逻辑操作;
得出结论:比如我用了M2i2c2r2u2m2的u2C2o2s2源码到自己的产品中,但是没有得到他们的许可,如果将u2C2o2s2源码里面相关的可读信息(常量字符串,比如"M2i2c2r2u2m2")改写;即便该公司的人拿到产品得到固件,也是无法得知是否用了他们的软件,试问各位高人,我的理解是否有误?
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|