-
Data: 2021-01-09 16:48:54
Temat: Re: Spieszmy się kochać Windows
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> >> POSIX w embedded nie jest dobry.
> > Nadal nie napisałeś, dlaczego.
> Wiele systmów embedded:
> a) nie ma plików
> b) nie ma procesów
> c) nie ma rurek
> d) nie ma sygnałów
> e) nie ma konsoli
> f) a wniej interaktywnych poleceń
No i?
Taki przykładowy QNX jest oparty o mikrojądro, gdzie te wszystkie rzeczy powyżej to
osobne usługi, których można nie mieć, to jest kwestia konfiguracji. I niepotrzebnych
rzeczy nie ma, zwłaszcza w systemach embedded.
Nie zmienia to faktu, że nadal QNX jest POSIX.
I dlatego dalej nie rozumiesz.
> Ale ma 40 programów w dildo
Zaczynam mieć wrażenie, że to jedyna rzecz, o której masz coś do powiedzenia.
> POSIXa w jakiejś implementacji ciężko będzie formalnie weryfikować
Sam sobie zaprzeczasz. "W jakiejś implementacji"? A jeśli mam formalnie zweryfikowaną
implementację, to czy w takiej implementacji będzie ciężko zweryfikować? Nadal nie
odróżniasz API od implementacji. POSIX to tylko API.
> Jednak wolę dalej FreeRTOSa nad POSIXa w respiratrorze,
A jest formalnie zweryfikowany? Bo widzisz - POSIX to API. Natomiast FreeRTOS to
konkretny system. I ten konkretny system nie jest zweryfikowany, nawet nieformalnie.
Dlatego zdecydowanie nie chcesz go w respiratorze.
(ale możesz chcieć SafeRTOS, którego napisali od nowa w tym celu)
> Bo POSIX jest niezwykle trudny do weryfikacji. Z powodu komplikacji
> swojego API.
Od kiedy API utrudnia weryfikację? W jaki sposób?
> > Mogę mieć dobrej jakości implementację
> Możesz. A masz?
Przecież już pisałem.
> > Np. kod, który napisałem na Linuksie zadziałał od ręki na QNX.
> A na freeRTOS? A na Windows CE?
A tam nie zadziałał od ręki, bo autorzy uznali, że musi być ourMutexCreate(), zamiast
pthread_mutex_init().
> Ok, ustalmy wobec tego że masz program *częściowo* przenośny. Tak lepiej?
Nie wiem, czy lepiej. Na pewno program napisany pod API POSIX jest bardziej przenośny
(bo działa na wielu systemach), niż program napisany pod FreeRTOS (bo działa tylko na
jednym).
> W sumie
> bez znaczenia czy masz pthread_mutex_init nazwany dupa. Istotne jest że
> w innym systemie (niezgodnymz POSIX) może w ogóle nie itnieć inicjacja
> poza miejscem deklaracji, albo istnieć przyjmująca paramter resursive.
Może czy istnieje? Pokaż na przykładzie FreeRTOS (skoro już o nim mówimy i chcesz go
w respiratorze).
> Dlatego masz class MyMutex
To mam z innego powodu. Otóż w programie C++ wolę mieć bardziej zunifikowane idiomy.
Np. zwalnianie tego muteksa w destruktorze. Ale robię to z powodu *podniesienia*
poziomu abstrakcji, a nie z powodu zapewnienia przenośności. Do przenośności
wystarczyłby POSIX, gdyby twórcy januszowych RTOSików nie mieli przerostu ego i
presji na wymyślanie własnych nazw.
Dlatego chciałbym mieć *jedną* implementację mojej klasy MyMutex. A nie kilka
różnych.
(oczywiście teraz mamy też std::mutex, ale dyskusja jest ogólna)
> > zrobić mu unit-testy na innym systemie, np. na Linuksie, bo akurat taki jest
łatwiej dostępny.
> A na windowsie?
"U mnie działa"?
Jeśli trzeba puścić unit testy, to Cygwin jest do tego jak najbardziej wystarczający.
> Na codzień piszę kod na POSIXie i
> Windowsie *jednoczesnie*. Powiedzmy że mam zielone pojęcie gdzie POSIX
> jest przenośny. Powiedzmy że nieco powyżej średniej, mam to pojęcie.
> Nijak nie udało mi się zawołać funkjci Posixowych w Windowsie.
"U mnie działa"?
> Zgadnij dlaczego mamy (wreszcie) std:: z obsługą wątków, i to nie jest
> POSIX like API.
A niby jak by miało być "like"? POSIX to jest API dla języka C. Logiczne jest, że API
w std:: będzie inne. I dobrze.
> Najwidoczniej ktoś kombinuje jak ja - abstrakcja na OS.
Pominąłeś szczegół: ktoś z tym std:: kombinuje, że standardy są dobre. I ma nadzieję,
że autorzy implementacji będą tego standardu przestrzegać, bo od przestrzegania
standardu zależy przenośność końcowych programów, jak też obniżenie globalnych
kosztów. Nie przypisuj sobie tego pomysłu, bo do tej pory byłeś od niego daleko.
> > Dlaczego ourMutexCreate jest do embedded a pthread_mutex_init nie jest.
> Bo jest nieprzenośne na inne embedded.
Jest przenośne bardziej (również na embedded), niż ourMutexCreate, który w ogóle nie
jest.
> Ty najwidoczniej możesz sobie pozwolić na ogarnieniae abstrakcji w
> POSIXowym OSie.
Też nie mogę. Bo ktoś olewał standardy.
> Stąd różne opinie. Moja w tym wypadku jest mojsza i tyle.
Już rozumiem. Ty piszesz o tym, jak jest a ja o tym, jak powinno być. Stąd
nieporozumienie. ;-P
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 09.01.21 18:53 heby
- 09.01.21 20:57 Luke
- 09.01.21 21:28 heby
- 10.01.21 14:37 Smok Eustachy
- 10.01.21 15:43 heby
- 10.01.21 16:56 Maciej Sobczak
- 10.01.21 17:25 Maciej Sobczak
- 10.01.21 18:05 heby
- 10.01.21 21:07 Smok Eustachy
- 10.01.21 21:49 heby
- 11.01.21 09:24 Smok Eustachy
- 11.01.21 12:33 heby
- 11.01.21 12:37 Krzysztof Mitko
- 11.01.21 13:03 Mateusz Viste
- 11.01.21 13:26 heby
Najnowsze wątki z tej grupy
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-08-06 Gdynia => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-08-06 Białystok => Inżynier oprogramowania .Net <=
- 2025-08-06 "[...] sejmowe wystąpienie posłanki Klaudii Jachiry, która zakończyła je słowami ,,Sława Ukrainie"."
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Panuje się 181 159,42 zł./mies. na posła w 2026r.
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Czy cos fi przechodzi przez trafo separujące?
- 2025-08-05 kajaki i promile
- 2025-08-05 Re: Tesla jest bezpieczna, wczoraj spaliła się doszczętnie na Ursynowie i nikomu się nic nie stało
- 2025-08-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-08-05 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-05 B2B i książka przychodów i rozchodów
- 2025-08-04 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML