cms架构下添加一个应用程序

 CMS中,运用程序和命令是同等对待的,它们都是用户空间可执行的。但是在除了CMS系统中,运用程序和命令是不同对待的。往CMS中增加一个应用程序或者命令的步骤:

1:要把它正确归类,就是根据它的属性正确地放入userspace目录下的三个目录中的一个。同时在相应的目录下的makefile中增加这个程序或者命令的编译命令。如果这个程序或者命令本身就有一个makefile,那么就要把这个makefile包含进去。

 2:定义一个新的实体ID(命令不用)。同时如果这个程序将访问MDM,那么要给这个程序赋予CMS ENTITY ID 1-15之间。同时定义NDA-ACCESS-XXX标志。然后在NDA-ACCESS-SUBSCRIBER中增加NDA-ACCESS-XXX标志位。

 3:定义一个CMSENTITYINFO结构,这个结构定义在userspace/public/include/cms_eid.h文件中,结构如下:

 typedef struct {

CMSEntityId eid; /**< The entity id for this entry */

UINT16 accessBit; /** This entity's bit position in accessBitMask */

  char *name; /**< Short name for this entity */

  char *path; /**< Full path to the executable */

char *runArgs; /**< Args to pass to this executable on startup */

  UINT8 flags; /**< Additional info about this entity, see EIF_xxx */

UINT8 backlog; /**< Backlog arg for the server socket */

  UINT16 port; /**< If server, port number for the server socket */

        UBOOL8 isFeatureCompiledIn; /**< Is this feature selected via make menuconfig */

UINT32 maxMemUsage; /**< Maximum memory usage, in KB, 0 if unknown */

  UINT32 normalMemUsage; /**< Typical memory usage, in KB, 0 if unknown */

  UINT32 minMemUsage; /**< Minimum memory usage, in KB, 0 if unknown */

 } CMSEntityInfo;

4:程序实现的模式

  一般要调用cmsMsg_initcmsMdm_init函数,这个函数是初始化消息机制和内存共享的,然后运行这个程序的主函数,同时在主函数退出的时候要进行销毁处理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值