-
Data: 2011-02-03 14:47:19
Temat: Re: ksišżka o programowniu AVR w C
Od: Adam Dybkowski <a...@4...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2011-02-03 14:05 JDX napisał(a):
>> Use RTOS Luke. We Freertosie definiujesz wielkość stosu dla każdego
>> taska.
> No popatrz, to podobnie jak pod Linuksem. Lub pod Windows. Lub pod
> NutOS. Lub pod "moim własnym" OS-em. :-) Pytanie jest tylko skąd
> kompilator C ma wiedzieć jaką wielkość stosu dla jakiegoś wątku wymyślił
> sobie użytkownik i pod jakim adresem postanowił umieścić jego dno. :-)
Jeżeli używasz nieco większych procków niż AVR (powiedzmy chociażby
ARM7TDMI) to kompilatorowi gcc możesz powierzyć sprawdzanie
przekroczenia stosu na początku każdej funkcji. Oczywiście jest to
sprawdzane podczas wykonywania kodu i nieco go zwalnia a nie podczas
kompilacji. Jeden rejestr procesora wtedy jest zarezerwowany na adres
końca obszaru stosu i twój system operacyjny musi go odpowiednio
przełączać przy zmianie wątku (podobnie jak przełącza sam wskaźnik stosu
i inne rejestry). Poczytaj o opcji kompilatora -fstack-check.
Teoretycznie to samo można by zrobić w AVRach ale nie wiem czy
kompilator avr-gcc obsługuje tą opcję. Przy procesorach z ochroną
pamięci (np. ARM926EJ-S) jest jeszcze prościej.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Następne wpisy z tego wątku
- 03.02.11 15:58 Mario
- 21.02.11 21:51 badworm
- 21.02.11 23:38 Adam Dybkowski
Najnowsze wątki z tej grupy
- Klip testowy, jak sie to używa
- Jak sie smazy elektronike z odleglosci kilkuset metrów?
- William Shockley, co-inventor of the transistor
- Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- Zamek elektroniczny
- szablon do pasty DIY
- Głośnik potrzebny
- Silikonowy przewód ekranowany
- Wtyk bananowy ekranowany
- Co może być gorsze od pożaru elektryka?
- daltonizm
- Mały Linux
- Superkondensator. Czy to się uda?
- Stare filmy o technice
- Zasilanie własnych konstrukcji przez PoE
Najnowsze wątki
- 2025-11-09 Węże do tlenu medycznego
- 2025-11-09 Więcej miejsca na buspasach :-)
- 2025-11-08 kable zawieraja skrobie?
- 2025-11-08 Klip testowy, jak sie to używa
- 2025-11-08 Warszawa => Senior Cloud Engineer - AWS <=
- 2025-11-08 Pewnie za malo zarabial, to sie musial odstresowac
- 2025-11-08 Uszkodzenie na parkingu a odpowiedzialność sprawcy z OC
- 2025-11-08 Środa Wielkopolska => SAP FI/CO Konsultant wewnętrzny <=
- 2025-11-08 Gdańsk => Senior Software Developer C++ <=
- 2025-11-08 Uszkodzenie na parkingu a odpowiedzialność sprawcy z OC
- 2025-11-08 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-11-07 Warszawa => International Freight Forwarder <=
- 2025-11-07 Warszawa => C Programmer <=
- 2025-11-07 Warszawa => Starszy Programista C <=
- 2025-11-07 Warszawa => Senior Programmer C <=




Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei