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!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!new
    s.nask.pl!news.nask.org.pl!news.unit0.net!feeds.phibee-telecom.net!newsfeed.xs4
    all.nl!newsfeed5.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all
    .nl!news2.euro.net!feeder.news-service.com!69.16.173.12.MISMATCH!news-in-01.new
    sfeed.easynews.com!easynews!core-easynews-01!easynews.com!en-nntp-07.dc1.easyne
    ws.com.POSTED!not-for-mail
    From: A.L. <a...@a...com>
    Newsgroups: pl.comp.programming
    Subject: Re: printf i wielozadaniowosc (MicroC/OS-II)
    Message-ID: <s...@4...com>
    References: <h...@p...onet.pl>
    X-Newsreader: Forte Agent 4.2/32.1118
    MIME-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: 8bit
    Lines: 36
    X-Complaints-To: a...@e...com
    Organization: Forte Inc. http://www.forteinc.com/apn/
    X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will
    be unable to process your complaint properly.
    Date: Tue, 29 Sep 2009 11:59:54 -0500
    Xref: news-archive.icm.edu.pl pl.comp.programming:183676
    [ ukryj nagłówki ]

    On Tue, 29 Sep 2009 10:42:52 -0500, "Pszemol" <P...@P...com>
    wrote:

    >
    >Jak wytłumaczyć takie efekty?
    >
    [...]
    >
    >Czy ktoś mógłby mi to wytłumaczyć?

    JA sie bardzd dawno tym zajmowlem i pod zupelnie inym systeme, a
    bardzo dzawno znaczy BARDZO dawno. Ale mialem podobny problem

    1. Task o wysokim priorytecie pisze do UART. UART ma wlasny bufor.
    Bufor sie przepelnil i taksk dostal notyfikacje. System zawiesil task.

    2. Wiec task o niskim priorytecie dostal CPU; w miedzyczasie UART
    zaczal oproznaic budor, wiec taks o niskim priorytecie mogl pisac. Po
    niedlugim czasie system zauwazyl ze task o wysokim priorytecie czeka
    na UART, wiec zasiesil task o niskim priorytecie i ten zaczal pisac do
    UART

    W efekcie wyszla "sieczka" zlozona z fragmentow informacji z roznych
    taskow.

    Kluczowe pytanie jes co to znaczy ze printf "zakonczyl" dzialanie.
    Powinien raportowac "zakonczenie" dzialania tylko wdedy gdy informacja
    zostala rzeczywiscie fizycznie wyslana do klienta.

    Nie wiem jak to jest w twoim systemie, ale podejrzewam ze cos takiego
    lub podobnego.

    Remedium byloby zamkniecie printf w osobnym tasku z wlasnum,
    nieograniczonym buforem i potraktowanei calosci jako sekcji krytycznej

    A.L.

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: