6

Gömülü bir cihazda Linux çekirdeğini çalıştırmak için gereken minimum RAM miktarı nedir? 80x86 için Linux-0.11'de, çekirdek veri yapılarını yüklemek ve vektörleri kesmek için gereken minimum RAM 2MB idi.Gömülü bir cihazda Linux çekirdeğini çalıştırmak için gereken minimum RAM miktarı nedir?

Linux-3.18 çekirdeği için gereken minimum RAM ne kadar? x86 ve ARM gibi farklı mimariler, önyükleme için gereken minimum RAM için farklı gereksinimlere sahip midir? Biri nasıl hesaplar?

+0

Neyi başarmaya çalışıyorsunuz? Linux'a sıkıştırmaya çalıştığınız cihaza bağlı olarak, çoğunu (FLASH) ROM'a şoke edebileceğinizi hayal ediyorum. – doynax

+0

@doynax: Sınırlı RAM'e sahip gömülü bir cihazda linux port etmeye çalışıyorum. Flaş salt okunur. –

+1

Sorunuz çok muğlak. Birçok Linux çekirdeği özelliği gerekmediğinde ihmal edilebilir ve sonuçta bellek ayak izini azaltır. Gerekli olan daemonların türleri ve uygulamalar hafıza gereksinimlerini de belirleyecektir. İşlemci mimarisi ve komut kümesi darbesi bellek gereksinimleri (örneğin, Kernel için Kernel, 16-bit, kernel boyutunu küçültme talimatı olarak derlenebilir). – sawdust

cevap

9

~ 600 KiB'ye kadar küçültmek mümkündür. Intel'den Tom Zanussi tarafından yapılan işi kontrol edin. Presentation from Tom ve Wiki page about the topic.

UPDATE. Tom, çekirdekte farklı alt sistemlerin bellek kullanımı hakkında ilginç statistics yayınladı. O sırada proje üzerinde çalışırken araştırma yaptı.

+0

Bu bağlantılardan herhangi birinde 600KiB öneren hiçbir şey göremiyorum. Daha spesifik olabilir misin? Çalışma zamanı RAM ayak izinin çekirdek görüntü boyutu mu? [Bu sunum] (http://elinux.org/images/2/2b/Elce11_hart.pdf), her birinin giderek daha küçük olan 1,6Mb'ye düştüğü bir dağıtımı azaltma aşamalarını gösterir, ancak bu noktada muhtemelen pek de sakat kalmayacak kadar sakattır. buna değer - bu yüzden botları ile ne yapabilirsin? – Clifford

+0

1.6M, sistemin bir RAM büyüklüğündedir, bunun yanında çekirdeğin yanında init ve/veya kabuk gibi başka şeyler için de RAM'in olması gerekir. Yani, 600KiB çekirdeğin RAM ayak izi. Ancak, TCP/IP, IIRC gibi kullanıcı uzay programlarında derlemeniz gereken bazı şeylerin farkında olun. – 0andriy

+0

[Linux on 8 bit uC] (http://dmitry.gr/index.php?r=05.Projects&proj=07.% 20Linux% 20on% 208bit) –

3

This site öneriyor:

bir asgari uClinux yapılandırma

4MB RAM çalıştırılabilir olabilir, rağmen müşterilerimize veriyoruz öneri onlar RAM en az 16 MB yetmeyecek içinde tasarlamak gerektiğidir.

SDRAM kullanıyorsanız, sorun makul hacim maliyeti ve kullanılabilirliği ile 16 MB'den küçük bir parça elde ediyor olabilir, bu yüzden sorun değil midir? Ancak SRAM için, bu büyük ve nispeten pahalı bir parçadır.

eLinux.org, gömülü çekirdek boyutu üzerinde bir lot of information ürününe, nasıl belirleneceğine ve nasıl en aza indirileceğine sahiptir.

+0

Yukarıdaki sağlanan bağlantıdan: Entegre edilmiş bir önyüklenebilir uClinux görüntüsünün boyutu initramfs, 16 MB RAM'den çalıştırabilen işlevselliğe layık 2-3 MB'lik bir basketbol sahası içerisindedir. Sıkıştırılmamışken uClinux çekirdeğinin boyutu nedir? –

İlgili konular