Android çekirdeği yapmak için Linux çekirdeğinde yapılan değişiklikler nelerdir? Bu soru ile demek istediğim linux kernel ve android kernel arasındaki farklar nelerdir?
Android çekirdeği yapmak için Linux çekirdeğinde yapılan değişiklikler nelerdir? Bu soru ile demek istediğim linux kernel ve android kernel arasındaki farklar nelerdir?
Yanıtlar:
Farklılıklar sürümden sürüme değişir (hem Linux hem de Android) ve kesin çekirdek her aygıt için farklıdır. Android için bir çekirdek, belirli bir aygıt için ek sürücüler ve gelişmiş güç yönetimi veya daha hızlı grafik desteği gibi diğer ek işlevlere sahip genel bir Linux çekirdeğidir.
Android çekirdeğindeki birçok özellik daha sonra açık kaynak topluluğu onları kabul ettikten (ve belki de değiştirdikten) sonra yukarı akış Linux'a eklenir, ancak diğerleri Linux çekirdeği geliştiricileri tarafından kabul edilemez oldukları için veya yalnızca Android veya belirli donanımlar için geçerlidir.
Dan Hulme ve Lie Ryan'ın bahsettiği cihaza özgü farklılıklar ve uyanıklık kilidinin yanı sıra Android, kaynak sızıntılarına ( http://www.kandroid.org/ndk ) neden olabilecek Sistem V IPC özelliklerini (mesaj kuyrukları, paylaşılan bellek segmentleri, semaforlar) kaldırdı. /docs/system/libc/SYSV-IPC.html ). Bu muhtemelen sadece çekirdek yapısını yapılandırma meselesidir. Ayrıca Binder olarak adlandırılan Android IPC'nin çekirdekte, bildiklerime göre standart Linux çekirdeklerine dahil edilmediğine dair bazı destekleri var.
Bu Android Kaynağının bunu anlamak için harika bir doküman olduğunu düşünüyorum.
Ve burada android kernel 4.14 için ana hat çekirdeğinden yapılan değişikliklerin listesidir.
En büyük özellikler şunlardır:
LTS'den Farklar
LTS (4.14.0) ile karşılaştırıldığında, Android ortak çekirdeğinde 355 değişiklik, 32266 ekleme ve 1546 silme (Şubat 2018 itibarıyla) vardır.