Czym jest teoria śladu?

Teoria śledzenia dotyczy tego, w jaki sposób sprzęt i oprogramowanie komputerowe przetwarzają polecenia jednocześnie. Jest to czasami określane jako przetwarzanie współbieżne i może być porównane z ideą obliczeń równoległych. Główną ideą współbieżnego przetwarzania jest to, że kilka procesów korzysta z tego samego zasobu i są od siebie zależne. Kluczem do teorii śledzenia jest idea, że ​​istnieje nieskończona liczba możliwych wzorców i relacji, które mogą tworzyć procesy.

Większość sprzętu komputerowego i języków programowania jest zaprojektowana wokół teorii śledzenia. Przetwarzanie współbieżne sprawdza, co jest przetwarzane i jak przebiega przetwarzanie. Chociaż jednoczesne procesy korzystające z tych samych zasobów są zwykle od siebie niezależne, mogą również wchodzić w interakcje. Idea współzależnych procesów stanowi rdzeń obliczeń współbieżnych i grafów zależności.

Mimo że każdy proces obliczeniowy może zachodzić oddzielnie, wykresy zależności pokazują, które procesy mogą korzystać z tego samego sprzętu lub oprogramowania. Na tych wykresach i obliczeniach czynnik zależny może być oznaczony literą „C” lub „D”. Wykresy zależności pokazują, że jeśli dwa procesy używają określonego czynnika, to inne procesy, które zawierają identyczne identyfikatory, będą również zależne od tego samego czynnika.

Ponieważ teoria śladów próbuje wyjaśnić, w jaki sposób zachodzą różne procesy obliczeniowe i polecenia, wykresy zależności nie tylko identyfikują używane zasoby, ale także ścieżki i trasy, które obierają te procesy. Ważne jest, aby wziąć pod uwagę, że teoria mówi, że istnieje tylko pewna liczba zależności lub relacji, które mogą wystąpić z jednym czynnikiem. Chociaż liczba wzorców w jednoczesnych obliczeniach jest nieskończona, tylko wybrana liczba procesów utworzy tę samą zależność lub użyje tego samego zasobu.

Teoria śladów ilustruje, że równoległe procesy są matematycznie sobie równe. Jest to podobne do pomysłu wzięcia dwóch równoległych linii, narysowania przez nie przecinającej się linii i pomiaru kątów po przeciwnej stronie każdego przecinającego się punktu. Mimo że same równoległe linie się nie przecinają, są one do siebie identyczne i mają tę samą wartość. W przypadku współbieżnych obliczeń, przecinająca się linia byłaby równoważna zależności.

Język używany do reprezentowania różnych procesów korzystających z tych samych zależności jest binarny. Na przykład jeden proces może być reprezentowany przez litery „AC”, podczas gdy drugi proces jest reprezentowany przez litery „AB”. Wartość binarna „0” mogłaby zostać przypisana do procesu „AC”, a wartość binarna 1 do procesu oznaczonego „AB”.