-
Data: 2009-09-30 20:28:39
Temat: Re: printf i wielozadaniowosc (MicroC/OS-II)
Od: Jerry1111 <j...@w...pl.pl.wp> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Pszemol wrote:
> "Zbych" <a...@o...pl> wrote in message
> news:h9vmcj$4pm$1@atlantis.news.neostrada.pl...
>> Pszemol pisze:
>>
>>> To jest oczywista oczywistość, że wątek o priorytecie 1 czeka na port
>>> RS i oddaje sterowanie :-) Mnie interesuje jak to się dzieje, że w
>>> czasie
>>> gdy task 1 oddał sterowanie task 4 lub 7 był wstanie trzy razy wysłać
>>> linię znaków do RS'a trzema osobnymi wywołaniami fprintfa...
>>
>> Ktoś na pme podpowiedział ci, żebyś sprawdził, czy prawidłowo
>> ustawiłeś priorytety wątków.
>
> Nie do końca - on nazwał mnie debilem :-)
Kurcze, nie widze tego. Ale nie widze tez swojej odpowiedzi z wczoraj -
ciekawe czemu.
> i zarzucił że task o priorytecie
> zero jest najmniej ważnym taskiem w systemie i z tego powodu - to co
> obserwuję jest jak najbardziej naturalne.
;-)
>> Od siebie dorzucę tylko pytanie: czy ten system gwarantuje ci,
>> że jak bufor RSa będzie wolny to w pierwszej kolejności dobierze się
>> do niego wątek o najwyższym priorytecie?
Bylo o tym w ksiazce, ale kniga w robocie.
>> A może kto pierwszy ten lepszy?
>
> Ten RT system miał mi gwarantować, że w danym momencie czasu
> wykonuje się ten task spośród tasków gotowych do działania który
> ma najwyższy priorytet. Ten warunek dotyczy zarówno typowego
> reschedulingu (funkcja OS_Sched()) jak i reschedulingu po
> zakończeniu obsługi przerwania. Na stronie 104 tej samej ksiązki:
> "The conclusion of the ISR is marked by calling OSIntExit(), which
> decrements the interrupt nesting counter.
Zaciekawilo mnie (bo ja wiem ze Nios czasem przerywa sobie printfy - mi
to nie przeszkadza) czemu tak sie dzieje. Popatrzylem na zrodla drivera
uart w Nios 9.0 i tam nie ma OSIntExit pod koniec
altera_avalon_uart_rxirq().
> A więc wciąż nie rozumiem dlaczego w momencie gdy przyszło
> przerwanie od portu szeregowego (bo tylko w taki sposób mogło
> się zwolnić miejsce w buforze portu) funkcja obsługi przerwania
> RS232 nie obudziła tasku 0 który czeka na to miejsce i scheduler
> zawołał mi do tablicy task 4 lub task 7 zamiast wrócić do tasku 0.
>
> To jest właśnie cała zagadka o której próbuję tu podyskutować :-)
;-)
Jak Ci sie chce to przesledz krok po kroku co fprintf wyczynia i szukaj
podejrzanych miejsc. Z doswiadczenia z wczesniejszych wersji - drivery
Altery sa niestety troche dodupne jesli chodzi o RTOS.
Aha, ja uzywam fifoed_avalon_uart zamiast oryginala - duzo mniejszy bol
glowy.
--
Jerry1111
Następne wpisy z tego wątku
- 30.09.09 20:35 DJ
- 30.09.09 21:09 Pszemol
- 30.09.09 21:15 Pszemol
- 30.09.09 21:58 Jerry1111
- 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
- 19.10.09 22:31 Pszemol
- 21.10.09 20:18 Jerry1111
Najnowsze wątki z tej grupy
- Zlacze w mikrofonie z lat 80-tych
- Żywica żółknie od UV i wody :(
- Zawory termostatyczne
- Schemat automatyki
- Teoretyczne zagadnienie - ogrzewanie budynku
- Zagadka radiowa
- Prostownik
- Nowy akumulator Donut Lab
- Pilot do zamka/bramy
- Jaka myjka ultradźwiękowa?
- Retro organizer ale współcześnie
- Skąd diody LED 1,5V?
- Apollo Comm
- PICkit3 mnie pokonał
- LEDy na choinkę zdechły
Najnowsze wątki
- 2026-01-19 oszustwo samochodowe
- 2026-01-19 Katowice => Solution Architect (Workday) - Legal Systems <=
- 2026-01-18 off-grid
- 2026-01-18 Co grozi Żurkowi za jego działania polityczne?
- 2026-01-17 To się NIE DZIEJE
- 2026-01-17 Czy to się kwalifikuje pod jakiś paragraf?
- 2026-01-17 Piaseczno cd 2
- 2026-01-17 Chlapacze do OPLA ale GUMOWE
- 2026-01-17 Toyota dba o Niemców.
- 2026-01-17 Wrocław => Junior Konsultant wdrożeniowy ERP <=
- 2026-01-17 Zlacze w mikrofonie z lat 80-tych
- 2026-01-17 Warszawa => Inżynier Systemów i Sieci <=
- 2026-01-17 Czy Trenerzy AI już kogoś pozwali za "zatrute ciastka"?
- 2026-01-17 Poznań => Konsultant SAP HCM <=
- 2026-01-17 Niestabilny materiał wybuchowy W AKCJI




Fakturzystka, fakturzysta