1. 程式人生 > >android如何手動生成裝置節點

android如何手動生成裝置節點

init.rc裡所有可用的command都定義在system/core/init/keyword.h裡,預設是不包含mknod的。事實上,Android的init程序會通過kenel的uevent來自動建立裝置節點(見system/core/init/devices.c裡的make_device()函式)。

如果你希望手動呼叫mknod, 我想你可以
1. 仿照make_device(), 通過定義一個do_mknod()函式,呼叫bionic libc裡的mknod(). 這樣就可以在init.rc里加入mknod支援了;
或者
2. 在init.rc裡定義一個service來呼叫一個shell指令碼,在指令碼中可以呼叫busybox的mknod命令