İçeriğe atla

Kesme (bilgisayar)

İş kesme, bilgi işlemede donanımsal olarak olağanüstü durumu belirtmek için gönderilen asenkron sinyal veya yazılımda işletimde değişiklik olacağını göstermek için ihtiyaç duyulan senkronize olaydır.

Donanımsal iş kesme geldiği anda işlemcinin, işletimin o andaki durumunu ilgili bağlamda saklaması sağlanır ve bunun ardından iş kesme kotarıcının işletilmesine başlanır.

Yazılımsal iş kesmeler genellikle komut kümesi içindeki bir komut gibi yürütülür. Bu komutlar donanımsal iş kesmedekine benzer şekilde ilgili bağlamın saklanıp iş kesme kotarıcısının işletilmesini sağlar.

İş kesme, genellikle çok görevli bilgisayarlarda özellikle gerçek zamanlı bilgi işlemede kullanılan bir tekniktir. Bu tekniği kullanan sistemlere iş kesme sürümlü sistemler denebilir.

Genel bakış

Donanımsal iş kesmeler, işlemcinin yoklama döngüsü içindeki değerli zamanının dış olaylar için bekleyerek kötü kullanımının önlenmesi olarak belirtilebilir. İşlemci bir olayı gerçekleştirirken gelen iş kesme sinyali ile iş askıya alınır ve işlemcinin başka bir işi işlemesine izin verilir.

Yazılımsal iş kesmeler yüksek ayrıcalıklı seviyelerde işletilen paylaşılan sistem alt yordamlarına erişim için olan mekanizma olarak belirtilebilir.

İş kesmeler iki kategoride sınıflandırılabilir:

  1. Senkronize iş kesmeler tahmin edilebilir ve bilinen zamanda meydana gelen iş kesmelerdir. Bu iş kesmelere örnek yazılımsal iş kesme komutlarının yürütümü gösterilebilir.
  2. Asenkronize iş kesmeler tahmin edilemeyen herhangi bir zamanda meydana gelebilen iş kesmelerdir. Bu iş kesmelere örnek donanımsal aygıtların sevise ihtiyacı olduğu sırada oluşan iş kesmelerdir.

İş kesmeler donanımda denetim hatlarıyla farklı sistemlere göre yürütülebilir veya iş kesmeler hafıza alt sistemlerine katılabilir. İş kesme eğer donanım içinde yürütülüyorsa Programlanabilir İş kesme Denetleyici (Programmable Interrupt Controller PIC) veya İleri Programlanabilir İş kesme Denetleyici (Advanced Programmable Interrupt Controller) iş kesme aygıtı ile birlikte işlemcinin iş kesme pinine bağlanır. Eğer yürütme hafıza denetleyicinin bir parçası ise iş kesmeler sistem hafıza adres uzayı içinde tasarlanır.

İş kesmeler belirtilen çeşitlerde kategorize edilebilir: Yazılımsal interrupt, maskelenebilir iş kesme, maskelenemeyen iş kesme, işlemciler arası iş kesme ve sahte iş kesmedir.

  • Yazılımsal iş kesme işlemci içinde komut işletilirken oluşan iş kesmedir. Bu iş kesmeye örnek olarak sistem çağrıları gösterilebir.

(Sistem çağrısı: İşletim sisteminden hizmet istemi için başvuru programı tarafından kullanılan mekanizmadır.)

  • Maskelenebilir iş kesme maske yazıcısının bit maskesine bit yerleştirerek donanımsal iş kesmenin görmezden gelmektir.
  • Maskelenemez iş kesme görmezden gelmeyi sağlayan maske bitine sahip olmayan donanımsal iş kesmedir.
  • İşlemciler arası iş kesme çoklu işlemcinin olduğu ortamda gerçekleşen bir işlemcinin diğer bir işlemciyi kestiği iş kesme türüdür.
  • Sahte iş kesme sistem hataları tarafından oluşturulan iş kesmelerdir. Örneğin Bir Programlanabilir İş kesme Denetleyicinin bir iş kesme hattındaki elektriksel gürültü bir sahte bir iş kesmedir.

