Rozmieszczanie zadań czasu rzeczywistego w pamięci notatnikowej Jerzy R. Nawrocki, Wojciech Complak Instytut Informatyki Politechnika Poznańska SCR 2002, Ustroń, 16-19 września 2002
System czasu rzeczywistego Poprawność funkcjonalna Ograniczenia czasowe – linie krytyczne
Rola pamięci notatnikowej 5 MHz 8088 Magistrala systemowa PAO
Rola pamięci notatnikowej 2 GHz 5 MHz P4 Pamięć notatnikowa Magistrala systemowa PAO
Rola pamięci notatnikowej 0,04 GHz 5 MHz P4 Pamięć notatnikowa Magistrala systemowa PAO
Statyczna analiza programów Kategorie odwołań do pamięci AH = always hit AM = always missed NC = not classified mov ax, var1 cmp bx, var1 je etyk1 add ax, bx . . . mov ax, 0 . . .
Statyczna analiza programów Kategorie odwołań do pamięci AH = always hit AM = always missed NC = not classified mov ax, var1 NC cmp bx, var1 je etyk1 add ax, bx . . . mov ax, 0 . . .
Statyczna analiza programów Kategorie odwołań do pamięci AH = always hit AM = always missed NC = not classified mov ax, var1 NC cmp bx, var1 AH je etyk1 add ax, bx . . . mov ax, 0 . . .
Statyczna analiza programów PAO Pamięć notatnikowa mov ax, var1 cmp bx, var1 je etyk1 mov ax, 0 . . . add ax, bx NC AH NC Przerwanie Proces A Proces A
Proponowane podejście Pamięć notatnikowa P4 Max czas wyk. Rozmiary obiekt. Rozmiar pamięci Linie krytyczne A i C do cache’a Projektant (CASE) Proc A Proc B Proc C Proc D PAO
Proponowane podejście Pamięć notatnikowa P4 Proc A Proc C A i C do cache’a PAO Proc B Max czas wyk. Rozmiary obiekt. Rozmiar pamięci Linie krytyczne Proc D Projektant (CASE)
Zarządzanie pamięcią notatnikową Proste ściąganie zawartości Nanizanie linii pamięci notatnikowej Nanizanie bloków podstawowych
Architektury pamięci notatnikowej Architektura von Neumanna (pamięć zunifikowana) Architektura harwardzka (oddzielne pamięci kodu i danych)
Proste ściąganie zawartości bez wsparcia sprzętowego mov ebx,offset data_to_preload mov ecx,size_of_data_to_preload shr ecx,2 rep lodsd
Proste ściąganie zawartości przy wsparciu sprzętowym (Power PC) dcbf rA,rB data cache block flush dcbst rA,rB data cache block store dcbt rA,rB data cache block touch dcbtst rA,rB data cache block touch for store dcbz rA,rB data cache block set to zero
Nanizanie linii pamięci notatnikowej Instrukcja skoku Kod aplikacji Kod aplikacji
Nanizanie linii pamięci notatnikowej Punkt wejściowy kodu nanizującego Punkt wejściowy kodu aplikacji
Podsumowanie zaproponowano metodę pozwalającą na w pełni deterministyczne zarządzania zawartością pamięci notatnikowej
Kierunki dalszych badań dynamiczne ładowanie i wyładowywanie zadań timing 60h Mgnmt. 30h dynamic 120h system operacyjny pozwalający na praktyczne wykorzystanie zaprezentowanego podejścia
Rozmieszczanie zadań czasu rzeczywistego w pamięci notatnikowej Jerzy R. Nawrocki, Wojciech Complak Instytut Informatyki Politechnika Poznańska SCR 2002, Ustroń, 16-19 września 2002