-
Data: 2009-09-29 18:35:49
Temat: Re: printf i wielozadaniowosc (MicroC/OS-II)
Od: "Pszemol" <P...@P...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]"grg12" <g...@c...at> wrote in message
news:25a0$4ac24d00$506cdd75$32156@news.chello.at...
> Pszemol pisze:
>> W systemie MicroC/OS-II wszystkie wątki uszeregowane są według swoich
>> priorytetów i wątek o niższym priorytecie dostaje procesor TYLKO WTEDY
>> gdy wątek o wyższym priorytecie nie ma nic do roboty i czeka na
>> zdarzenie.
>
> A aktywny wątek o niskim priorytecie może zostać przymusowo "uśpiony"
> na rzecz wątku wysokopriorytetowego czy przełączenie następuje tylko jeśli
> aktywny watek dobrowolnie odda sterowanie (tak było w np. win3.1)?
Wysoki priorytet zwykle śpi bo czeka np. na przerwanie od zegara
lub od urządzenia zewnętrznego, np. RS232. Czyli masz przerwanie
które przychodzi od RS232 a jesteś w tasku o priorytecie 3 to system
obsługuje przerwanie i po obsłudze znowu sprawdza gdzie wrócić.
Ponieważ mam dwa taski gotowe, task o priorytecie 1 czekał na RS232
a już nie czeka, to task 1 powinien dostać sterowanie...
Podsumowując, nie dziwiłbym się że w linii loga od tasku 3 mam
przerwy i z buciorami wchodzi task 0 czy 1 ze swoim tekstem...
Ja się dziwię że linia od tasku 0 została przerwana w połowie
i wszedł w jej środek task 3 Z TRZEMA WYWOŁANIAMI fprintf'a.
> Przypuśćmy że wątek HiPrio pisze sobie coś do bufora łącza szeregowego,
> bufor zostaje zapełniony więc wątek zostaje uśpiony do czasu opróżnienia
> bufora, wątek LowPrio przejmuje pałeczkę, po pewnym czasie próbuje zapisać
> do bufora łącza, który został już opróżniony przez obsługę portu
> szeregowego (jakieś przerywanie zapewne) - wypisuje swoje i grzecznie
> idzie spać. W tym momencie obudzony zostaje wątek HiPrio...
Ja nie widzę tutaj możliwości aby z dwu tasków czekających na
przerwanie od portu szeregowego dorwał się do RS232 ten
o niższym priorytecie i to w połowie parsingu od fprintfa HiPrio.
Następne wpisy z tego wątku
- 29.09.09 20:46 Adam Dybkowski
- 29.09.09 21:04 Jerry1111
- 29.09.09 22:06 Pszemol
- 30.09.09 13:25 Zbych
- 30.09.09 14:20 Pszemol
- 30.09.09 14:45 jotefka
- 30.09.09 15:25 Pszemol
- 30.09.09 18:43 Pszemol
- 30.09.09 20:35 DJ
- 30.09.09 21:09 Pszemol
- 01.10.09 18:10 J.F.
- 02.10.09 06:11 Artur M. Piwko
- 13.10.09 21:06 AK
- 13.10.09 21:34 Jerry1111
- 13.10.09 21:47 Pszemol
Najnowsze wątki z tej grupy
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
Najnowsze wątki
- 2025-04-05 Wyrok dożywocia dla Polki
- 2025-04-04 Prezydium Sejmu Tuskiego orzekło: Poseł KO mecenas Roman Giertych NIE jest mordercą (w żadnym sensie tego słowa?)
- 2025-04-04 Reset komóry
- 2025-04-04 Lublin => JavaScript / Node / Fullstack Developer <=
- 2025-04-04 Zielonka => Key Account Manager IT <=
- 2025-04-04 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2025-04-04 Warszawa => Mid/Senior IT Recruiter <=
- 2025-04-04 Białystok => NMS System Administrator <=
- 2025-04-04 Warszawa => Spedytor Międzynarodowy <=
- 2025-04-04 Warszawa => Generative AI Engineer <=
- 2025-04-04 Warszawa => Gen AI Engineer <=
- 2025-04-04 Warszawa => Senior Programmer C <=
- 2025-04-04 Jak odróżnić myjki wibrujące od ultradźwiękowych.
- 2025-04-03 Ledy na wyłączniku czasowym błyskają
- 2025-04-03 Mapy w android-auto