System czasu rzeczywistego

0

Witam, mam pytanie dotyczące systemu czasu rzeczywistego. Otóż mam do napisania aplikację na androida. Ogólnie rzecz ujmując to będzie ona działała w następujący sposób: cała aplikacja będzie działała jako usługa działająca w tle. Urządzenia zewnętrzne (np. czujnik ciśnienia, zewnętrzny GPS itd) będą wysyłały dane do telefonu. Telefon co jakiś czas będzie te dane odbierał, przetwarzał je i wysyłał na serwer (będą to robiły wątki). Cała ta aplikacja ma działać jako system czasu rzeczywistego, I tu pojawia się moje pytanie. Czy w ogóle da się zrobić system czasu rzeczywistego na androida bo przecież nie mamy kontroli nad tym kiedy dokładnie te wątki zostaną uruchomione, wątkami zarządza sam android? Jeśli da się zrobić system czasu rzeczywistego to w jaki sposób to zrobić? Moglibyście wskazać mi jakiś trop? Z góry dzięki za wszystkie podpowiedzi i wskazówki.

0

Może zacznijmy od tego czy rozumiesz co to system czasy rzeczywistego? Bo wydaje mi się że nie do końca. W uproszczeniu w RTC ważny jest czas obliczeń. Wcale nie musi to znaczyć że ma być on krótki, ale ważne jest że wynik musi być dostarczony przed momentem, w którym ma on jeszcze sens.
"nie mamy kontroli nad tym kiedy dokładnie te wątki zostaną uruchomione" cóż taki problem występuje w każdym systemie. Każdy system ma mechanizmy do zarządzania wątkami i wcale nie znaczy że kiedy ty wywołasz start to w tej mikrosekundzie zostanie to wykonane. Możesz ustawiać np. wyższe priorytety wątkom, aby system potraktował je bardziej priorytetowo (o ile to sformułowanie jest po polsku :)).
Pytanie czy ma sens prowadzić obliczenia po stronie telefonu, jeśli on nie konsumuje wyników, a jedynie wysyła je na serwer. Ale jeśli chcesz pozostać przy tym. To musisz także zadbać o mechanizmy mogące anulować obecne obliczenie, jeśli nadejdą nowe dane, których przeliczenie da wynik, który i tak zdezaktualizuje ten z wykonywanych obliczeń.

1 użytkowników online, w tym zalogowanych: 0, gości: 1