-
Data: 2023-05-18 15:04:27
Temat: Re: Dziwny problem z kodem w C (gcc mips/pic32)
Od: Marek <f...@f...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Thu, 18 May 2023 05:13:49 -0700 (PDT), Dawid Rutkowski
<d...@w...pl> wrote:
> t w tych 75k linii kodu? Bo można i tak,
> choć ciekawi, jak te wyjątki obsługujesz.
Wyjątki obsługuje funkcja przypisana do exception handler, ją już
wywołuje core procesorami. Jest kilka wyjątków:
static enum {
EXCEP_IRQ = 0, // interrupt
EXCEP_AdEL = 4, // address error exception (load or
ifetch)
EXCEP_AdES, // address error exception (store)
EXCEP_IBE, // bus error (ifetch)
EXCEP_DBE, // bus error (load/store)
EXCEP_Sys, // syscall
EXCEP_Bp, // breakpoint
EXCEP_RI, // reserved instruction
EXCEP_CpU, // coprocessor unusable
EXCEP_Overflow, // arithmetic overflow
EXCEP_Trap, // trap (possible divide by zero)
EXCEP_IS1 = 16, // implementation specfic 1
EXCEP_CEU, // CorExtend Unuseable
EXCEP_C2E // coprocessor 2
} _excep_code;
Oczywiście można po wyjątku wyjść z handlera i działać dalej ale w
moim przypadku handler zapamiętuje co i gdzie się wydarzyło i
zatrzymuje kod aż watchdog zresetuje procesor.
Kiedyś na MZ zrobiłem małego OSa z ochroną pamięci, obsługą pamięci
wirtualnej i TBLami, ładowaniem procesów itp... Skończyło się tylko
na tym, że jeden proces wypisywał AAA a drugi BBB na konsoli
(zbieżność z początkiem innego OSa przypadkowa).
Zresztą na MZ można uruchomić pełnego Linuxa więc....
--
Marek
Następne wpisy z tego wątku
- 18.05.23 15:06 heby
- 18.05.23 15:17 Grzegorz Niemirowski
- 18.05.23 15:18 heby
- 18.05.23 15:28 Grzegorz Niemirowski
- 18.05.23 15:37 heby
- 18.05.23 15:52 Grzegorz Niemirowski
- 18.05.23 15:55 Dawid Rutkowski
- 18.05.23 15:58 Dawid Rutkowski
- 18.05.23 16:00 heby
- 18.05.23 16:01 heby
- 18.05.23 16:08 Dawid Rutkowski
- 18.05.23 16:16 Dawid Rutkowski
- 18.05.23 16:24 heby
- 18.05.23 16:40 heby
- 18.05.23 16:54 Dawid Rutkowski
Najnowsze wątki z tej grupy
- SFP, 10G, simplex sc/apc
- [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- NxtPaper
- Programiści nie przestają zadziwiać świat
- Długi kabel zasilający a na końcu procek
- Dlaczego nam nie idzie
- Co czujnik to inna temperatura
- Jak naprawić pilota
- Dlaczego TMP wer. 2.0 nie może być sprzedawany jako patyk USB lub karta PCIe 1x?!?
- produkcja w UE
- Pamięć SRAM nie działa z Z80182
- plyta indukcyjna - naprawa
- założyłem kamerę
- syrenki alarmów
- Czym obecnie programuje się EPROM-y?
Najnowsze wątki
- 2025-09-16 China => Production Coordinator / Representant Product Dev <=
- 2025-09-16 Warszawa => Project Manager (AI and innovation) <=
- 2025-09-15 "Jeden telefon z Waszyngtonu i nasze samoloty nie wystartują" - czyli to co każdy koder wie
- 2025-09-15 UE chce uruchomić SI "Chat Control" na kompach wszystkich euroPejczyków
- 2025-09-15 Sejm odrzucił zakaz idelogii banderyzmu
- 2025-09-15 Nieprawidłowe parkowanie
- 2025-09-15 Poznań => Konsultant SAP HCM <=
- 2025-09-15 Warszawa => Specjalista rekrutacji IT <=
- 2025-09-15 Warszawa => International Freight Forwarder <=
- 2025-09-15 Lublin => ERP Implementation Consultant (AP Module) <=
- 2025-09-15 Warszawa => Engineering Manager (doświadczenie w branży lotniczej lu
- 2025-09-15 "Jestem z ..."
- 2025-09-15 jak sprawdzić czy zerwałem gwint
- 2025-09-14 UWAGA: MAM PODEJRZENIE, ŻE onet.pl DOKONUJE ATAKÓW!!!
- 2025-09-14 zarobki w 1995r