Anlatıcı: Bu derste,
bazı gömülü sistemler hakkında konuşmaya başlayacağız.
Şimdi, gömülü bir sistemden bahsettiğimizde,
bu belirli ve özel bir işlevi yerine getirmek
için tasarlanmış bir bilgisayar sistemidir.
Şimdi, çoğu zaman gömülü bir sistemden bahsettiğimizde,
daha çok üretim alanındaki
veya otomasyon alanındaki şeylerden bahsediyoruz.
Yani tıbbi bir damla sisteminde
tek işi olan bir mikro denetleyicimiz olabilir.
Bu makineden geçip serumunuza giden
sıvı miktarını ölçmek ve böylece hastaya ihtiyacı
olanı verebilmek içindir.
Su arıtma tesisindeki
bir kontrol sistemi için bir tane daha olabilir.
Sorumluluğu ise suyun belirli
bir hızda akmasını sağlamaktır.
Ve sistemdeki bu akış miktarını koruduğumuzdan
emin olmak için vanaları açıp kapatacaklar.
Bu, gömülü bir sistem fikridir.
Çok çok basit bir cihaz olabileceği gibi tamamen
karmaşık ve bu tür sistemleri çalıştırmak
için kullanılan Linux veya Android gibi tam bir işletim
sistemine sahip olabilir.
Duruma göre değişir.
Şimdi, bu özel derste, daha
çok tek bir işlevi olan ve bu işlevi yerine getirmek için
kendi özel işletim sistemlerine
veya mikroişlemcilere sahip olan belirli
gömülü sistemlere odaklanacağım.
Örneğin benim evimde bir akıllı sayaç var.
Yani evimin yan tarafına gidersem, evimdeki
elektrik sayacına bakabilirim
ve bana saatte kaç kilovat kullandığımı ve zaman içinde ne kadar kullandığımı
söyleyecektir.
Şimdi, bu bilgiler internete bağlı, böylece elektrik
şirketi ayda bir kez bu sayacı
okumak için evime birini göndermek
zorunda kalmıyor.
Bunun yerine, artık her şey elektronik ortamda yapılıyor.
Bunu hücresel modemler kullanarak yapıyorlar
ve hücresel ağ üzerinden internet üzerinden
merkezlerine ve güç tüketimi için ne kullandığımıza
dair verileri beslemek için sunucularına geri
bağlanıyorlar.
Evinizdeki sayacınıza bakarsanız,
muhtemelen oldukça benzer bir şeye sahipsinizdir.
Şimdi, bu tür gömülü sistemler, sık değişikliklerin
yapılmadığı veya izin verilmediği statik
ortamlar olarak kabul edilir.
Örneğin elektrik sayacınızın yazılımını en
son ne zaman güncellediniz?
Muhtemelen hiç yapmadın.
Ve elektrik şirketi de muhtemelen bunu
çok sık yapmıyor.
Bu gömülü sistemlerin ana fikri budur.
Sadece ve sadece tek bir amaç
için üretilmiş çok basit bir sistemdir.
Ve bunu yaparak daha güvenli hale gelmelerine yardımcı olurlar
çünkü çok fazla ekstra kodları yoktur.
Ancak bu orijinal kod iyi
durumda değilse, güncelleme yapmak
zorlaşır çünkü bu şeyler sık
sık yazılım güncellemesi alabilecek
şekilde üretilmemiştir.
Bu nedenle, gömülü
sistemler genellikle güvenlik sorunlarını tanımlamak
ve düzeltmek için çok az desteğe sahiptir.
Elektrik şirketini arayıp gelip sayacınızı
güvence altına almalarını söyleyemezsiniz.
Bu, sizin için yapacakları şeyin bir parçası değil.
Bunu yapmak istedikleri şekilde yapacaklar
çünkü bu onların cihazı.
Ve genellikle fabrikanızda veya tesisinizde
gömülü bir sisteminiz varsa, bir üretim alanındaysanız,
o üreticiden sınırlı destek alırsınız.
Dolayısıyla bu, tüm bu cihazları
ayrı bir ağa bağlamak ve bunların
genel olarak internete bağlanmasını
engellemek isteyeceğiniz bir alandır ve bu sizin için
büyük bir güvenlik açığı alanı olabilir.
Şimdi, gömülü sistemler hakkında
konuştuğumuzda, programlanabilir mantık
denetleyicisi olan PLC adında bir terim vardır.
Bu, endüstriyel veya dış mekanlarda kullanılmak üzere
tasarlanmış bir bilgisayar türüdür ve modern
mekanik sistemlerimizi otomatikleştirebilir.
Şimdi, bir PLC'yi düşündüğünüzde, daha
fazla veya daha az su girmesine izin vermek için
bir vanayı açacak veya kapatacak imalat
gibi bir şey düşünmenizi istiyorum.
PLC'nin amacı budur.
Programlanabilir bir mantık denetleyicisidir.
Şimdi, bu PLC'ler aygıt yazılımı üzerinde çalışır
çünkü bunlar yine gömülü sistemlerdir.
Böylece bir çip üzerindeki yazılım olan bellenim, ortaya çıktığında
güvenlik açıklarını gidermek için yamalanabilir
ve yeniden programlanabilir.
Ancak yine de, çok özel bir süreç vardır ve genellikle
üreticiden sınırlı destek alınır.
Microsoft gibi her Salı
bir yama yayınlayacak değiller.
Bu PLC'lerle her altı ayda, bir yılda ya da iki yılda
bir yama alabilirsiniz.
Yamalar arasında genellikle çok uzun bir süre vardır.
Şimdi, bahsetmek istediğimiz bir diğer konu ise
kullandıkları işletim sistemlerinden bazıları.
RTOS olarak bilinen bir şey var, yani
gerçek zamanlı bir işletim sistemi.
Şimdi, bu, işlemlerin deterministik olarak
yürütülmesine öncelik veren bir işletim sistemi türüdür.
Bu da zaman açısından kritik görevler için tutarlı
yanıtlar vermemize yardımcı olacaktır.
Şimdi, bunu bir düşünün.
Bir nükleer santralin içindeki bir vanayı açması veya kapatması gereken
bir şey çalıştırıyorsanız, bunun herhangi
bir zamanda çevrimdışı olmasını sağlayabilir misiniz?
Muhtemelen değil, değil mi?
Bir RTOS, yani gerçek zamanlı bir işletim sistemi
kullanmamızın nedeni de bu.
Bunun nedeni, gömülü sistemlerimizin çoğunun
tipik olarak yeniden başlatmalara veya çökmelere tahammül edememesi
ve milisaniyeler içinde tahmin edilebilen
bu yanıt sürelerine sahip olmaları gerektiğidir.
Yani bir uçağın parçalarını
çalıştıracak, otomatik pilotumun uçmasına yardımcı
olacak bir şey yapıyorsam ve otomatik pilotun her
birkaç milisaniyede bir kanatlarda ayarlamalar
yapması gerekiyorsa, bu gerçek zamanlı bir işletim sistemi
kullanmak isteyeceğimiz bir şeydir.
Bunun için standart bir Windows sistemi kullanamayız.
Yeterince hızlı ya da güçlü değil.
Ve yeniden başlatmaya veya çökmeye, güvenlik
yamalarına ve diğer tüm şeylere tabidir.
Yani RTOS, bu terimi duyduğunuzda, bunu genellikle
gömülü sistemlerde, özellikle de kritik
uygulamalarda kullanılan bir işletim
sistemi türü olarak düşünün.
Bunu yapabilmemizin bir başka
yolu da çip üzerinde sistem denen şeyi kullanmaktır.
Bu, gömülü sistemlerin başka bir şeklidir.
Bu, işlemcimizin birden fazla mantıksal
denetleyicinin platform işlevselliğini tek bir yongaya
entegre ettiği yerdir.
Şimdi, bu çip üzerinde sistem çok güç verimli olabilir ve bu nedenle genellikle
gömülü bir sisteme sahip olması gereken daha küçük cihazlarda
kullanılırlar.
Dolayısıyla, gömülü bir sisteme
sahip olacak ve cebime sığabilecek
çok küçük bir şey yaratmam gerekiyorsa, bu genellikle bir
çip üzerinde sistem gibi bir şey kullanır.
Roomba veya robot elektrikli
süpürge gibi bir şey kullanıyorsanız,
bunlar çip üzerinde sistem mantığını kullanır çünkü tüm bu
bilgileri tek bir çipe yerleştirmeye çalışırlar,
çünkü yine daha az yer kaplar ve bu nedenle
vakum gibi ihtiyacınız olan işlevsel parçalar için daha
fazla yer bırakabilirsiniz.
Çip üzerinde sistem, bir bilgisayar sisteminin tüm bileşenlerini
tek bir çip üzerinde içeren bir tür entegre devre
anlamına gelir.
Bu işlemcinizi, belleğinizi, depolama alanınızı, grafik
işlemcinizi ve USB denetleyicileri, güç
yönetimi devreleri ve wifi veya Bluetooth için kablosuz
radyolar gibi çevre birimlerini içerir.
Yonga üzerinde sisteme en iyi örneklerden biri, tek bir yonga
üzerinde tam kapsamlı bir bilgisayar
içeren Raspberry Pi'dir.
Şimdi, bu çip üzerinde sistemlerin
birçoğu, Amazon Fire TV, Roku ve Apple
TV akış cihazları gibi akıllı TV'ler ve set üstü kutular gibi diğer
cihazlara yerleştirilecek.
Çip üzerinde sistem tasarımları, düşük güç kullanımları,
iyi performansları ve küçük form faktörleri
nedeniyle gerçekten popüler hale gelmiştir.
Örneğin, bir Roku veya Fire TV Stick'iniz varsa, bunlar bir
USB başparmak sürücüsü boyutundadır.
Yine de mevcut herhangi bir televizyona tamamen çalışan bir akıllı
TV işlevi sağlarlar ve bu cihazları
kullanarak kablosuz bir bağlantı
üzerinden video akışını işleyebilirler.