İçeriğe atla

Gömülü sistem

Gömülü sistem örneği bir yöneltici. İşaretli parçalar mikroişlemci (4), RAM (6), flaş bellek (7), Ethernet Alıcı/Verici

Gömülü sistem, bilgisayarın kendisini kontrol eden cihaz tarafından içerildiği özel amaçlı bir sistemdir. Genel maksatlı, örneğin kişisel bilgisayar gibi bir bilgisayardan farklı olarak, gömülü bir sistem kendisi için önceden özel olarak tanımlanmış görevleri yerine getirir. Sistem belirli bir amaca yönelik olduğu için tasarım mühendisleri ürünün boyutunu ve maliyetini azaltarak sistemi uygunlaştırabilirler. Gömülü sistemler genellikle büyük miktarlarda üretildiği için maliyetin düşürülmesinden elde edilecek kazanç, milyonlarca ürünün katları olarak elde edilebilir.

Gömülü bir sistemin çekirdeğini, belirli bir sayıda görevi yerine getirmek için programlanan mikroişlemciler ya da mikrodenetleyiciler oluşturur. Kullanıcıların üzerinde istediği yazılımları çalıştırabildiği genel maksatlı bilgisayarlardan farklı olarak, gömülü sistemlerdeki yazılımlar yarı kalıcıdırlar ve firmware ismiyle anılırlar.

Gömülü Sistem Örnekleri

  • Banka ATM'leri
  • Eylemsiz rehber sistemleri, uçuş kontrol donanım/yazılımı ve uçak ve füzelerdeki diğer tümleşik sistemlerden oluşan havacılık elektroniği parçaları
  • Yönlendirici (router), timeserver ve güvenlik duvarı (firewall) gibi bilgisayar ağ ekipmanları
  • Bilgisayar yazıcıları
  • Fotokopi makineleri
  • Disket sürücüler (floppy disket sürücüler ve sabit disk sürücüler)
  • Termostat, klima, sprinkler ve güvenlik izleme sistemleri gibi ev otomasyonu ürünleri
  • Hesap makineleri
  • Mikro dalga fırınlar, çamaşır makinesi, televizyon alıcısı ve DVD oynatıcı/kaydedici gibi ev elektroniği ürünleri
  • Tıbbi ekipmanlar
  • Çok işlevli kol saatleri
  • İnternet radyo alıcıları, TV set top box ve dijital uydu alıcılar gibi çokluortam uygulamaları
  • Çok işlevli yazıcılar
  • PDA'lar gibi küçük avuç içi bilgisayarlar
  • PDA ve Java destekli gelişmiş cep telefonları
  • Endüstriyel otomasyon ve izleme için PLC'ler
  • Video oyun konsolları ve avuç içi oyun konsolları
  • Taşınabilir bilgisayarlar

Tarihçe

Kayda değer ilk gömülü sistem MIT Instrumentation Laboratory‘da Charles Stark Draper tarafından geliştirilen Apollo Guidance Computer olmuştur. Aya yapılan yolculuklarda iki tane kullanılırdı ve komuta modülü ve LEM'in eylemsiz rehber sistemlerini çalıştırıyordu.

Projenin başlangıcında Apollo rehber bilgisayarı Apollo projesinin en riskli parçası olarak kabul ediliyordu. O zamanki tek parça entegre devrelerin kullanılması boyut ve ağırlığı azaltıyor ama riski artırıyordu.

İlk kitlesel gömülü sistem üretimi 1961 yılında Minuteman füzesi için yapılan Autonetics D-17 rehber bilgisayarı oldu. Ayrık transistör mantık devresinden yapıldı ve ana bellek için bir harddiski vardı. 1966 yılında Minuteman II üretime girdiğinde, D-17 ilk defa yüksek hacimli tümleşik devrelerin kullanıldığı yeni bir bilgisayara yerini bıraktı. Bu yazılım dörtlü NAND kapılı tümleşik devrelerin birim fiyatını 1000$'dan 3$'a çekti ve ticari kullanımlarının yolunu açtı.

Minuteman bilgisayarının önemli tasarım özellikleri, füzenin hedefi daha hassas bulabilmesi için rehber algoritmasının yeniden programlanabilir olması ve bilgisayarın kablo ve konnektörden tasarruf sağlayarak füzeyi test edebilmesiydi.

