Bu hafta çoğu kişinin yanlış fikir sahibi olduğunu düşündüğüm bir konu üstünde olmayı akıl ettim. Keyifli okumalar dilerim.
Gömülü sistemler için middleware kavramı, uygulama programlama arabirimi oluşturmamızı sağlayan ara yazılım katmanı olarak nitelendirebiliriz. Middleware katmanına örnek olarak populer olarak bilinen FreeRTOS ‘u sayabiliriz. Fakat middleware olarak gömülü sistemlerde ücretli ve ücretsiz olarak birçok middleware katmanı mevcuttur. Bu middleware katmanları kullanım alanlarına göre geliştirilmiş yazılım katmanlarıdır. Popülaritesine göre bazı middleware yazılımlarını aşağıya listeyebiliriz.
FreeRTOS: Başta ARM olmak üzere birçok yarı iletken firması ile ortaklığı bulunan ve Amazon’un sahibi olduğu Real-time işletim sistemidir. Açık kaynak olması nedeni ile FreeRTOS pazar payı en yüksek Real-time işletim sistemlerinden biridir.
Azure RTOS/ ThreadX: Azure RTOS eski adıyla ThreadX, Express Logic firmasının 90’ların sonlarında geliştirmeye başladığı ve 2019’da Microsoft tarafından satın alınan Real-time işletim sistemidir. Azure genel amaçlı bir RTOS olamasının yanında uygulama olarak kendini kanıtlamış bir middleware olarak sayabiliriz. Ayrıca FreeRTOS kadar çiplerde kullanıcı desteği mevcuttur.
QNX: Middleware katmanın dedelerinden olan QNX, 1980’lerin başlarında ilk sürümünü yayınladı. Zaman içeresinde diğer gömülü olan ve olmayan birçok işletim sistemi desteği sundu. Ayrıca Eclipse’in kurucu üyelerinden biri oldu. Günümüzde “Security” ve “Safety critical” gereksinimli alanlarda kullanılmaktadır. Bu nedenle otomotiv sektörün büyük bir kısmında QNX işletim sistemi vardır.
embOS: Embedded dünyasında 90’ların başında kurulan Segger firması tarafından yayınlanan embOS Real-time işletim sistemi, “Safety critical” ve “Security” kullanılmaktadır. Bu nedenle medikalden tutun otomotiv’e kadar birçok alanda kullanılmaktadır.
Farkettiyseniz verdiğim örneğin birçoğu RTOS middleware örneği idi. Middleware kavramını bakış açımıza göre örneğin RTOS ve GPOS(General Purpose Operating System) şeklinde ayırabiliriz. Başka bir amaçla ise uygulama alanına göre “General use”, “IOT”, “Security”, “Safety critical” olarak middleware’ları ayırabiliriz. Bu nedenle middleware demek RTOS demek yanlış bir anlayış olur.
