eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingEmbedded HTTP Server › Re: Embedded HTTP Server
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!goblin3!goblin.stu.neva.r
    u!paganini.bofh.team!eternal-september.org!feeder.eternal-september.org!reader0
    1.eternal-september.org!.POSTED!not-for-mail
    From: heby <h...@p...onet.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: Embedded HTTP Server
    Date: Wed, 10 Jun 2020 22:52:21 +0200
    Organization: A noiseless patient Spider
    Lines: 89
    Message-ID: <rbrh67$1v0$1@dont-email.me>
    References: <d...@g...com>
    <rbg2hb$ebs$1@dont-email.me>
    <4...@g...com>
    <rbgtv9$vuf$1@dont-email.me>
    <6...@g...com>
    <rbh5pi$gkn$1@dont-email.me>
    <8...@g...com>
    <rbjlo6$dum$1@dont-email.me>
    <4...@g...com>
    <rbl1p9$sak$1@dont-email.me>
    <a...@g...com>
    <rbmaac$cps$1@dont-email.me>
    <8...@g...com>
    <rbmcsp$utp$1@dont-email.me>
    <e...@g...com>
    <rbosgc$7q4$1@dont-email.me>
    <0...@g...com>
    <rbov5h$ol4$1@dont-email.me>
    <3...@g...com>
    Mime-Version: 1.0
    Content-Type: text/plain; charset=utf-8; format=flowed
    Content-Transfer-Encoding: 8bit
    Injection-Date: Wed, 10 Jun 2020 20:52:23 -0000 (UTC)
    Injection-Info: reader02.eternal-september.org;
    posting-host="f05653e916acdd733165328fe1f66178"; logging-data="2016";
    mail-complaints-to="a...@e...org";
    posting-account="U2FsdGVkX19ayZB5qJ2jfHEYOdF9Q0j8"
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101
    Thunderbird/68.9.0
    Cancel-Lock: sha1:GkmvuWAVl3jJBhiqxh1fKfZnP9Q=
    In-Reply-To: <3...@g...com>
    Content-Language: en-US
    Xref: news-archive.icm.edu.pl pl.comp.programming:214987
    [ ukryj nagłówki ]

    On 6/10/2020 8:57 PM, Maciej Sobczak wrote:
    >> Bibliteka czyta/zapisuje zmienną globalną w implementacji callbacka.
    >> Muszę ją obarierować
    > Dlaczego musisz? Jeśli callbacki są szeregowane[*], to nie musisz.
    > [*] Ale nie są.

    Dlatego muszę.

    >> i używać tej bariery w kodzie który nie ma NIC
    >> wspólnego z serwerem HTTP.
    > Eee... To po co używasz biblioteki HTTP?

    Kod od manipulowania, powiedzmy, silnikami nic o jakims http nie wie.
    Ale razem pracuja na jednym cpu i moga mieć dostęp do tych samych
    zasobów jak np. zmienne okreslające położenie czy stan.

    >> W ten sposób wątki z jakiejś bibliteki
    >> agresywnie wymuszają na mnie zmiany kodu w miejscach odległych.
    > Używasz zmiennej globalnej z odległych miejsc? Kiepsko.

    W niektórych sytuacjah, jak opisywany sterwanik druku 3D, takim stanem
    jest bardzo duzo róznych małych detali. Gdzie jest glowica, jaka jest
    prędkośc itd itp.

    > Dlaczego obwiniasz jakąś bibliotekę o problemy spowodowane złą architekturą Twojego
    programu?

    Ona w tym zastosowaniu NIE jest zła. Jest wręcz jedyna sensowna przy
    200kB flasha.

    >> Obecnie sterowniki mają zaszyte jakeiś ARMy po 100MHz. Mimo że to RT to
    >> w zasadzie procesor ma sporo wolnego w tzw "międzyczasie". Dlaczego nie
    >> miałby generować jakiegoś www?
    > No więc skoro ma sporo wolnego, to jaki masz problem?

    Poniewaz nie rozumiesz dlaczego można się wiekszośc czasu nudzić i
    jednoczesnie mieć problem z wyrobieniem się w zastosowaniach RT. Otórz
    twój preemptive multitasking powoduje że *akurat* w tym złosliwym
    przykładzie może to powodować konkretne skutki w postacji utraty jakości
    wydruku. Tylko dlatego że trzeba przełaczyc konteks kiedy glowica
    właśnie wjechala w materiał.

    > I jakie proporcje w tym problemie?

    Jakie sobie tylko wymyslisz.

    > Na takich sprzętach ludzie wsadzają pełny RTOS

    Na ARM7, powiedzmy, ma to już resztkę sensu.

    >, pełny stos TCP

    Nie jest potrzebny. Wystarczy kawalek.

    >, chcą jeszcze serwer www i w tym wszystkim jest jakiś wyimaginowany problem z
    muteksem? Pomyliłeś proporcje.

    Raczej "mam to na codzień".

    > Zwłaszcza, że w takiej składance muteksów jest już nadziabanych jakieś
    kilkadziesiąt.

    Zero.

    >> Trudno to nazwać masochizmem że ktoś stara się wykorzystać CPU bez
    >> dodatkowego point-of-failure jakim jest extra Pi robiące za serwer www.
    > I dlatego wsadza serwer www do krytycznego kontrolera? Żeby nie mieć dodatkowego
    point-of-failure?

    Tak. Albo dla wygody. Albo bo to modne. Rózne można miec powody.

    > Ja na taką logikę nic nie poradzę i nikomu nie obiecuję swojego udziału.

    I nikt nie obiecuje że uzyje w tym zastosowaniu. Dzień jak co dzień w
    OpenSource.

    >> Masz wątki to i masz mutexy.
    > Dalej nie pokazałeś, dlaczego.

    Niezupełnie. Po prostu odrzucasz częśc rzewczywostości nie pasującej do
    zastosowania aktualnego. Wolno Ci.

    > Ani też dlaczego to miałby być problem.

    To też już zostało wyjasnione.

    > To straszne.
    > Najstraszniejsze jest jednak to, że się tak bardzo tym przejmujesz.

    Czyli miałem rację. Nie chciałeś zapytać o porady co do kodu. Po prostu
    musisz sobie podsykutować z rosnącym poziomem adrenaliny.

    Ale nuda. EOT.

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: