Plik przetwarzanie wieloprocesowe, w zastosowaniach komputerowych jest to forma działania komputera, w której fizycznie występuje więcej niż jeden procesor. Chodzi o to, aby mieć dyspozycję do wykonywania różnych części programu w tym samym czasie.
Te liczne jednostki centralne (CPU) są w ścisłej komunikacji, współużytkując magistralę, pamięć i inne urządzenia peryferyjne komputera. Ponieważ dostępnych jest wiele procesorów, można uruchomić wiele procesów w tym samym czasie.
Wieloprocesorowość odnosi się bardziej do liczby jednostek CPU niż liczby procesów uruchomionych jednocześnie. Jeśli sprzęt zapewnia więcej niż jeden procesor, oznacza to przetwarzanie wieloprocesowe. Jest to zdolność systemu do wykorzystania mocy obliczeniowej wielu procesorów.
System wieloprocesorowy jest bardzo przydatny, gdy chcesz mieć wystarczająco dużą prędkość, aby przetwarzać duży zestaw danych. Systemy te są najczęściej używane w aplikacjach takich jak prognozowanie pogody, sterowanie satelitarne itp..
Ten typ systemu wieloprocesorowego pojawił się po raz pierwszy w dużych komputerach lub komputerach typu mainframe, zanim obniżył jego koszt, aby zapewnić włączenie go do komputerów osobistych..
Indeks artykułów
Przy wsparciu systemu wieloprocesorowego kilka procesów może być wykonywanych równolegle.
Załóżmy, że procesy Pr1, Pr2, Pr3 i Pr4 czekają na wykonanie. W systemie z jednym procesorem jeden proces będzie uruchamiany jako pierwszy, potem następny, drugi i tak dalej.
Jednak w przypadku przetwarzania wieloprocesowego każdy proces może być przypisany do konkretnego procesora do przetwarzania..
Jeśli jest to procesor dwurdzeniowy, z dwoma procesorami, dwa procesy mogą być wykonywane jednocześnie, a zatem będą dwa razy szybsze. Podobnie czterordzeniowy procesor będzie czterokrotnie szybszy niż pojedynczy procesor..
Ponieważ każdy procesor ma przypisaną określoną funkcję, będzie mógł wykonać swoją pracę, dostarczyć zestaw instrukcji do następnego procesora i rozpocząć pracę nad nowym zestawem instrukcji.
Na przykład większy procesor może wykorzystywać procesory „podrzędne” do wykonywania różnych zadań związanych z czyszczeniem, takich jak zarządzanie pamięcią..
Podobnie, różne procesory mogą być używane do zarządzania komunikacją danych, przechowywaniem pamięci lub funkcjami arytmetycznymi..
System jest wieloprocesorowy, mając fizycznie więcej niż jeden procesor, i może być wieloprogramowy, gdy ma kilka procesów działających jednocześnie..
Dlatego różnica między przetwarzaniem wieloprocesowym a wieloprocesorowym polega na tym, że przetwarzanie wieloprocesowe wykonuje wiele procesów w tym samym czasie na wielu procesorach, podczas gdy przetwarzanie wieloprocesowe utrzymuje kilka programów w pamięci głównej i wykonuje je jednocześnie przez jeden procesor.
Oznacza to, że przetwarzanie wieloprocesowe odbywa się poprzez przetwarzanie równoległe, podczas gdy wieloprogramowanie ma miejsce, gdy pojedynczy procesor przełącza się z jednego procesu na inny..
Aby efektywnie korzystać z systemu wieloprocesowego, system komputerowy musi mieć:
Musisz mieć zestaw procesorów, które mają możliwość używania ich w systemie wieloprocesorowym.
Płyta główna, która może zawierać i obsługiwać wiele procesorów. Oznacza to dodatkowe gniazda lub gniazda na dodatkowe chipy.
Całym zadaniem przetwarzania wieloprocesowego zarządza system operacyjny, który przydziela różne zadania do wykonania przez różne procesory w systemie..
Mówi się, że aplikacje zaprojektowane do użytku w przetwarzaniu wieloprocesowym są zszywane, co oznacza, że są one podzielone na mniejsze procedury, które mogą być uruchamiane niezależnie..
Pozwala to systemowi operacyjnemu na jednoczesne działanie tych wątków na więcej niż jednym procesorze, co skutkuje wieloprocesorowością i lepszą wydajnością..
W tego typu przetwarzaniu wieloprocesorowym wszystkie procesory mają wzajemną relację na tym samym poziomie równości, to znaczy nie ma między nimi relacji typu master-slave..
Wszystkie procesory komunikują się ze sobą, ponieważ każdy zawiera kopię tego samego systemu operacyjnego.
Przykładem symetrycznego systemu wieloprocesorowego jest wersja systemu Unix Encore dla komputera Multimax..
W tego typu przetwarzaniu wieloprocesowym istnieje procesor główny, który przekazuje instrukcje wszystkim pozostałym procesorom, przypisując każdemu z nich zdefiniowane wcześniej zadanie. Jest to najbardziej ekonomiczna opcja, ponieważ zachowuje relację master-slave między procesorami..
Dopóki nie wprowadzono wieloprocesorów symetrycznych, istniał tylko ten typ przetwarzania wieloprocesowego.
Dzięki przetwarzaniu wieloprocesowemu wykonasz więcej zadań w znacznie krótszym czasie.
Jeśli kilka procesorów współpracuje ze sobą, wydajność systemu wzrasta poprzez zwiększenie liczby procesów wykonywanych w jednostce czasu..
W przypadku awarii procesora przetwarzanie wieloprocesowe okazuje się bardziej niezawodne, ponieważ w takiej sytuacji system zwolni, ale nie ulegnie awarii. Ta zdolność do kontynuowania pracy pomimo niepowodzenia jest znana jako pełna gracji degradacja..
Na przykład, jeśli którykolwiek procesor z pięciu ulegnie awarii, zadanie nie zakończy się niepowodzeniem, ale pozostałe cztery procesory będą dzielić pracę z uszkodzonym procesorem. Dlatego system będzie działał o 20% wolniej, zamiast całkowicie się zawiesić..
Systemy te mogą generować długoterminowe oszczędności w porównaniu z systemami jednoprocesorowymi, ponieważ procesory mogą współdzielić zasilacze, urządzenia peryferyjne i inne urządzenia..
Jeśli istnieje wiele procesów, które współużytkują dane, lepiej jest zaprogramować je w systemach wieloprocesowych do udostępniania danych, zamiast mieć różne systemy komputerowe z wieloma kopiami tych danych.
Chociaż systemy wieloprocesorowe są na dłuższą metę tańsze niż korzystanie z wielu systemów komputerowych, nadal są dość drogie.
Dużo taniej jest kupić prosty system z jednym procesorem niż system wieloprocesorowy.
W systemach wieloprocesorowych wymagany jest bardziej złożony system operacyjny.
Wynika to z faktu, że mając wiele procesorów, które współużytkują pamięć, urządzenia itp. dystrybucja zasobów do procesów jest bardziej skomplikowana, niż gdyby był tylko jeden procesor.
Wszystkie procesory w systemie wieloprocesorowym współużytkują pamięć główną. Dlatego wymagana jest znacznie większa pula pamięci w porównaniu do systemów jednoprocesorowych.
Jeszcze bez komentarzy