İşlemci, tipik olarak yerleştirildiğinde, yazılımın dış iş kesmeleri görmezden gelmesine olanak sağlayan iş kesme maskesine sahiptir. Bu maske Programlanabilir İş kesme Denetleyicisi içerisinde bulunan iş kesme maske yazıcısına erişimden daha hızlı bir erişim sunar veya kendisi aygıtın içerisinde iş kesmeleri devre dışı bırakır. Bazı durumlarda x86 mimarisindeki gibi işlemcide iş kesmeleri devre dışı bırakmak veya olanaklı kılmak için iş kesme maskesi hafıza engeli gibi davranır .Bu durum diğer durumlara göre daha yavaş olabilir.

İş kesme isteği

İş kesme isteği, iş kesme işleminin belirtilme şeklidir. İş kesme gerçekleşeceği zaman veri yoluna iş kesme işareti ile veya Programlanabilir İş kesme Denetleyicisinde bulunan iş kesme girdi hattına gönderilen iş kesme işareti ile iş kesme isteği belirtilir. İş kesme hatları bazen iş kesme isteğinin formatına göre sayılarla indekslenebilir. Örneğin Intel 8259 ailesindeki programlanabilir iş kesme denetleyicilerde sekiz tane iş kesme hattı IRQ0 'dan IRQ7'ye kadar bu şekilde indekslenmiştir.

İş kesme kotarıcı

İş kesme kotarıcı, iş kesme servis yordamı, işletim sistemindeki geri arama alt yordamı veya işletimi İş kesmenin kabulü ile tetiklenmiş aygıt sürücüsüdür.

İş kesme kotartıcılarının çok sayıda fonksiyonu vardır. Bu fonksiyonlar iş kesmenin ortaya çıkma sebebine göre değişirler. İş kesme geldikten sonra uygun fonksiyona sahip iş kesme kotarıcı seçilir ve kotarıcı görevini yerine getirir.

İş kesme kotarıcı, olay kotarıcılarının düşük seviyeli bir meslektaşıdır. Olay kotarıcılar ya donanımsal iş kesme ya da iş kesme komutları tarafından yazılımsal olarak başlatılır.

İş kesme gecikme süresi

İş kesme gecikme süresi aygıt tarafından iş kesme oluşturulmasıyla aygıta hizmetin verilmesi arasında geçen süredir. Birçok işletim sistemi için aygıta hizmetin verilmesi iş kesme kotartıcının işletilince gerçekleşir. İş kesme gecikme süresi iş kesme denetleyici, iş kesme maskeleme ve işletim sisteminin kotartma metotlarından etkilenebilir.

Programlanabilir İş Kesme Denetleyicisi

Programlanabilir İş Kesme Denetleyicisi meydana gelen iş kesmelerin hangi öncelik sırasına göre işleneceğine karar veren bir aygıttır. Eğer aygıt birden fazla iş kesme bildirimine sahipse bu bildirimlerin işletimlerini ilgili önceliklerine göre sıralar. Programlanabilir İş Kesme denetleyiciler sert öncelikler, döner öncelikler ve art arda öncelikler isimli öncelik çeşitlerini içermektedir.

İş kesme hücumu

İşletim sistemlerinde işlemcinin gereğinden fazla iş kesme kabul etmesiyle işlemci zamanının çoğunun iş kesme işletimiyle harcanmasıdır. İş kesme hücumuna tipik olarak donanımsal aygıtlar neden olur. Bu aygıtlar iş kesme oran limitini desteklemezler.

Seviye tetikleme

Seviye tetiklemeli iş kesmelerde hazırda oluşmuş ancak servisi henüz yapılmamış olan kesilmelerin iş kesme isteği hattında yüksek seviyede (1)'de ya da düşük seviyede (0)'da gösterilmesidir. İş kesme olayı hatta sürüldüğünde hat aktif duruma geçer. İş kesmenin servisi sağlanana kadar da hat aktif durumda kalır.

İşlemci tipik olarak kesilme girdisini,önceden belirlenmiş zamanda diğer veri yolu çevrimleri, Z80 gibi mikroişlemcilerde, T2 durumunda olduğu sırada örnekler. Eğer kesme işlemci örnekleme yaparken kesme işlemi aktif durumda değil ise CPU iş kesmeyi görmez. İş kesmenin bu tip kullanımı gürültü kesme hattının neden olduğu sahte sinyalleri minimize eder, sahte sinyal çok kısa olur ve fark edilmez.

Eğer seviye tetiklenmiş iş kesme hatları gereğince tasarlanmış ise hat çoklu aygıtlar tarafından paylaşılabilir. İş kesme hattı yukarı çekme ve aşağı çekme direncine sahip olmalıdır. Böylece hat inaktif olduğunda bu durumun korunmasını sağlar. Bu tür iş kesmeler bazı elverişli davranışlarından dolayı tercih sebebidir. İş kesme hattı üzerinde bildirim araması yapılırken CPU sırayla bütün aygıtları servis gereksinimi olup olmadığı konusunda denetler. Servis gereksinimi olan aygıt tespit edilip servisi gönderildikten sonra CPU iş kesme hattının durumunu kontrol etmelidir ve aygıtların yeni bir servis ihtiyacı olup olmadığını tespit etmelidir. Eğer hatta belirtme işlemi bitmişse CPU hattaki kalıcı aygıtların denetlenmesini önler. Bazı aygıtlar diğer aygıtlardan fazla kesilme yapıyorsa bu aygıtlar iş kesme durumlarının kontrolü için özellikle masraflı olmaktadırlar. Aygıtların dikkatlice sıralanması beraberinde etkin bir kazanç getirecektir.

Paylaşılan seviye tetiklemeli iş kesmelerin çeşitli problemleri bulunmaktadır. Örneğin hatta göze çarpan bir servis istemi olduğunda hat kalıcı olarak bildirimde kalır. Bu nedenle de diğer aygıtların durumlarındaki değişikliği tespit edebilmek mümkün olmaz. Düşük öncelikli aygıtı ertelemek seçenek değildir çünkü bu yüksek öncelikli aygıtların servis isteminin tespit edilmesini önler. Eğer hattaki bir aygıtın servisinin nasıl yapılacağı CPU tarafından bilinmiyorsa diğer aygıtlar tarafından oluşturulan iş kesmeler sürekli olarak bloklanır.

Kenar tetikleme

Kenar tetiklemeli iş kesmeler iş kesme hattındaki seviye geçişi ile belirtilirler. Ya düşen kenarda (1'den 0'a) ya da (genellikle) yükselen kenarda (0'dan 1'e) belirtilirler. Aygıt hattın üzerine darbe sürerek kesilmeyi belirtmek ister. Daha sonra hat kendi kararlı haline döner. Eğer darbe oylanmış I/O tarafından fark edilmeyecek kadar kısa ise kenarı bulmak için özel bir donanım gerekebilir.

Çoklu aygıtlar gerektiği gibi tasarlanmışsa kenar tetiklemeli iş kesme hattını paylaşabilirler.

İş kesme hattı yukarı çekme ve aşağı çekme direncine sahip olmalıdır. Bu sayede aktif sürüm olmadığında direnç iş kesme hattını bir özel durumda tutar. Aygıtlar iş kesilmelerini belirtmeden önce hattı hazır hale getirirler. Daha sonra hat aygıtlar tarafından oluşturulan darbeleri alır . Ancak farklı aygıtlardan gelen iş kesme darbeleri yakın zamanlarda meydana gelirlerse karışabilir. Bu yüzden kaynaklanan iş kesme kayıplarından kurtulmak için CPU darbenin izleyen kenarında tetiklenmelidir. İş kesme fark edildikten sonra CPU servis gereklilikleri için bütün aygıtları kontrol etmelidir.

Kenar tetiklenmiş iş kesmeler seviye tetiklenmiş iş kesmelerdeki paylaşım problemleri yaşamaz. Düşük öncelikli aygıtın servisi isteğe göre ertelenebilir ve yüksek öncelikli aygıtın servisi sağlandıktan sonra ertelenmiş düşük öncelikli aygıtın servisi sağlanır. Eğer CPU'nun servisini nasıl sağlayacağını bilmediği bir aygıt mevcutsa bu sahte iş kesmeye neden olabilir veya düzenli periyodik sahte iş kesmeler oluşabilir. Ancak bu durum diğer iş kesme durumlarının belirtilmesini engellemez.