Maliyetin dikkate alınmadığı 1960'lardaki bu ilk uygulamalardan itibaren gömülü sistemlerin fiyatları düşmeye başladı. Bunlarla birlikte işlem gücü ve işlevsellikte de yükseliş oldu.

İlk mikroişlemci hesap makineleri ve diğer ufak sistemlerde kullanılan Intel 4004 oldu. Çalışabilmesi için harici bellek yongaları ve harici destek lojiklerine ihtiyaç duyuyordu. Intel 8080 gibi daha güçlü mikroişlemciler askeri projelerde geliştirildi, ama diğer kullanıcılara da satıldı.

1970'lerin sonunda 8-bit mikroişlemciler standart olmakla birlikte çözümleme ve giriş/çıkış işlemleri için genellikle harici bellek yongaları ve lojiklere ihtiyaç duyuyorlardı. Öte taraftan, fiyatlar hızla düşüyor ve uygulamalar küçük gömülü sistemleri lojik tasarımların içine sokuyordu. Görünebilir uygulamaların bir kısmı enstrümantasyon ve pahalı aygıtlardı.

1980'lerin ortalarında harici olarak kullanılan sistem parçaları, işlemci ile beraber aynı yonganın içine girmeye başladı. Bunun sonucu olarak boyutta ve gömülü sistemlerin maliyetinde çok büyük düşüşler oldu. Bu tip tümleşik devrelere mikroişlemci yerine mikrokontrolör dendi ve gömülü sistemlerin yaygın bir şekilde kullanımı mümkün oldu.

Mikrokontrolör maliyeti bir mühendisin 1 saatlik maaşının altına indi ve bu gömülü sistemlerin sayısını ve gömülü sistemlerde kullanılmak üzere farklı şirketler tarafından üretilen parçaların sayısının patlamasına neden oldu. Örneğin, pek çok yeni özelliğe sahip IC'ler, geleneksel paralel programlama arayüzleri yerine mikrokontrolörlere daha az sayıda arabağlantı sağlayan seri programlama arayüzleri ile beraber gelmeye başladı. I2C‘nin çıkış zamanı da bu döneme rastlamaktadır. Mikrokontrolörler 1$’ın altına düştüğünde, voltmetre ve değişken kapasitör gibi pahalı analog elemanların yerlerini küçük bir mikrokontrolör ile kontrol edilen dijital elektronik elemanlara bırakması mümkün oldu.

80’lerin sonundan itibaren, tüm elektronik cihazlar için gömülü sistemler bir istisna değil bir standart haline geldi ve bu akım halen devam etmektedir.

Karakteristikler

Gömülü sistemler en geniş manasıyla bilgisayar sistemidir. Gömülü sistemlerin örnekleri taşınabilir müzik çalıcılardan uzay araçlarındaki altsistemler için kullanılan gerçek zamanlı kontrol sistemlerine kadar uzanır. En ticari gömülü sistemler, düşük maliyette bir takım işleri gerçekleştirmek için tasarlanıyor. Hepsi olmamakla birlikte büyük çoğunluğunun gerçek zamanlı sistem kısıtlamalarını karşılaması gerekir. Bazı işlevlerinin çok hızlı olması gerekebilirken, diğer pek çok işlevinin kesin zamanlama gereksinimi olması gerekmemektedir. Bu tip sistemler, gerçek zaman kısıtlarını sistem gereksinimlerine bağlanmış özel amaçlı yazılım ve donanım kombinasyonları ile karşılarlar.

Gömülü sistemleri hız ve maliyet ile karakterize etmek zor olmakla beraber, maliyeti azaltan yüksek hacimli sistemler öncelikli tasarım hedefidir. Genellikle gömülü sistemlerin düşük verim gereksinimleri olur. Bu sistem donanımını, maliyeti düşürmek için basitleştirme olanağı tanır. Mühendisler gerekli işlevleri sağlayan “yeteri kadar iyi” olan donanımları seçerler.

Örneğin, uydu televizyon için dijital bir set-top box' ın saniyede onlarca megabit veri işlemesi gerekir ama bu işlemlerin büyük bölümü çok kanallı dijital videoyu ayrıştıran, yönlendiren ve çözen özel tümleşik devreler tarafından gerçekleştirilir. Gömülü CPU bu işlemi kurar ve set box'ın kullanıcı ara yüzü gibi görsel öğelerini ekrana basar. Gömülü işlemcilerin hızları artıp, fiyatları ucuzlarken, yüksek hızlı veri işlemede öncülüğü daha fazla ele almaktadırlar.

