VNDK还没仔细看这个架构,先猜猜看,不要怕猜错了,即使错了也是进入纠正阶段,而不是初学^^,而且可以训练和保持创造能力。
先往大了说,软件行业是一个本来不可能出现的行业。人类工业革命过程中创造了很多生产管理和科研管理理论,其中比较牛逼的的就是流水线理论和抽象化的模块化理论。这两个理论都被软件园业很好地吸收了过来。
VNDK应该就是模块化。
模块化的核心技术是框架化。
画个图,让脑海里的念头具象化。中国人没有经历很长时间的工业熏陶,自己多画图熏陶熏陶。
红区,绿区,棕区和蓝区内部都可以随意更改,只要接口不改即可。
VNDK作为共享库,而且扮演接口的角色,猜测它的.so应该是存储在手机的/system/lib64中,而且是跟底层各种硬件设备的API相关的lib**.so
借一段Android网站的文字:
------------------------------------------------------------------------------以下借自android--------
VNDK 术语
- 模块是指共享库或可执行文件。
- 进程是指可执行文件产生的操作系统任务。
- 以“框架”打头的术语是指与系统分区相关的概念。
- 以“供应商”打头的术语是指与供应商分区相关的概念。
例如:
- 框架可执行文件是指
/system/bin
或/system/xbin
中的可执行文件。 - 框架共享库是指
/system/lib[64]
下的共享库。 - 框架模块是指框架共享库和框架可执行文件。
- 框架进程是指从框架可执行文件衍生而来的进程(例如
/system/bin/app_process
)。 - 供应商可执行文件是指
/vendor/bin
中的可执行文件。 - 供应商共享库是指
/vendor/lib[64]
下的共享库。 - 供应商模块是指供应商可执行文件和供应商共享库。
- 供应商进程是指供应商可执行文件(例如
/vendor/bin/android.hardware.camera.provider@2.4-service
)产生的进程。
-----------------------------------------------------------------------------------------------------以上借自android----------------------------------