私はCyanogenmod ROMのカーネルソースコードに基づいてカスタムAndroidカーネルを構築しています。OSのルートフォルダーにフォルダーとファイルを追加したいと思います(/
)。たとえば、カーネルをコンパイルした後、toto
(絶対パス= /toto
)作成されます。
どのファイルを編集する必要があるのか、どのように作業するのか、私にはまったくわかりません。
注:あなたがrootfs
にファイルを追加したいAndroidユーザー(ROM開発者ではない)の場合)は、次を参照してください- 関連するAndroid.SEの質問 代わりに。
Androidでは、多くのLinuxベースのシステムと同様に、カーネルは最初に/
に initramfs をマウントします。 initramfsはRAMに格納されます。カーネル自体(またはブートローダーがそれを見つけることができる他の場所)に格納されているCPIOアーカイブからロードされます。
ほとんどのデスクトップLinuxシステムには、実際のルートファイルシステムをマウントするのに十分なプログラムと構成ファイルを含む小さなinitramfsがあり、それを/
にマウントして、initramfsを置き換えます。 Androidは、一部の組み込みLinuxシステムと同様に、initramfsを永久にマウントしたままにします。 Androidのinitramfsには、/init
、adbd
、およびいくつかの構成ファイルのみが含まれています。
Cyanogenmodの場合、ビルド手順は porting guide にあります。さらに多くのファイルをramdisk(Android用語)のinitramfsイメージ)にコピーしたいので、それらを PRODUCT_COPY_FILES
makefileのdevice_*.mk
リストに追加する必要がありますあなたのデバイス。