Düşük hacimli gömülü sistemler için kişisel bilgisayarlar, yazılımları sınırlayarak ya da işletim sistemini gerçek zamanlı işletim sistemiyle değiştirerek kullanılabilir. Bu durumda özel amaçlı donanım bir ya da daha fazla yüksek verimli CPU ile değiştirilebilir. Bazı gömülü sistemler istenen görevleri yerine getirmek için, yüksek performanslı CPU, özel donanım ya da büyük belleklere ihtiyaç duyabilir.

Taşınabilir müzik çalıcılar ve cep telefonları gibi büyük hacimli gömülü sistemlerde, maliyeti düşürme yönünde yapılan çalışmalar öncelik kazanır. Bu sistemler genellikle birkaç tümleşik devre, bütün fonksiyonları kontrol eden tümleşik CPU ve tek bir bellek yongası içerirler. Bu tasarımlarda her bir eleman bütün sistem maliyetini düşürecek şekilde seçilir ve tasarımları bu şart altında yapılır.

Bir disk sürücüsü olmayan gömülü sistemler için yapılan yazılıma firmware adı verilir. Firmware yazılımları cihazın içinde bir ya da daha fazla ROM ya da flaş bellek yongalarında gömülü olarak bulunur. Gömülü sistemlerdeki yazılımlar genellikle pek çok donanım kaynağından mahrum bir şekilde çalışırlar. Genellikle bu tip sistemlerde disket sürücü, işletim sistemi, klavye ya da ekran yoktur. Eğer bir kullanıcı arayüzü var ise küçük bir klavye ya da LCD gerekebilir.

Gömüllü sistemler, yıllarca hatasız bir şekilde çalışacağı varsayılan donanımların içinde bulunur. Bu yüzden gömülü sistem içindeki yazılımlar, kişisel bilgisayar içinde olanlardan daha dikkatli bir şekilde geliştirilip test edilir. Pek çok gömülü sistemde, disket sürücü, anahtar ya da düğme gibi mekanik parçaların kullanımından sakınılır çünkü bu tip parçalar flash bellekler gibi statik parçalara kıyasla daha az güvenilirdir.

Bütün bunlara ek olarak, gömülü sistemler insanların kolaylıkla ulaşabileceği yerlere uzak olabilirler (bir petrol kuyusunun dibinde ya da uzayda bulunan bir uydu üzerinde). Dolayısıyla gömülü sistemler çok büyük veri kayıpları yaşandığı durumlarda bile kendilerini yeni baştan başlatabilmelidirler. Bu tip bir işlev watchdog timer adı verilen standart elektronik bir parça tarafından yerine getirilir.

Gömülü Sistemlerin Tasarımı

Elektronik cihazlar genellikle mikroişlemci ya da mikrokontrolör kullanırlar. Bazı büyük ya da eski sistemler ise genel maksatlı büyük bilgisayarlar ya da minibilgisayarlar kullanırlar.

Kullanıcı Arayüzleri

PARC, Apple Computer, Boeing ve HP' de bulunan arayüz tasarımcıları, kullanıcı eylemlerininin tipinin sayısının azaltılması gerektiği ilkesini keşfettiler. Gömülü sistemlerde bu ilke daha düşük maliyetlere yönelik çalışmalarla birleştirilmektedir.

Gömülü sistemlerde yaygın olarak kullanılan standart bir arayüz iki tuştan oluşmaktadır; bunlardan biri menü sistemini kontrol etmek için diğeri ise istenilen seçimi gerçekleştirmek için kullanılmaktadır. Menüler kendilerini belgeleyebildikleri ve çok basit kullanıcı eylemleri ile seçilebildikleri için oldukça popülerdir.

Bir diğer yöntem ise çıktı tipini ufaltmak ve basitleştirmektir. Tasarım bazı durumlarda her bir arayüz çıkışı ya da sistem hatasını bilgilendirmek amacı ile ışık veren LED içerir. Ucuz bir seçenek olması açısından üzerine kullanıcının yerel dilini içeren hata çıkıntılarını gösteren baskılı matris etiketleri yapıştırılmış ışık barları kullanmaktır. Örneğin, pek çok küçük bilgisayar yazıcısı üzerinde herhangi bir dilde yazılar olan etiketlerle etiketlenmiş ışıklar kullanmaktadır. Bazı marketlerde bu tip ürünler müşterinin seçeceği dilde hazırlanmış etiketlerle satışa sunulmaktadır.

Kullanılan bir başka yöntem mode'ların kullanıcı ekranında açıkça görünür hale getirilmesidir. Eğer bir arayüzün modları varsa, her zaman bir yöntemle ya da arayüzün kendisi tarafından otomatik olarak tersine çevrilir. Örneğin, Boeing'in standart test arayüzü bir düğme ve birkaç ışıktan oluşur. Düğmeye basıldığı zaman ışıklar yanar ve bırakılması ile birlikte hata mesajı veren ışıklar yanar. Kullanılan etiketler yalın bir İngilizce ile hazırlanmıştır.

Tasarımcılar sıklıkla farklı renkleri kullanırlar. Kırmızı tehlike anlamına gelir ya da tüm sistemi etkileyecek bir hatanın varlığını belirtir. Sarı bir takım problemlerin olduğunu yeşil ise sistem durumunda herhangi bir aksaklık olmadığını belirtir. Seçilen renkler birçok insanın anlaması açısından trafik işaretlerindeki renkler olarak belirlenir.

Eğer yapılan tasarım bir ekran gerektiriyorsa tasarımcılar genelde düz metin kullanımını tercih ederler. Eğer ürün görsel eğlence öğeleri üzerinde kurulmuş bir tasarımdan ibaretse, görselliği zengin metinler, resimler ve menüler ürün için tercih edilmelidir.

Platform

Gömülü tasarımlarda kullanılabilecek ARM, MIPS, Coldfire/68k, PowerPC, X86, PIC, 8051, Atmel AVR, Renesas H8, SH, V850, FR-V, M32R gibi pek çok işlemci mimarisi bulumaktadır.

Standart PC/104 küçük hacimli gömülü sistem tasarımları için sıkılıkla tercih edilmektedir. Bu tasarımlar genellikle DOS, Linux, NetBSD veya QNX ya da Inferno gibi gerçek zamanlı işletim sistemleri kullanmaktadır.

Büyük hacimli gömülü sistem tasarımlarında ise genellikle tek bir yonga üzerinde toplanmış sistemler tercih edilir ve bunun içinde uygulamaya yönelik tümleşik devre tasarımları kullanılır. Bu tasarımlar genelde CPU dahil tüm lojik tasarımlar FPGA kullanarak gerçeklenebilir.

Araçlar

Gömülü sistem tasarımcıları, bilgisayar programcıları gibi derleyici, çevirici ve hata ayıklayıcı gibi araçları gömülü sistem geliştirmekte kullanırlar. Bununla birlikte, pek çok programcıya yabancı gelebilecek bir takım araçlarda geliştirme sürecinde kullanılır.

Yazılım araçları birkaç kaynaktan elde edilebilir:

  • Gömülü pazarda uzmanlaşmış yazılım şirketleri
  • GNU yazılım geliştirme araçlarından çalışılacak ortama taşınarak (bkz. çapraz derleme)
  • Bazen de işlemci mimarisi kullanılacak gömülü işlemci mimarisine yakın olan kişisel bilgisayarlarda kullanılan yazılımlardan faydalanılabilir.

Bilgisayar programcılarının tercih etmediği ama gömülü sistem tasarımcıları tarafından kullanılan birkaç yazılım aracı bulunmaktadır:

  • Sıklıkla kullanılan bir araç “in-circuit emulator” (ICE) daha modern tasarımlarda ise gömülü bir hata ayıklayıcı. Bu hata ayıklama aracı gömülü kod geliştirmede kullanılan temel yapılardan biridir. Mikroişlemciye yapılan bağlantı ile sistemde geliştirilen kodların çabuk ve hızlı bir şekilde yüklenmesini ve ayıklanmasını sağlar.
  • Gömülü bağlayıcıların (linker) kodun boyutunu ufaltmak ve çalışma zamanını azaltmak için pek çok optimizasyon özellikleri vardır. Bunlara ek olarak data overlays ve bank switching gibi optimizasyon teknikleri de sağlayabilmektedirler.
  • Kullanılan bir diğer araç ise gömülü uygulamaya bir CRC yazılımı eklenmesi böylece gömülü sistem yazılım verisini çalıştırmadan önce kontrol edebilir.

Bunların dışında kullanılan bazı programlama dilleri kullanıcıya gömülü sistemler tasarlamak amacıyla çeşitli kolaylıklar sağlar. C dili için:

  • İsimlendirilmiş adres alanları
  • İsimlendirilmiş depolama sınıfları
  • Temel I/O donanım adresleme

Hata Ayıklama

Hata ayıklama genellikle bir devre emülatör ya da mikrokontrolör tarafından çalışan mikrokodu kesebilecek bir çeşit hata ayıklayıcı tarafından gerçekleştirilebilir. Mikrokod kesme hata ayıklayıcıya üzerinde sadece CPU'nun çalıştığı donanım üzerinde çalışma imkânı verir. CPU tabanlı hata ayıklayıcılar bilgisayar donanımlarını CPU açısından test etmek ya da hata ayıklamak amacı ile kullanılabilir. Bunun yanında geliştiriciler, yüksek seviyeli dillerle kesme noktası ve tek adımlama kullanarak hata ayıklamalıdır çünkü bu özellikler oldukça yaygın olarak kullanılmaktadır. Bunlara ek olarak basit log kayıtlarının tutulması gerçek zamanlı eylemlerin hata ayıklamasında faydalı olur.

Gömülü sistemin karmaşıklığı arttıkça üst seviye araçlar ve işletim sistemleri tasarımların içine girmeye başlar. Cep telefonları, pda' ler ve diğer tüketici bilgisayarları ileri düzey yazılım ve işletim sistemleri gerektirir. Bu tip sistemlerde, Linux, NetBSD, OSGi ya da Embedded Java gibi açık programlama ortamları, geniş bir pazara satış yapabilmek amacı ile kullanılmalıdır.

İşletim Sistemi

Gömülü sistemlerde işletim sistemi olmayabildiği gibi (Örn: PIC), Embedded (gömülü) Linux, Windows IoT, WinCE, Android, IOS gibi gelişmiş ya da özelleştirilmiş gömülü işletim sistemleri de kullanılabilir.

Başlangıç

Tüm gömülü sistemlerin bir başlangıç kodu vardır. Kesmeleri iptal eder, aygıtları devreye sokup çalıştırır, bilgisayarı test eder (RAM, CPU ve yazılım) ve ardından uygulama kodunu başlatır. Pek çok gömülü sistem kısa süreli güç kayıplarından, en son yapılan testler tekrarlanmadan kurtarılabilir.

Tasarımcılar hataları işaret etmesi açısından genellikle LED kullanımını tercih ederler. Genel bir tasarım olarak tekrar başlatma sırasında tüm cihazlara bağlı LED'ler yanmaya başlayacaktır. Daha sonra açılış testi sırasında yazılım, LED'lerin durumunu hata ya da normal haller için değiştirir.

Yerleşik Kendi kendine-Test

Kendini test eden gömülü sistemlerin temel şekilleri şöyle açıklanabilir:

  • CPU, RAM ve yazılım belleğinin test edilmesi. Bu genellikle sisteme enerji verildiğinde bir kereliğine gerçekleştirilir. Güvenliğin kritik olduğu sistemlerde periyodik olarak ya da belli zaman aşımlarında gerçekleştirilir.
  • Giriş, çıkış ve çevre aygıtlarının test edilmesi. İletişim, analog ve kontrol sistemleri bu tip testleri gerçekleştirebilir.
  • Batarya ya da ona karşılık gelen enerji kaynağının test edilmesi.
  • Bağlantı üniteleri arasında gerçekleştirilen iletişim testleri. Üniteler arasında yollanan ve alınan basit mesajlarla sağlanır.
  • Kablo testleri. Bağlantı pinlerinin doğruluğunu test etmek için yapılır ve özellikle senkronize iletişim sistemlerinde ön plandadır.
  • Donanım arama testi. Eklenen bir donanım ile ilgili bilgiler kullanıcıya döndürülerek sistem yükleme işlemine yönelik yol gösterme sağlanır.
  • Tüketilebilinenlerin testi. Sistemde kullanılanların miktarı seviyesi ve pozisyonu hakkında bilgiler döndürür. Yakıt ya da çeşitli kimyasal maddelerin kontrolü buna örnek verilebilir.
  • Operasyonel testler. Bu testler sistemin çalışması esnasında yürütülen fonksiyonlara yönelik bir testtir ve sistem çalışırken gerçekleştirilir.
  • Güvenlik testi. Sistem güvenliği belli bir aralık değerine göre test edilir.

Güvenilirlik rejimleri

İnsanların talep etme nedenlerine göre güvenirliğin farklı tanımları vardır. Ama güvenilirlik tipleri farklı sistemler için temel olup birbirleri arasında büyük değişiklik göstermemektedir:

  • Sistem oldukça güvensiz ya da onarım maksadı ile ulaşılması imkânsız (Uzay sistemleri, denizaltı kabloları vs.).
  • Sistem güvenli bir şekilde kapatılamaz.
  • Sistem güvensiz durumdayken çalışamaz.

Bu tanımlamalar güvenilirlik rejimi için kriter olarak seçilebilir.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">İşletim sistemi</span> bilgisayar donanım kaynaklarını yöneten yazılım

İşletim sistemi ya da işletim dizgesi, bir bilgisayarın donanım kaynaklarını yöneten ve uygulama yazılımlarına hizmet sağlayan yazılımların bir bütünüdür. İşletim sistemleri, bilgisayarın donanımı ile uygulama yazılımları arasında bir köprü görevi görerek kullanıcıların sistemle etkileşim kurmasını sağlar. Öne çıkan örnekler arasında Microsoft Windows, macOS, GNU/Linux dağıtımları, Android ve iOS yer alır.

<span class="mw-page-title-main">Yazılım</span> bilgisayarın somut olmayan çalıştırılabilir bileşeni

Yazılım, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik aygıtların birbirleriyle haberleşebilmesini ve uyumunu sağlayarak görevlerini ya da kullanılabilirliklerini geliştirmeye yarayan makine komutlarıdır.

<span class="mw-page-title-main">RAM</span> herhangi bir sırada okunabilen ve değiştirilebilen bir tür geçici veri deposu

Rastgele erişimli hafıza veya rastgele erişimli bellek mikroişlemcili sistemlerde kullanılan, genellikle çalışma verileriyle birlikte makine kodunu depolamak için kullanılan herhangi bir sırada okunabilen ve değiştirilebilen bir tür geçici veri deposudur. Buna karşın diğer hafıza aygıtları saklama ortamındaki verilere önceden belirlenen bir sırada ulaşabilmektedir, çünkü mekanik tasarımları ancak buna izin vermektedir.

<span class="mw-page-title-main">Mikrodenetleyici</span>

Mikrodenetleyici bir VLSI entegre devre çipinde küçük bir bilgisayar'dır. Mikrodenetleyici, bellek ve programlanabilir giriş/çıkış çevre birimleri ile birlikte bir veya daha fazla CPU kapsar.

<span class="mw-page-title-main">Anakart</span>

Anakart, modern bir bilgisayar gibi karmaşık bir elektronik sistemin birincil ve en merkezî baskılı devre kartıdır. Apple bilgisayarlardaki muadiline logic board denir ve bazen mobo olarak kısaltılır. Fiziksel yapı olarak anakartlar özel alaşımlı bir blok üzerine yerleştirilmiş ve üzerinde RAM yuvaları genişleme kartı slotları devreler ve yongalar bulunan kare şeklinde bir plakadır. Bu plaka çalışma sistemini organize eder. Bu organizasyon anakart üzerindeki yonga setleri sayesinde olur.

<span class="mw-page-title-main">Merkezî işlem birimi</span> bir bilgisayar programının talimatlarını, talimatlar tarafından belirtilen temel aritmetik, mantıksal, kontrol ve giriş/çıkış (G/Ç) işlemlerini gerçekleştirerek yürüten ve diğer bileşenleri koordine eden bir bilgisayar içindeki elektro

Merkezî işlem birimi, dijital bilgisayarların veri işleyen ve yazılım komutlarını gerçekleştiren bölümüdür. Çalıştırılmakta olan yazılımın içinde bulunan komutları işler. Mikroişlemciler ise tek bir yonga içine yerleştirilmiş bir merkezî işlem birimidir. 1970'lerin ortasından itibaren gelişen mikroişlemciler ve bunların kullanımı, günümüzde MİB teriminin genel olarak mikroişlemciler yerine de kullanılması sonucunu doğurmuştur.

i386

Intel 80386 veya i386, 80286'dan sonraki Intel mikroişlemcisi.