Karma

Bazı sistemler kenar tetikleme ile seviye tetiklemeyi karma olarak kullanır. Donanım yalnızca kenar için bakmaz bununla birlikte belirli periyodik bir zaman aralığında iş kesme sinyalinin aktif durumda bulunduğunu doğrular. Ortak karma iş kesme maskelenemez iş kesme girdisidir. Çünkü maskelenemez iş kesmeler genellikle daha önemli veya feci sistem olaylarını belirtir. Bu sinyalin iyi bir uygulaması iş kesmenin makul zaman aralığında aktif kalmış olmasını garantiler. Bu iki basamak yanlış iş kesmelerin sistemi etkilemesini azaltmak için yardımcı olur.

Mesaj ile belirtme

Mesaj ile belirtilen iş kesmeler fiziksel iş kesme hattını kullanmaz. Onun yerine aygıt, istemini bilgisayar veri yolu gibi bir iletişim ortamına kısa mesaj göndererek belirtir. Mesaj ile belirtilen iş kesmeler kenar tetiklemeli iş kesmeler gibi davranırlar. İş kesme sürekli bir durumun aksine anlık bir sinyaldir.

Mesaj ile belirtilen iş kesme vektörleri paylaşılabilirdir bunun sağlanması için iletişim ortamı paylaşılabilir olmalıdır.

Kullanım alanları

İş kesmelerin genel kullanım alanları sistem zamanlayıcıları, disk giriş-çıkışları ve güç kesme sinyalleridir. Bunlarla birlikte UART ve Ethernet kullanımında veri transferinde iş kesmeler kullanılır. Ayrıca kontrol motorları gibi birçok alanda iş kesmeler kullanılır. Disk iş kesme sinyalleri çevre birimlerinden diske veya diskten çevre birimlerine veri transferinde tamamlayıcıdır. Güç kesme kesilmeleri güç kaybı olduğunu ya da olacağını belirtir. Bu da bilgisayar elemanlarının sistemli olarak işlerini durdurmasını sağlar.

Kaynakça

Dış bağlantılar

İlgili Araştırma Makaleleri

MIPS, Microprocessor without Interlocked Pipeline Stages, MIPS teknolojileri adlı firma tarafından 1985 yılında geliştirilmiş indirgenmiş komut kümesi türü bir mikroişlemci mimarisidir.

<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">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.

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

Pentium, Intel’den beşinci nesil x86 mimarisi bir mikroişlemcisidir. 486 serisinin ardılıydı ve ilk olarak 22 Mart 1993 tarihinde duyurulmuştu.

<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.

Kesme kotarıcı ya da kesme hizmet yordamı, yürütümü alınan kesme tarafından tetiklenen, işletim sistemi veya aygıt sürücüsünün bir geri çağırma alt programıdır. Kesme kotarıcıları, temelde kesmenin üretilmiş olması ve kesme kotarıcının görevini tamamlama hızına dair çok sayıda fonksiyona sahiptir.

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

IBM 360 Sistemi (S/360), IBM tarafından ilk kez 7 Nisan 1964 yılında tanıtılan bir tür Anaçatı bilgisayar sistemidir. Bilgisayarın yapısı ve uygulamaları arasında belirli bir fark yaratan ilk bilgisayar türüdür.

Olay İşleyici, bilgisayar programlamada programdaki alınan girdileri işleyen bir eşzamansız geri çağırma altprogramıdır. Her olay Grafiksel Kullanım Arayüzü araç takımına özgü şekilde uygulama katmanlı bilginin bir parçasıdır. Grafiksel Kullanım Arayüzü, tuşa basılmaları, fare hareketlerini, eylem seçimlerini ve zamanlayıcının süresinin bitmesi olaylarını kapsar. Düşük düzeyde olaylar bir dosyanın okunması veya ağ katarı için yeni verinin kullanırlığını temsil edebilirler. Olay işleyicileri olaya dayalı programlamada genel kavramdırlar.

Kesme fırtınası, işletim sistemlerinde işlemcinin, işlemci zamanının büyük kısmını harcayan aşırı sayıda ve düzensiz olarak oluşan kesintilere maruz kalması olayına denir. Kesme fırtınasının tipik nedeni kesinti sınır oranlarını desteklemeyen donanımlardır.

Boru hattı yöntemi bilgisayar mimarisi ve diğer sayısal ürünlerin tasarımında başarımı artırmak için uygulanan bir yöntemdir. Komutları, boru hattı yöntemi ile işleyip daha kısa süre içinde bitmesini sağlar. Asıl amacı saat sıklığını artırarak başarımı artırmaktır. Farklı kaynakları aynı anda, farklı işler tarafından kullanarak çalışı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.

SCSI, Sabit Disk, CD sürücü, tarayıcı, yazıcı gibi aygıtları paralel arabirim standartlarından daha uyumlu ve gelişmiş bir şekilde kontrol eden standarttır.

<span class="mw-page-title-main">İşlem (bilgisayar)</span>

Bilgisayar bilimlerinde işlem (process) terimi, belleğe yüklenmiş ve işlemcide (CPU) yürütülmekte olan bir program olarak tanımlanmaktadır. Uygulamalar diskte çalışmaz halde bulunurken ise program olarak tanımlanır. Bir program kendi başına pasif komut yığınıdır ve işlem ise bu komutların aktif olarak yürütülmesidir.

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

Pentium II, markası Intel'in altıncı nesil mikro mimari için ve x86 uyumlu mikroişlemcisi. 7 mayıs 1997 tarihinde duyurulmuştur. 7500000 transistör içeren, Pentium II 5500000 transistör içeren Pentium Pro adında ilk P6 nesil çekirdek geliştirilmiş bir versiyonu bulunuyordu. Bununla birlikte, Pentium Pro nun L2 önbellek alt sistemi azaltılarak 1999 yılı başında Pentium III, pentium II 'nin yerini aldı.

Yazılım tanımlı radyo 1991’de John Mittola tarafından radyoların yazılımsal olarak konfigüre ve programlanabileceği düşüncesiyle başlamış olan yeni bir radyo teknolojisi kavramıdır. Dijital radyo birbiriyle haberleşebilen alıcı ve verici ünitelerine sahip kablosuz aygıtlardır. 1895'te ilk radyo vericisinin Guglielmo Marconi tarafından icadından bugüne, tasarım yaklaşımları da değişim göstermiştir. Bu, tüm elemanlarının donanım bileşenlerinden oluştuğu analog radyodan, olabildiğince yazılım tanımlı bileşenlere sahip dijital radyoya giden bir süreç olarak da görülebilir.

<span class="mw-page-title-main">Gömülü sistem</span> Belli bir fonksiyonu yapmaya yönelik bilgisayar sistemi

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.

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

Microsoft tarafından üretilen ve satılan bir işletim sistemi satırı olan Windows NT'nin mimarisi, kullanıcı modu ve çekirdek modu olmak üzere iki ana bileşenden oluşan katmanlı bir tasarımdır. Tek işlemcili ve simetrik çok işlemcili (SMP) tabanlı bilgisayarlarla çalışmak üzere tasarlanmış, önleyici, yeniden gelen bir işletim sistemidir. Giriş/çıkış isteklerini işlemek için, I / O istek paketlerini (IRP'ler) ve zaman uyumsuz G / Ç'yi kullanan paket odaklı G / Ç kullanırlar. Windows XP'den başlayarak, Microsoft Windows'un 64 bit sürümleri hazırlanmaya başladı; Bundan önce, bu işletim sistemleri yalnızca 32-bit sürümlerde mevcuttu.

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

Xgrid, Apple'in Gelişmiş Hesaplama Grubu alt bölümü tarafından geliştirilen ve bilgisayar ağına bağlı bilgisayarların tek bir görev için katkıda bulunmasına izin veren tescilli bir program ve dağıtık hesaplama işlem protokolüdür.

<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.