Bir programlama dilindi runtime library'nin görevi tam olarak nedir.Okuduğum bazı şeyler kafamı karıştırdı.Bu konuda beni aydınlatabilir misiniz?
Örneğim Visual basic gibi bir program ile yazılan uygulamamız derlendiği zaman uygulamamıç içine bazı bileşenleri dahil edilmez.
İşte bu programlarla yazılan uygulamaların çalıştırılabilmesi için gerekli bileşenlerin yer aldığı kütüphane diyebiliriz. Bu bileşenleri bilgisayara yüklediğimiz zaman (kendimizin oluşturduğu özel bileşenler hariç) derlemiş olduğumuz uygulamamız çalışır. Yoksa şu eksik, bu eksik diye uyarı ve mesaj verir.
Şu anki C# ve visual basic uygulamalarını çalıştırabilmek için Freameworks ihtiyaç duyulması gibi.
Eğer tüm gerekli bileşenler uygulama içine gömülürse, derlenen uygulama şişer ve bazı bilgisayarlarda çalışmama durumu olabilir.
Hocam benim kafamı karıştıran nokta embedded platformlarda.Mesela linux üzerinde c ile yazılmış bir program çalışacağı zaman libc.so library sine ihtiyaç duymakta bu kütüphane yoksa çalışmaz yani.Fakat atıyorum ben cortex-m3 için c ile bir program yazdım.Burada runtime library nin görevi ne oluyor.
Tamam da hocam işin içinde bir işletim sistemi olduğunda bu dediğiniz anlamlandırabiliyorum.Yukarıda dediğim gibi atıyorum linux ortamında libc.so dosyası atıyorum /usr/lib'in içinde.Bu tarz platformlarda birden fazla uygulama aynı anda çalıştığı için hepsi bu library kullanıyo.Ama cortex-m3-m4 gibi MMU su olmayan sistemlerde zaten tek bir uygulama koşuyo.Bu durumda runtime library'deki fonksiyonlar derleme esnasında link edilmesi gerekmez mi?E böyle olunca da adının runtime library olması saçma oluyo.İşte kafamı karıştıran durum bu.
Anladım hocam çok teşekkür ederim.Peki hocam bu keil micro-lib i c'nin standart library'sinden çok bi farkı var mı?Kendi sitesinde baya bi optimize edildiğini söylüyo gerçekten de micro-lib i kullanmak bize çok fazla avantaj sağlar mı?
Bilgiler için sağolun hocam.Kafam baya bi karışmıştı.