-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: cepu69 <c...@t...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: AVR32 - jak ruszyc z tym prockiem
Date: Tue, 10 Nov 2009 17:31:15 +0100
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 43
Message-ID: <hdc4gk$1i5$1@inews.gazeta.pl>
References: <hd1e7s$hqa$1@nemesis.news.neostrada.pl>
<hd1hnm$9oo$1@atlantis.news.neostrada.pl>
<hd3mp5$96h$1@atlantis.news.neostrada.pl> <hd3t48$lle$1@inews.gazeta.pl>
<hd4ruv$qkg$4@news.onet.pl> <hd5le5$mn6$2@atlantis.news.neostrada.pl>
<hd78vj$st1$1@news.onet.pl> <hd878m$il3$1@atlantis.news.neostrada.pl>
<hd9m9a$9qr$1@inews.gazeta.pl> <hdauas$2s4$1@nemesis.news.neostrada.pl>
NNTP-Posting-Host: 217.153.153.214
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-2
Content-Transfer-Encoding: 8Bit
X-Trace: inews.gazeta.pl 1257870676 1605 217.153.153.214 (10 Nov 2009 16:31:16 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Tue, 10 Nov 2009 16:31:16 +0000 (UTC)
X-User: cepu69
User-Agent: KNode/0.10.9
Xref: news-archive.icm.edu.pl pl.misc.elektronika:575302
[ ukryj nagłówki ]SM wrote:
>> Typow implementacja watkow we wlasnym, wycisnietym sofcie ->
>> Odpytywanie non-stop wszystkich pocedurek czy czasem ktoras nie ma czegos
>> do zrobienia - jakiez to szybkie i wydajne;)
>> Wszak przeciez scheduler to diabel wcielony, ktory zzera nasze cene
>> zasoby a nasza "petla glowna" nie.
>
> Zawsze będzie wolniej.
I to jest wlasnie clue problemu. Kto powiedzial, ze zawsze : zmierzyles,
sprawdziles czy tylko tak twierdzisz bo tam jest tyle kodu???
> Nawet pomijając osługę zdarzeń, semaforów,
> mutexów, czyli robiąc w przerwaniu tylko obsługę przełączania wątków,
> to sama ta obsługa przełączania zajmuje czas.
Rescheduling jest wykonywany nie non-stop tylko gdy :
1. przyjdzie systemowe przerwanie zegarowe np. 10ms
2. w przerwaniu budzisz watek o wyzszym priorytecie niz biezacy
Pamietaj, ze przelacznie watkow jest silnie zoptymalizowani i jest napisane
w asemblerze - trzeba na stos zrzucic kontekst czyli w ARMie 16 rejestrow
natomiast twoja petla glowna tlucze non-stop.
Wszelkie elemnty programowania wspolbieznego sa uzyte tylko wtedy gdy ich
uzyjesz (same z siebie nie obciazaja systemu) a wygoda jest duza. Juz widze
te wydajna synchronizacje zadan na flagach;)
> Trzeba do kontekstu zapisać stan bierzącego wątku i odtworzyć stan
> kolejnego wątku z tablicy.
Ze stosu i jest to raptem kilkadziesiat instrukcji procesora i jestes w
nowym watku, procedurki na flagach zuzywaja wiecej czasu procesora -
pamietaj ze sa wykonywne non-stop
> Tym bardziej że ja potrzebuję akurat w przerwaniu wywoływanym
> z częstotliwością kilkuset herzów liczyć trajektorię dla
> 4 osi silników wraz z zachowaniem trapezowego profilu prędkości.
A to wyjasnia wszystko - czasochlone obliczenia w procedurze obslugi
przerwania. Nie twierdze, ze jest to zle w kazdym przypadku tj. gdy masz
tylko jedno zadanie do wykonania to jest ok - dosc typowa sytuacja na
kontrolerze.
Ale w sytuacji bardziej generycznej tj. kilka zadan do obrobienia
rownoczesnie JEST TO NIEACEPTOWEALNE bezwzgledu czy jest OS czy nie -
responsywnosc takiego systemu jest mala.
Następne wpisy z tego wątku
- 10.11.09 20:42 SM
- 10.11.09 22:36 Jerry1111
- 11.11.09 08:38 SM
- 11.11.09 10:53 Zbych
- 11.11.09 11:29 SM
- 11.11.09 12:59 Zbych
- 11.11.09 17:35 SM
- 11.11.09 17:47 SM
- 11.11.09 17:45 Zbych
- 11.11.09 18:03 Zbych
- 11.11.09 18:26 SM
- 13.11.09 07:35 SM
- 19.11.09 07:41 SM
- 20.11.09 22:42 Adam Dybkowski
- 21.11.09 03:55 SM
Najnowsze wątki z tej grupy
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
Najnowsze wątki
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz
- 2025-02-16 Czy chodzenie jest ekologiczne?