Donanım yazılımı (İng: firmware), sayısal veri işleme yeteneği bulunan her tür donanımın kendisinden beklenen işlevleri yerine getirebilmesi için kullandığı yazılımlara verilen addır. Elektronikte ve bilişimde donanım yazılımı, kalıcı bellek, program kodu ve veri deposudur. Donanım yazılımının bulunduğu cihazlara tipik örnekler; gömülü sistemler, bilgisayar çevre birimleri, cep telefonu, dijital fotoğraf makinesi verilebilir. Bu cihazlarda bulunan yazılım, cihazın kontrol programını barındırır. Donanım yazılımı ROM, EPROM, flaş bellek gibi kalıcı bellekte saklanır. Bir cihaz yazılımının değiştirilmesi, cihazın ömrü boyunca ya hiç yapılmaz ya da sadece birkaç kez yapılır. Bazı cihazların yazılımları üretim aşamasından sonra değiştirilemez. Donanım yazılımında güncelleştirme ya yazılım hatası ya da cihaza yeni bir özellik eklemek için yapılır. Bunun için mikroçip ROM'u değiştirilmesi gerekebilir veya flaş belleğin özel bir yöntemle tekrar programlanması gerekir. Bilgisayardaki BIOS yazılımı yalnızca, cihazın temel işlevlerini saklar, işletim sistemi gibi yüksek seviye yazılımlara önayak olur.

<span class="mw-page-title-main">PowerPC</span>

PowerPC, AIM olarak bilinen Apple-IBM-Motorola ittifakının 1991'de geliştirdiği bir RISC mikroişlemcisidir. Genel olarak kişisel bilgisayarlar içindir. PowerPC merkezi işlem birimleri (CPU) gömülü (embedded) ve yüksek performans işlemcileri olduğu için popüler olmuştur. PowerPC 1990'da AIM' in ve PReP'in temel taşı oldu, fakat mimari Apple'ın Macintosh'unun 1994–2006 modellerinde daha başarılı bulundu.

<span class="mw-page-title-main">Mikroişlemci</span> ana işlem biriminin fonksiyonlarını tek bir yarı iletken tümdevrede birleştiren programlanabilir sayısal elektronik bileşen

Mikroişlemci, işlemci olarak da bilinen, merkezî işlem biriminin (CPU) fonksiyonlarını tek bir yarı iletken tüm devrede (IC) birleştiren programlanabilir bir sayısal elektronik bileşendir.

<span class="mw-page-title-main">Seri bağlantı noktası</span>

Seri port seri bir bağlantı noktası, seri iletişim, her seferinde içeriye veya dışarıya doğru bir bit bilgi transfer eden fiziksel bir arayüzdür. Kişisel bilgisayarların tarihi boyunca terminaller veya modemler gibi cihazlar ile bilgisayarlar arasındaki veri transferi çoğunlukla seri bağlantı noktaları üzerinden sağlanmıştır. Fare, klavye, diğer çevre birimleri de bu yolla bilgisayara bağlanmaktadır.

<span class="mw-page-title-main">Bilgisayar mimarisi</span>

Bilgisayar mimarisi, en küçüğe ve en başarılıya ulaşmayı hedeflerken aynı zamanda maliyeti de göz önünde bulundurduğu için sanat ve bilimin ortak buluştuğu nokta olarak da tanımlanır. Bilgisayar Mimarisi, bilgisayar parçalarının iç yapıları ve aralarındaki haberleşme bağlantıları ile ilgilidir.

<span class="mw-page-title-main">BIOS</span> EPROM adı verilen bir yonga üzerinde ROM Bellek biçiminde yer alan yazılım

BIOS,. EPROM adı verilen bir yonga üzerinde ROM Bellek biçiminde yer alan bir tür yazılımdır. Bilgisayar açıldığı anda işlemciye tüm diğer donanımları sırasıyla tanıtır. Donanımların temel iletişim protokollerini belirler. İşletim sisteminin başlangıç öğelerinin herhangi bir sürücüden yüklenmesini sağlar. İşletim sistemi çalışırken donanım ve işletim sistemi arasındaki ilişkileri düzenler.

Denektaşı(sınama programı); Bilgisayar mimarisinde bir bileşenin başarımını, o bileşen üzerinde çeşitli sınamalar yaparak ölçmek için çalıştırılan bir veya bir grup bilgisayar programıdır. Denektaşları ile bilgisayarın bir donanımının karakteristik bir özelliğinin başarımının belirlenmesinde de kullanılır. Örneğin Merkezi İşlem Biriminin (MİB[CPU]) kayan nokta işlemlerindeki başarımını ölçmek için kullanılır. Ayrıca bazı durumlarda bu sınama yazılımların başarımı için de kullanılabilir. Yazılımlar için kullanılan denektaşlarına örnek olarak derleyiciler ya da veritabanı yönetim sistemlerinin başarımlarını ölçen programlar verilebilir.

<span class="mw-page-title-main">Önyükleme</span> CPUya ilk elektrik verildiğinde bilgisayarın çalışabilmesi için uygulamaya konulan işlemler bütünü ve çalışan uygulamalar

Bilgisayar biliminde önyükleme, bir donanım veya bir yazılım komutu ile elektrik verilen bilgisayarı başlatma işlemidir. Açıldıktan sonra, bir bilgisayarın merkezî işlem biriminin (CPU) ana belleğinde yazılım yoktur, bu nedenle bazı işlemlerin yürütülebilmesi için yazılımı belleğe yüklemesi gerekir. Bu, CPU'daki donanım veya bellenim veya bilgisayar sistemindeki ayrı bir işlemci tarafından yapılabilir. İşletim sistemi ve bazı uygulamalar elde başlatıldığında, önyükleme tamamlanır.

Yazılım geliştirme kiti (SDK) belli bir yazılım paketi, yazılım çatısı, donanım platformu, bilgisayar sistemi, oyun konsolu, işletim sistemi veya bunlara benzer bir platform için uygulama üretmeyi sağlayan yazılım geliştirme araçlarından oluşan yazılımdır.

<span class="mw-page-title-main">Yongada sistem</span> Bir entegre devre türü

Yongada sistem bir entegre devre türüdür. Tek başına bir bilgisayarda bulunan bütün parçaları içerebilir. Aynı zamanda analog, sayısal, karışık sinyal ve radyo iletişimi işlevlerini bünyesinde toplayabilir. Yongada sistemlere düşük güçle çalışan mobil elektronikte sıkça rastlanır. En yaygın kullanım alanı gömülü sistemlerdir. Yongada sistemlerin mikrodenetleyicilerden en büyük farkı işlem gücü ve yüksek hafızasıdır. Ayrıca yongada sistemler harici flash depolama, RAM ve çok çeşitli başka elemanlarla aynı anakart üzerinde onları yöneterek çalışabilirken mikrodenetleyicilerde bunun gibi çok parçalı bir yapı yoktur. Daha doğrusu bir gömülü sistem eğer bir mikrodenetleyici ile kurulduysa ROM, RAM gibi bileşenler mutlaka mikrodenetleyicinin içerisinde bulunurken yongada sistemde böyle bir zorunluluk yoktur. Ayrıca yongada sistemlerin gücü son kullanıcıların kullandığı Windows, Macintosh, iOS, Android vb. işletim sistemlerini çalıştırmaya yeterken mikrodenetleyiciler çok daha spesifik alanlarda ve çok kısıtlı ROM ve RAM'ler ile çalışırlar. Nihayetinde mikrodenetleyiciler örneğin bir çamaşır makinesini kontrol ederken yongada sistemler akıllı telefon, tablet ve hatta bilgisayarlara bile can verebilirler.

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.

<span class="mw-page-title-main">Motorola 6809</span>

Motorola 6809, Motorola'nın bazı 16 bit özelliklerine sahip 8 bitlik bir mikroişlemcisidir. Terry Ritter ve Joel Boney tarafından tasarlandı ve 1978'de tanıtıldı. Hem selefi Motorola 6800 hem de ilgili MOS Technology 6502'ye göre büyük bir ilerleme, TRS-80 Renkli Bilgisayar ve Dragon 32/64 ev bilgisayarlarında, Vectrex oyun sisteminde ve Star Wars dahil 1980'lerin başındaki atari makinelerinde kullanım buldu. Savunmacı, Robotron: 2084, Joust ve Gyruss. Fairlight CMI dijital ses iş istasyonunun Seri II'si ve Konami'nin Time Pilot '84 arcade oyununun her biri çift 6809 işlemci kullanır.

Dijital elektronikte, özellikle bilgi işlemde, donanım yazmaçları genellikle belleğe benzer birçok özelliğe sahip, genellikle flip floplardan oluşan devrelerdir, örneğin: