kā īstenot semafors?

A

ahgu

Guest
kā ieviest vienkāršu semafors?

un uzdevumu threading kontroli?

kaut kur es varu lasīt?

pateicība
ahgu

 
Es pieņemu, ka jūs izmantojat RTOS?.Tās parasti ir iebūvēti komunikācijā starp dažādiem uzdevumiem.Of couse jūs vienmēr varat izmantot valsts bit mainīgos karoga starp dažādiem uzdevumiem.Vai Jūs būtu precīzāk, ko jūs mēģināt darīt.

 
atkarībā no jūsu OS ir primitīvas, kas īsteno semafors.

 
atbilde No1 ir labs, jūs varētu būt binārā semafors (mutex starp 2 pavedieni) vai skaitīšanas semafors ar atomu WAIT (S) un SIGNAL (S).Atkarībā no tā, ko jūs init S ar jums var būt, ka daudziem pavedieniem piekļūstot kritiskajām sadaļā.WAIT (S) samazinājumi S (un ļauj x diegi, izmantojot, x = pašreizējā S) un SIGNAL (s) pieaugumu.
Tomēr reply2 ir arī labs.ir generic jāgaida (S) un signālu (S) atkarībā no tā, ko jūs izmantojat kodēšanu.

 
Ja Jums ir laba java, read:
lee: vienlaicīga plānošanas java,
tas ir mazliet smags, lai nolasītu, bet tas ir ļoti
labs.jūs sapratīsiet visas sinhronizācijas
jautājumiem (pat diezgan iepriekš apliecības)

Taiti

 
Čau,

Es domāju, ka atbilde ir atkarīga no perona, ka jūs izmantosit semaphor.

Ja tas ir embebed sistēma, jums ir domāt RTOS, atkarībā no mikroorganismu, kuru jūs izmantosiet, jūs varat atrast daudz RTOS framworks (ex. Slavo par PIC, ...)Ja jūs whan lietot datoru vai kaut simillar (PC/104, Java iespējots procesors, ...), varat izmantot valodām, piemēram Java, ka disponibilize diegiem, kas var būt sincronized, un jūs varat izmantot sistēmu taimeris notikumiem.

Hope palīdz,

NeuralC

 

Welcome to EDABoard.com

Sponsor

Back
Top