-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!news.uzoreto.com!eternal-s
eptember.org!reader01.eternal-september.org!.POSTED!not-for-mail
From: heby <h...@p...onet.pl>
Newsgroups: pl.misc.elektronika
Subject: Re: C++ ośla łączka
Date: Thu, 16 Feb 2023 19:56:55 +0100
Organization: A noiseless patient Spider
Lines: 53
Message-ID: <tslu9v$3b1u7$1@dont-email.me>
References: <16qbnwht7z74n.8802zax2iioq$.dlg@40tude.net>
<63dad430$0$9589$65785112@news.neostrada.pl>
<trelrs$g0p$1$Janusz@news.chmurka.net>
<trgbkf$st9$1$PiotrGalka@news.chmurka.net>
<63dbd22e$0$9601$65785112@news.neostrada.pl>
<ts6rps$roo$1$PiotrGalka@news.chmurka.net>
<63e9f424$0$19625$65785112@news.neostrada.pl>
<tsg6eb$96a$1$PiotrGalka@news.chmurka.net> <tsgv8m$2kn8s$1@dont-email.me>
<tsiqth$55n$1$PiotrGalka@news.chmurka.net> <tsj9if$2v62r$1@dont-email.me>
<a...@n...neostrada.pl>
<tsjl9d$30gq5$1@dont-email.me>
<63ed6483$0$9597$65785112@news.neostrada.pl>
<tski4a$365ef$1@dont-email.me>
<63ee1784$0$9589$65785112@news.neostrada.pl>
<tsl8hv$38gns$1@dont-email.me>
<63ee3c75$0$19611$65785112@news.neostrada.pl>
<tsln7m$3a7hn$1@dont-email.me>
<63ee71e2$0$19606$65785112@news.neostrada.pl>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 16 Feb 2023 18:57:03 -0000 (UTC)
Injection-Info: reader01.eternal-september.org;
posting-host="6753f9a9e6e28e5f7a0b71608edb3765";
logging-data="3508167";
mail-complaints-to="a...@e...org";
posting-account="U2FsdGVkX18NklTJ4UB/D5e/muOKtR4Y"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.7.2
Cancel-Lock: sha1:wsUrYgRIGHbuEhPySbP7sGcQkrU=
In-Reply-To: <63ee71e2$0$19606$65785112@news.neostrada.pl>
Content-Language: en-US
Xref: news-archive.icm.edu.pl pl.misc.elektronika:778378
[ ukryj nagłówki ]On 16/02/2023 19:11, Grzegorz Niemirowski wrote:
>> Przecież zlinkowałem arykuł, w którym masz jasno wypisane powody i
>> ostrzeżenie.
> I w sumie jako rozwiązanie podają std::atomic. Ciekawe czy atomic z C
> też może być.
A co broni użyć C++, szczególnie na nowej arch? Nawet na AVR to zmiana 2
literek na dwa + w nazwie kompilatora i strata bodaj 4 bajtów na
dodatkową sekcję, którą można łatwo usunąć, jak ktoś sępi. Więc na arch,
gdzie atomic ma implementację, to powinno kosztować asymptotyczne zero.
>>> Cały czas chodzi o programy bare metal, bez schedulera.
>> Przerwania to multitasking, taki sam jak w schedulerze preemptive.
> Chodziło o to, że jak jest scheduler to zwykle też masz pod ręką
> semafory, kolejki itd.
Ich istnienie jest rozdzielne. Do tego stopnia, że trafiłem kiedyś na
urządzenie o nazwie "Tiger" zawierajace "TigerBASIC", taki panel do
kontroli automatyki, z wyświetlaczem graficznym. Gdzie rozdział
poświęcony miltithread miał opis 1 funkcji tworzącej wątek i kończył się
na "należy zwrócić uwagę na dostępie do zmiennych w innych wątkach". I
wsio na temat synchronizacji.
>> W pierdołowatych małych cpu zapewne tak. W dużych absolutnie nie.
>> Pisząc relatywnie duże programy, o dużej złożoności, z masą wątków i
>> wymianą danych między nimi, nie miałem okazji użyć volatile ani razu.
>> Z ciekawostek: w poważnych firmach słowo volatile jest wyłapywane
>> przez linter kodu i wymaga zgody komisji za zielonym suknem.
> Miałem właśnie na myśli MCU.
A ja wskazuje, że granica między dużym systemem i uC/MCU zaciera się
coraz szybciej. Mam przed sobą pdf dwurdzeniowego ARM za normalne $. Do
migania diodą nadaje się tak samo jak AVR. Może nawet konsumuje mniej
energii, nie zdzwiłbym się.
>> Niezliczona ilość postów/stron wyjasnia, dlaczego volatile nie jest
>> tym, o czym myślisz, że do czego jest.
>> Serio, nie zauważyłes?
> Ale cały czas mi chodzi o ten problem cache. Wiem dobrze, że volatile
> nie rozwiązuje zacytowanych wyżej problemów.
volatile źle rozwiązuje równiez "ten problem z cache" w sensie
optymalizacji. Bo zabrania *zawsze* optymalizacji danej zmiennej,a nie
tylko w miejscu, gdzie jest błędem logicznym.
> Zgadza się. Niemniej dlatego wspomniałem, że problem dotyczy MCU.
MCU za chwile będą takie jak duże systemy. Duże systemy idą w szerokość
(ilośc rdzeni) to samo czeka uC. Prawdę mówiąc bardzo mi szkoda, że
Parallax Propeller nie dał rady stać się popularnym, to był bardzo
interesujacy CPU do aplikacji real-time.
Następne wpisy z tego wątku
- 16.02.23 19:57 heby
- 17.02.23 02:28 JDX
- 17.02.23 02:35 JDX
- 17.02.23 07:17 Marek
- 17.02.23 09:18 heby
- 17.02.23 09:30 J.F
- 17.02.23 10:17 JDX
- 17.02.23 10:28 heby
- 17.02.23 10:41 JDX
- 17.02.23 14:31 J.F
- 17.02.23 14:51 heby
- 17.02.23 16:21 Grzegorz Niemirowski
- 17.02.23 18:56 heby
- 17.02.23 20:20 Piotr Gałka
- 17.02.23 20:23 heby
Najnowsze wątki z tej grupy
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
- Dziwny schemat wzmacniacza m.cz.
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- CGNAT i ewentualne problemy
Najnowsze wątki
- 2025-07-03 ROG
- 2025-07-03 OZE dały Polsce więcej prądu niż elektrownie węglowe
- 2025-07-03 Dlaczego nikt nie powiadamia służb!
- 2025-07-02 Jaka ładowarka sieciowa do Iphona?
- 2025-07-02 ,,The Plot to Get RFK" (,,Spisek, by pozbyć się RFK")
- 2025-07-02 Rozkaz 17-2025: O Zaprzestaniu Zaciągania Kredytów
- 2025-07-02 Rozkaz 16-2025: 2025-06-19 Apelacja Do Wyroku Sądu Rej. w Sprawie IVRNs 295-23
- 2025-07-02 Rozkaz 17-2025: O Zaprzestaniu Zaciągania Kredytów
- 2025-07-02 Inżynierowie... inżynierzy...
- 2025-07-02 Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- 2025-07-02 Kto potrafi sprawdzić aku BMW 48V 10Ah Li-Ion do mini hybrydy, czy sprawny ?
- 2025-07-02 Warszawa => Senior IT Recruitment Consultant <=
- 2025-07-02 Gdańsk => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-07-02 Warszawa => IT Hardware Specialist - Wsparcie i Konfiguracja <=
- 2025-07-02 Warszawa => Inżynier oprogramowania .Net <=