Mam napisać 2 aplikacje:
-
Maszyna wirtualna mikrokontrolera - ma działać jako usługa lub moduł jądra w Linuksie RT i zajmować się tylko wykonywaniem programu
-
Program do odczytywania i zapisu pamięci, ładowania nowego programu do maszyny i pewnie innych czynności.
Jak te 2 programy powinny komunikować się? Najłatwiej współdzielić zmienne globalne. Czy da się odwoływać do zmiennych po nazwie (załóżmy, że oba programy tworzymy w Code::Blocks) czy trzeba znać ich położenie w pamięci i odwołać się po adresie?
Rozważmy jeszcze taką rzecz. Kończy się cykl programu. Chcielibyśmy jak najszybciej zobaczyć efekt działania programu (czyli aplikacja 2 nam wyświetli np. pamięć). Czy aplikacja 2 powinna odczytywać pamięć maszyny, a może zastosować jakieś obiekty synchronizacji?