-
Data: 2009-09-29 20:46:22
Temat: Re: printf i wielozadaniowosc (MicroC/OS-II)
Od: Adam Dybkowski <a...@4...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Pszemol pisze:
> Rozumiem, że skoro wywołania fprintf'a z tasków dotyczą tego samego
> portu szeregowego, przekazanego fprintf'owi jako argument nazwy pliku
> (globalna zmienna) to może się coś kiepścić, i linie się będa przeplatać,
> ale nie rozumiem jak taski o niższym priorytecie mogły się wstrzelić
> z TRZEMA OSOBNYMI WYWOŁANIAMI fprintf'a w jedną linię tasku
> o wyższym priorytecie?
Może chodzi o to, że [f]printf wywołany z zadania o wysokim priorytecie
jest dzielony na wiele odrębnych zapisów do portu szeregowego (w
najprostszej implementacji będą to zapisy po jednym znaku) a system
operacyjny w oczekiwaniu na gotowość portu do przyjmowania kolejnych
znaków (zgłaszaną zapewne w przerwaniu portu szeregowego) oddaje po
prostu sterowanie zadaniom o niższym priorytecie gotowym do wykonania. W
gruncie rzeczy to chyba lepsze podejście (a nuż zadanie o niskim
priorytecie cośtam sobie liczy powoli w tle) niż aktywne oczekiwanie na
zwolnienie się miejsca w buforze nadajnika portu szeregowego. Czasem
przy wolnej transmisji i długim buforze sprzętowym (zależy od procesora
lub zewnętrznego układu UART) takie oczekiwanie byłoby długie - a tak w
tym czasie procesor może się zająć obsługą zadań o niższym priorytecie.
Aby uniknąć takiego mieszania się printf'ów, wystarczy objąć je
semaforem / mutexem czy co tam masz podobnego w tym systemie.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Następne wpisy z tego wątku
- 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
- Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
Najnowsze wątki
- 2026-01-20 Majo przesrane :)
- 2026-01-20 Kiedy zajmiemy Bornholm?
- 2026-01-20 Bieruń => Junior Dynamics 365 Finance Consultant <=
- 2026-01-20 Warszawa => Project Manager (AI and innovation) <=
- 2026-01-20 Przemyk RP3? Zmarł po "kontakcie z policją" z winy pogotowia (Lubin 2021)
- 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 <=




Fakturzystka, fakturzysta