Datum:
Hallo, ich arbeite auf einem Microblaze und brauche nun eine timeout-Funktion; und ich frage mich, ob ich das in SW oder HW realisieren soll. Also, Microblaze spricht jetzt einen IP-Core an und soll ihm dann t Millisekunden Zeit geben zu antworten. Antwortet keiner, mach Microblaze weiter. Hat jmd 'ne Idee? HW? XPS-Timer setzen und den ein Interrupt werfen lassen? SW? Über Thread ein sleep() erzeugen und irgend eine Flagge setzen? Was ist eine schöne Implementierungsart?
Datum:
> Was ist eine schöne Implementierungsart?
Für eine sinnvolle Antwort ist da zuwenig Kontext... *)
Gibt es ein Betriebssystem?
Ist die Timeouterkennung bzgl. der Genauigkeit kritisch?
Gibt es andere zeitkritische Aufgaben?
*) Der SW-Theoretiker ("Ein Betriebssystem ist ein Fünf-Tupel...") ist
in fast allen Fällen ein grundsätzlicher Gegner des Busy-Waiting und
macht Interrupts, Wait-Queues, Signals bis zum Umfallen. Oft tuts aber
auch langweiliges Busy-Waiting, nur kann man damit halt nicht so Posen.
Datum:
> Gibt es ein Betriebssystem? Ja, ich kann Xilkernel verwenden. > Ist die Timeouterkennung bzgl. der Genauigkeit kritisch? > Gibt es andere zeitkritische Aufgaben? Nö, zeitkritisch ist da eigentlich nichts.
Datum:
olpo schrieb: > Nö, zeitkritisch ist da eigentlich nichts. Dann mach das Ganze in Software. Das hier: Beitrag "Wartezeiten effektiv (Scheduler)" funktioniert auch wunderbar auf einem Softcore. Duke