-
Data: 2012-05-05 14:45:09
Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
Od: Jerry1111 <j...@w...pl.pl.wp> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 05/05/2012 07:40, Sebastian Biały wrote:
> On 2012-05-04 20:35, Jerry1111 wrote:
>> Jak juz kod bedzie pewny i dzialajacy to idzie do biblioteki i mi wisi w
>> czym jest pisany.
>
> Więc kod na destruktorach gwarantuje że jest ok pod warunkiem braku
> bugow w kompilatorze. *Tego* nie gwarantuje, ale nie przypominam sobie
> takowego w gcc. Przypuszczam jednak że wiekszą masz szanse na dowolnego
> innego buga w C który też będzie wymagał wyjęcia gaśnicy. Taki zawód, co
> poradzisz.
Pod warunkiem ze nie zapomnisz napisac destruktora. Kod w C bedzie
dzialal tak samo dobrze jesli nie zapomnisz wlaczyc przerwan. Ale to
troche tak, jakby sie chcialo napisac "Hello, world" i zapomnialo o
printf("Hello, world"); - przed tym sie nie zabezpieczysz.
>> Mysle ze design nie jest mizerny. Starczy powiedziec ze procek ma <5%
>> wolnego czasu, ok. 10% spedza w RTOS i reszta w przerwaniach. Ot, taki
>> sprytniejszy kontroler PWM do przetwornicy.
>
> To nijak nie tłumaczy rozłacznych punktów sekcji krytycznej.
Tlumaczy - warunki sa sprawdzane w zupelnie roznych miejscach.
Stworzenie poprawnej logiki do tego wymagalo troche sprytnego myslenia
zeby 7 tranzystorow dobrze sterowac, ale bylo warto. Moglbym status
trzymac w zmiennej i miec funkcje ktora by sterowala przerwaniami na
podstawie tej zmiennej, ale robi to za mnie swiat zewnetrzny procka.
Nawet bym to w C++ se napisal, tylko kto mi da cykle zegarowe procka na
cos takiego?
Poza tym to nie jest taka ksiazkowa sekcja krytyczna, to sie dzieje w
przerwaniach i ilosc aktualnie nalozonych na siebie przerwan ma pewien
wplyw na priorytet (czyli poczatek i koniec takiej 'udawanej' sekcji
krytycznej bedzie sie wykonywal z roznymi priorytetami - logika jest
dosc zagmatwana). To wszystko narzucone przez hardware jaki musi byc
sterowany w czasie rzeczywistym. Sztuczka w tym zeby nie tracic czasu na
sprawdzanie tych warunkow bo to wszystko sie wykonuje co 10/20/100/500us
(a jest tam troche logiki i dosc duzo DSP).
>> Jak wczesniej napisalem: czas wykonania programu. W taki sposob mam
>> bardzo ladna kontrole nad wlaczaniem/wylaczaniem z priorytetami.
>
> To nijak nie tłumaczy rozłacznych punktów sekcji krytycznej.
>
> Pokaż syntetyczny przykład w którym sekcja krytyczna *musi* być
> rozwałkowana.
Wylaczam przerwanie, cos sie robi i chce wlaczyc przerwanie. W
zaleznosci co sie stalo w miedzyczasie albo wlaczam albo nie. Z
destruktowem musialbym kombinowac i miec jakies parametry mowiace czy
destruktor ma przerwanie wlaczyc czy nie.Tak, wiem, da sie to zrobic na
rozne sposoby, tylko skad ja kuzwa wezme tyle taktow asemblera na to?
Juz pisalem - jedna mikrosekunda jest droga w tej aplikacji, wiec
powstala troche niekonwencjonalna logika.
>> Zaczelo sie od tego ze C++ jest lepsze od C
>
> Bzdua. Zaczeło się od tego że Microchip dostarcza rozwiązania z lat 80
> dla lemmingów.
Czyli kompilator C - nazywajmy rzeczy po imieniu.
> Pomimo tego że moze dostarczyć darmowe ciastko nie robi
> tego.
Czyli kompilator C++.
Aha - polemizowalbym z tym 'darmowe'...
Zapominasz o jednym - na ile wycenisz koszt szkolenia typowego inzyniera
elektronika zeby umial wykorzystac C++? To sie nie oplaca - chcesz robic
sztuke (perfekcyjna i ladna, ale tylko sztuke - bo to nie zmieni sposobu
dzialania urzadzenia) dla sztuki, a tu chodzi o zarabianie kasy. Nic
dziwnego ze ludzie sie nie zgadzaja.
> A potem już poleciała standardowa dyskusja broniąca
> "wystarczającego C" jakie już wiele razy widziałem.
Czas zaakceptowac? ;-)
--
Jerry1111
Następne wpisy z tego wątku
- 05.05.12 16:18 Sebastian Biały
- 05.05.12 17:17 Andrzej Ekiert
- 05.05.12 19:25 Sebastian Biały
- 05.05.12 19:29 identyfikator: 20040501
- 05.05.12 19:47 Jerry1111
- 05.05.12 20:26 Sebastian Biały
- 05.05.12 21:39 Jerry1111
- 05.05.12 22:30 Andrzej Ekiert
- 05.05.12 22:39 Jerry1111
- 05.05.12 22:50 Michoo
- 05.05.12 22:59 Sebastian Biały
- 05.05.12 23:06 Michoo
- 05.05.12 23:13 Sebastian Biały
- 05.05.12 23:34 RoMan Mandziejewicz
- 05.05.12 23:54 Andrzej Ekiert
Najnowsze wątki z tej grupy
- 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
- wzmacniacz mocy
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- Propagation velocity v/c dla kabli RF
- Jakie natynkowe podwójne gniazdo z bolcem (2P+PE)
- Czujnik nacisku
- Protoków komunikacyjny do urządzenia pomiarowego
Najnowsze wątki
- 2025-06-19 Gdynia => Sales Executive / KAM <=
- 2025-06-19 Warszawa => IT Business Analyst (projects in the telco sector) <=
- 2025-06-19 Lublin => Programista Delphi <=
- 2025-06-19 Warszawa => Scrum Master <=
- 2025-06-19 Warszawa => Solution Architect <=
- 2025-06-19 Warszawa => Software Solution Architect <=
- 2025-06-19 Zakrzewo => Konsultant SAP HCM <=
- 2025-06-19 Zakrzewo => SAP HCM Consultant <=
- 2025-06-19 Poznań => SAP HCR Consultant <=
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-18 Poseł KO mecenas Giertych został pouczony o obowiązującym prawie [z SN]
- 2025-06-18 112
- 2025-06-18 Poznań => MLOps Engineer <=
- 2025-06-18 Gdańsk => Mainframe (z/OS, Assembler) Developer <=