![]() |
Görevci by Kozmotronik v2.1.1
Küçük gömülü sistemler için çoklu görev (multi-tasking) yönetimi uygulaması
|
Dosyalar | |
dosya | port.c |
dosya | portmacro.h |
Fonksiyonlar | |
void | portKritikBolumGirisi (void) |
void | portKritikBolumCikisi (void) |
Görevci tarafından kullanılacak sistem donanımları burada ilklenir. Herbir portun görevcisi kendi port.c dosyasında gerçeklenmiş olan portGorevciyiBaslat() işlevini çağırarak başlatılır.
void portKritikBolumCikisi | ( | void | ) |
Sistemin kritik bir bölümden çıkmasını sağlar.
Kritik bir işlem biter bitmez bu işlev çağrılmalıdır ki sistemin kesmeye bağlı olay kaynakları hemen etkinleştirilsin ve bu olaylar bir an önce işlensin. Bu yüzden kritik bölüm olabildiğince kısa ve öz olmalıdır.
void portKritikBolumGirisi | ( | void | ) |
Sistemin kritik bir bölüme geçmesini sağlar.
Kritik bölüm, genelde atomik yani hiçbir şekilde bölünmemesi gereken bir işlemin hemen öncesinde çağrılmalıdır. Atomik işlemin bitiminde ise bu işlevin eşi olan portKritikBolumCikisi() işlevi çağrılmalıdır. Yoksa kesme bitleri bu işlev tarafından değiştirildiğinden sistem beklendiği gibi çalışmaz.