Article View: pl.comp.programming
Article #217049Re: Embedded HTTP Server
From: heby
Date: Wed, 10 Jun 2020 20:52
Date: Wed, 10 Jun 2020 20:52
89 lines
5197 bytes
5197 bytes
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.
Technical Details
Message-ID:
<rbrh67$1v0$1@dont-email.me>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!goblin3!goblin.stu.neva.ru!paganini.bofh.team!eternal-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mailReferences:
<d423a072-9378-441b-ba06-e0657a1fa53bo@googlegroups.com> <rbg2hb$ebs$1@dont-email.me> <42ba89cb-8f2f-40a0-ac17-293f71f43f6fo@googlegroups.com> <rbgtv9$vuf$1@dont-email.me> <6a69d306-af0e-499c-bbdb-e74ae6d72a35o@googlegroups.com> <rbh5pi$gkn$1@dont-email.me> <8aa7b6ae-aa79-4a58-9717-e7c293363341o@googlegroups.com> <rbjlo6$dum$1@dont-email.me> <4e191a5e-e565-4e29-8dd5-bd6e5163061bo@googlegroups.com> <rbl1p9$sak$1@dont-email.me> <a939a6b9-a812-4011-81b1-82365df10111o@googlegroups.com> <rbmaac$cps$1@dont-email.me> <8ad576d7-4dd3-4cd7-ba53-2b3061289238o@googlegroups.com> <rbmcsp$utp$1@dont-email.me> <e088a6fa-05fa-46be-af00-07ea9023ab8bo@googlegroups.com> <rbosgc$7q4$1@dont-email.me> <05b9414f-00e5-4ed3-856a-366803697654o@googlegroups.com> <rbov5h$ol4$1@dont-email.me> <3328eb43-2a0c-4fe6-9215-8545d6a0ea44o@googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!goblin3!goblin.stu.neva.ru!paganini.bofh.team!eternal-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail From: heby <heby@poczta.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: <d423a072-9378-441b-ba06-e0657a1fa53bo@googlegroups.com> <rbg2hb$ebs$1@dont-email.me> <42ba89cb-8f2f-40a0-ac17-293f71f43f6fo@googlegroups.com> <rbgtv9$vuf$1@dont-email.me> <6a69d306-af0e-499c-bbdb-e74ae6d72a35o@googlegroups.com> <rbh5pi$gkn$1@dont-email.me> <8aa7b6ae-aa79-4a58-9717-e7c293363341o@googlegroups.com> <rbjlo6$dum$1@dont-email.me> <4e191a5e-e565-4e29-8dd5-bd6e5163061bo@googlegroups.com> <rbl1p9$sak$1@dont-email.me> <a939a6b9-a812-4011-81b1-82365df10111o@googlegroups.com> <rbmaac$cps$1@dont-email.me> <8ad576d7-4dd3-4cd7-ba53-2b3061289238o@googlegroups.com> <rbmcsp$utp$1@dont-email.me> <e088a6fa-05fa-46be-af00-07ea9023ab8bo@googlegroups.com> <rbosgc$7q4$1@dont-email.me> <05b9414f-00e5-4ed3-856a-366803697654o@googlegroups.com> <rbov5h$ol4$1@dont-email.me> <3328eb43-2a0c-4fe6-9215-8545d6a0ea44o@googlegroups.com> Mime-Version: 1.0 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="abuse@eternal-september.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: <3328eb43-2a0c-4fe6-9215-8545d6a0ea44o@googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit