![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
vsomeip
文章平均质量分 86
伴君者
这个作者很懒,什么都没留下…
展开
-
routing_manager_base源码分析
释放服务,将查找到的服务删除客户端id,代码首先查找服务和实例,如果找到了服务,就从其中删除客户端。构造service_info结构体,服务放到 service_容器中,如果是远程服务同时存放到service_remote,并返回 std::shared_ptr its_info 指针。offer_service函数,查找本地服务中是否有这个服务,有判断主版本号和次版本号,没有则创建服务。从events_中删除服务,从事件组中移除事件its_eventgroup_info。原创 2023-12-22 17:15:10 · 633 阅读 · 0 评论 -
vsomeip使用模板
/创建应用,xxx是应用名称可以为空从服务中获取//初始化//注册服务处理函数//提供服务//启动服务//创建应用,xxx是应用名称可以为空从服务中获取//初始化//注册服务有效性回调//请求服务//启动服务发送函数i原创 2023-12-19 22:06:54 · 1060 阅读 · 0 评论 -
vsomeip下载与移植
如图所示,vsomeip不仅实现了 SOME/IP中两个设备间的通信,也实现了同个设备中的内部进程间通信。修改project-config.jam文件增加编译选项,这里添加的是arm-gcc的绝对路径和编译时编译器的cflag选项,注意using gcc的格式冒号之间的空格,这里尝试用环境变量不好用,option.set 也没有起作用。vsomeip依赖boost库,因此在编译vsomeip之前,首先需要编译boost.(对于boost库的要求是大于等于1.55小于等于1.74)vsomeip下载地址。原创 2023-12-19 21:45:20 · 1349 阅读 · 0 评论 -
vsomeip基本概念
SOME/IP-SD的消息通过UDP发送,每个设备通过在局域网中周期性的广播一条包含其提供的所有服务的OfferService消息来帮助其他设备完成服务发现(服务IP,端口等信息)。在该过程中,底层使用的协议可以是TCP或者UDP,但是不管使用的是哪一种协议,其包含的SOME/IP message都是一样的。上图演示了一个简单的序列化例子:其数据结构中的数据都是基本类型,在序列化的时候只需要把其中数据一个接一个的放成连续的一列就行。Length:该字段之后内容的长度,以字节为单位。原创 2023-12-19 21:41:59 · 1271 阅读 · 0 评论