linux 修改hostname_Adaptive AUTOSAR Execution Manager-基于linux的启动流程

AP平台通过Execution Manager进行整个平台的初始化和应用启动/停止。

系统启动流程

de10c13ee7dcc5448ea29324d99e73f6.png

OS boot之后第一个进程就是Execution Manager,由Execution Manager来启动其他进程。

Execution Manager根据Manifest来确定启动顺序,启动的app也不限于一般意义上的AP进程,文件系统/网络/各种bsp初始化也可以通过Execution Manager来启动。

linux实现方式

在linux下AP平台将init进程替换成execution manager。

c2e79ba66b9466e0cd3b1b570b09181d.png
linux下AP平台的init进程

82b739e962a94db5048b6faaa821e727.png
/sbin/init实际执行的是execution-manager

linux原本的init进程会执行一些初始化工作,包括文件系统/网络初始化/用户登录....

AP平台将init进程替换之后,也要将这部分工作负担起来,是通过读取对应app的Manifest来自动执行的。

在MANIFEST.json中可以指定app的启动阶段和依赖。

59ce841c65843acc0b54ff731843ca4f.png
AP平台添加了filesys_init和network_init等程序由Execution Manager启动

b686aac2b02b1a8cbe30c762389f8cb2.png
network_init的MANIFEST

写一个自动启动的app

移植AP到树莓派上之后,树莓派没有hostname,总是显示一个none,仿照着写一个设置hostname的程序,让Execution Manager自动执行。

程序读取/etc/hostname中的内容,用hostname指令来设置hostname。

#include 

d9dc350e87be78ed250ec125d3a8f3ff.png
MANIFEST.json 设置启动依赖

dc73353b0c21ca0ac790346f7bbe83c2.png
传入参数

将程序打包到树莓派/opt目录后,每次Execution Manager都会自动执行这个程序,设置一个hostname给树莓派。

5c5f982250ad86979d4a47cc75ceebe2.png
程序log

总结

AP的启动由Execution Manager来执行,和一般的linux不同,比如要设置一个开机启动的进程,一般linux可以修改init.d等方式进行,但基于AP是不可以的,必须通过Execution Manager进行。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值