Ben böyle yapsam SumeronicsRC çoktan batmıştı!
Mikroişlemcilerde çok güçlü bir özellik vardır. Interrupt. Zaman kritik görevler için kullanılır özellikle. Örneğin servo sinyali üretecekseniz kodu öyle yazarsınız ki her 20 milisaniyede bir bir interrupt gelir ve işlemci o sırada ne yapıyorsa yapsın, işini bırakıp zaman kritik görevi halledip kaldığı yerden devam eder.
Kompleks sistemlerde birden çok interrupt kaynağı vardır. Örneğin biri klavyeyi okur diğeri bir sinyal üretir vs vs. Interruptlar birbirlerini engellemesinler diye interrupt geldiğinde işlemci diğer interruptları kapatır. Beklemeye alır. Kaydını tutar. İlk interrupt tamamlanınca diğerlerine öncelik sırasına göre bakar. Tümü tamamlanınca yapmakta olduğu işe geri döner.
Şimdi interrupt sözcüğünü proje ile değiştirip bir daha okuyalım...
Bir proje / interrupt bitmeden diğerine dallanılırsa sonuçta olacak şey stack overflow hatasıdır. Ayrıca hiçbir interrupt servisi / proje tamamlanamamış olur. Elde bir depo dolusu tamamlanamamış proje ile kalakalınır!
Bilmem anlatabildim mi?!