Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Gömülü yazılım

bullvar_katip

Administrator
Katılım
21 Mayıs 2024
Mesajlar
532,105
Gömülü yazılım, denetim makineleri ve bilgisayar sayılmayan aygıtlar için yazılmış yazılımlardır. Gömülü yazılımlar genellikle çalıştırılacakları donanıma göre özelleştirilir, zaman ve bellek kısıtlamalarına sahiptir. "Gömülü yazılım" terimi bazen firmware terimi ile beraber kullanılır, fakat firmware bir bilgisayardaki, üstünde bir işletim sisteminin çalıştığı ROM tabanlı koda uygulanabilir. Oysaki, gömülü yazılım genellikle aygıttaki tek yazılım olarak bulunur. Gömülü yazılımların belirgin ve değişmez bir özelliği ise, bu yazılımların çoğu işlevlerinin kullanıcı arayüzü değil, bilgisayar arayüzü aracılığıyla gerçekleştirilmesi ve denetlenmesidir. İmalatçı firmalar, gömülü yazılımlarını arabalar, telefonlar, modemler, robotlar, elektronik tehçizatlar, oyuncaklar, güvenlik sistemleri, kalp pilleri, televizyonlar ve set üstü cihazlar, dijital saatler gibi ürünlerinin içine yerleştirmektedir. Bu yazılım işlem karmaşıklığı Yaklaşık Değer Hesaplama sistemi (Rasgeleleştirilmiş algoritmaları baz alan bir yöntem) kullanılarak belirlenmiş, birkaç kilobaytlık hafızaya sahip olan bir 8-bit mikrodenetleyicide çalıştırılan bir ışıklandırma kontrolü kadar basit olabilirken, uçaklar, füzeler ve süreç denetimi sistemlerindeki uygulamarında çok daha karışık bir halde bulunabilirler. İşletim sistemleri OS X, Windows veya GNU/Linux gibi işletim sistemlerini kullanan standart bilgisayarlardan farklı olarak, gömülü yazılımlar hiçbir işletim sistemini kullanmayabilir ya da işletim sistemi kullanımı söz konusu olduğunda, gerçek zamanlı işletim sistemleri genel tercih olmak üzere, çeşitli işletim sistemlerini kullanabilir. Bu çeşitlilik küçük, birer çalışma döngüsü ve zamanlayıcıdan oluşan tek kişilik işlemlerden, LynxOS, VxWorks, BeRTOS, ThreadX'e, Windows CE veya Linux (yamalı kernel kullanımıyla)'a kadar yükseltilebilir. Diğer seçenekler OpenWrt, PikeOS, eCos, Fusion RTOS, Nucleus RTOS, RTEMS, INTEGRITY, uC/OS, QNX, FreeBSD ve OSE'yi içerir. Yazılım kodu genellikle C veya C++ programlama dillerinde yazılır, fakat son zamanlarda mikrodenetleyiciler ve gömülü sistemlerde kullanılma amacıyla Python ve JavaScript gibi yüksek seviyeli programlama dillerinin kullanımı yaygınlaşmıştır. Ada dili ise bazı askeri projelerde ve havacılık projelerinde yer almaktadır. Uygulama yazılımından farkları Çoğu tüketiciler, bilgisayara işlevsellik kazandıran uygulama yazılımlarına aşinadır. Gömülü yazılımlar ise, bu tür yazılımlardan daha basit olmamasına karşın, tüketicinin kullanımında daha az oranda görünür. Uygulama yazılımlarından farklı olarak gömülü yazılımlar kalıplaşmış, sabit donanım gereksinimlerine ve yeteneklerine sahiptir, üçüncü parti yazılım ve donanımların ilavesi katı bir şekilde kısıtlanmıştır. Gömülü yazılımlar, gerekli tüm aygıt sürücülerini üretim esnasında içermek zorundadır ve bu sürücüler özelleştirilmiş donanımlara göre oluşturulur. Yazılım ise CPU ve özel olarak seçilen yongalara bağlı olarak yüksek derecede bağımlılık gösterir. Çoğu gömülü yazılım mühendisleri şema analizi ve bileşenlerin, girdi ve iletişim sistemlerinin kullanımını belirlemekte kullanılan veri sayfalarının analizi konusunda mutlaka geçmiş tecrübeye sahiptir. Ondalık, onaltılık ve ikili veri türlerinin dönüşümü bit manipülasyonu tekniğinin kullanımı kadar kullanışlıdır. Web uygulamaları nadir sıklıkla kullanılmaktadır, fakat XML dosyaları ve benzer çıktılar görüntüleme amacıyla bir bilgisayara aktarılabilir. Klasör içeren dosya sistemleri, SQL veritabanlarının olduğu gibi genellikle bulunmamaktadır. Yazılım geliştirme işlemi, kodu bilgisayarda çalıştırabilen, ayrıca çalıştırılabilir kodu hedeflenen aygıta göre derleyebilen bir çapraz derleyici gerektirir. Hata ayıklama işleminde bir devre içi emulatör, JTAG veya SWD'nin kullanımı mecburidir. Yazılım geliştiricilerinin çoğu zaman kernel (İS) kodunun tamamına erişim imkânı vardır. Depolama hafızasının ve RAM'in boyutu büyük ölçüde değişiklik gösterebilir. Bazı sistemler 16 KB Flash hafıza, 4KB RAM ve 8MHz frekansla çalışan bir işlemciyle çalışırken, bazı sistemler donanım konusunda günümüz bilgisayarlarını geçebilir. Bu tür hafıza gereksinimleri C++ yerine C veya Embedded C++ dillerinin daha fazla kullanımını gerektirebilir. BASIC gibi yorumlanan diller ( Parallax Propeller gibi aygıtların kullandığı derlenen BASIC dışında) ve Java (Java ME Embedded 8.3 ARM Cortex-M4, Cortex-M7 mikrodenetleyicileri ve Raspberry Pi and Intel Galileo Gen. 2'de kullanılan eski ARM11 mikrodenetleyiciler için mevcuttur.) dillerinin kullanımı yaygın değildir; fakat yorumlanan bir dil olan Python 3 dilinin mikrodenetleyicilere özel uygulaması MicroPython özellikle 32-bit ARM-tabanlı mikrodenetleyici (Örneğin BBC micro:bit gibi) ve 16-bit PIC mikrodenetleyici kullanımına açıktır. İletişim protokolleri İşlemciler arası ve işlemcinin diğer sistem bileşenleri ile iletişimin kurulabilmesi oldukça önemlidir. Doğrudan bellek adresleme dışında, genellikle kullanılan protokollere I2C, SPI, Seri port ve USB örnek verilebilir. Gömülü sistemlerde kullanım için tasarlanmış iletişim protokolleri InterNiche Technologies ve CMX Systems gibi şikretler tarafından kapalı kaynak yazılım olarak elde edilebilir.Açık kaynak protokoller uIP, lwip vb. diğer protokollerden gelmektedir. Kaynakça The Ten Commandments of Embedded Software Security , 2015. Edward A. Lee, "Embedded Software", Advances in Computers (M. Zelkowitz, editor) 56, Academic Press, London, 2002. Ayrıca bakınız Gömülü sistem Kategori:Bilgisayar terimleri Kategori:Gömülü sistemler
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Izgara yada normal mod

Temanızda forum listeleme yapısını ızgara yapısında yada normal yapıda listemek için kullanabilirsiniz.

Forum arkaplan resimleri

Forum arkaplanlarına eklenmiş olan resimlerinin kontrolü senin elinde, resimleri aç/kapat

Sidebar blogunu kapat/aç

Forumun kalabalığında kurtulmak için sidebar (kenar çubuğunu) açıp/kapatarak gereksiz kalabalıklardan kurtula bilirsiniz.

Yapışkan sidebar kapat/aç

Yapışkan sidebar ile sidebar alanını daha hızlı ve verimli kullanabilirsiniz.

Radius aç/kapat

Blok köşelerinde bulunan kıvrımları kapat/aç bu şekilde tarzını yansıt.

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Geri