eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingprintf i wielozadaniowosc (MicroC/OS-II)Re: printf i wielozadaniowosc (MicroC/OS-II)
  • Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail
    From: "J.F." <j...@p...onet.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: printf i wielozadaniowosc (MicroC/OS-II)
    Date: Thu, 1 Oct 2009 20:10:45 +0200
    Organization: http://onet.pl
    Lines: 53
    Message-ID: <ha2rb0$1ie$1@news.onet.pl>
    References: <h...@p...onet.pl>
    NNTP-Posting-Host: abpq199.neoplus.adsl.tpnet.pl
    Mime-Version: 1.0
    Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=response
    Content-Transfer-Encoding: 8bit
    X-Trace: news.onet.pl 1254420640 1614 83.8.58.199 (1 Oct 2009 18:10:40 GMT)
    X-Complaints-To: n...@o...pl
    NNTP-Posting-Date: Thu, 1 Oct 2009 18:10:40 +0000 (UTC)
    X-Priority: 3
    X-MSMail-Priority: Normal
    X-Newsreader: Microsoft Outlook Express 6.00.2900.5843
    X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579
    Xref: news-archive.icm.edu.pl pl.comp.programming:183722
    [ ukryj nagłówki ]

    Użytkownik "Pszemol" <P...@P...com> napisał w wiadomości
    news:h9sobc.3s8.0@poczta.onet.pl...
    > Otóż co widzę, to że na wyjściu generowanym przez tą funkcję
    > fprintf
    > (strumień znaków RS232, "plikiem" dla fprintf jest port
    > szeregowy)
    > widzę że wątek o niższym priorytecie wchodzi z butami w linię
    > tekstu
    > wątka o wyższym priorytecie i wcięcie jest tam, gdzie fprintf
    > robi ten
    > parsing argumentów %d.

    Nie znam systemu .. ale
    -na pewno jest tak jak myslisz ? Moze to wyzszy priorytet sie
    wcina, albo takie sa objawy niereentrowalnosci ?

    -tak sie zastanawiam .. wyzszy priorytet wysyla bufor [zadania] i
    zawisa gdzies na porcie szeregowym. przelaczamy na drugie zadanie,
    ktore dochodzi do wysylania, bufor portu zajety .. ale byc moze
    zdazylo juz zarejestrowac chec wyslania. I teraz gdzies po
    przerwaniu od portu zostanie ten bufor drugiego zadania wyslany ?


    > 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?

    czekaj .. a fprintf nie ma jakiegos bufora roboczego ?

    > Przecież według filozofii MicroC/OS-II task
    > bariery 0, w czasie chodzenia sobie po kodzie fprintfa nie
    > powinien być
    > przerwany i taski o priorytetach 4 czy tym bardziej 8 powinny
    > grzecznie
    > czekać aż fprintf wywołany przez task o priorytecie 1 ukończy
    > zadanie
    > i odda sterowanie systemowi operacyjnemu (nie ma tu
    > wywłaszczania).

    Tylko ze on moze oddac w trakcie printf, wlasnie czekajac na port
    szeregowy.

    Bez zrodel sie nie dowiesz :-)

    J.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: