System rozproszony: Różnice pomiędzy wersjami
[wersja przejrzana] | [wersja przejrzana] |
m HotCat: Usunięto kategorię "Informatyka"; Szybkie dodanie kategorii "Systemy informatyczne" |
m poprawa linków |
||
Linia 30: | Linia 30: | ||
* [[gniazdo|gniazda]] (ang. ''sockets'') |
* [[gniazdo|gniazda]] (ang. ''sockets'') |
||
* [[Remote Procedure Call|RPC]] (''Remote Procedure Call'') |
* [[Remote Procedure Call|RPC]] (''Remote Procedure Call'') |
||
* [[DCE]] (''Distributed Computing Environment'') |
* [[Distributed Computing Environment|DCE]] (''Distributed Computing Environment'') |
||
* [[CORBA]] (''Common Object Request Broker Architecture'') |
* [[CORBA]] (''Common Object Request Broker Architecture'') |
||
* [[DCOM]] (''Distributed Component Object Model'') |
* [[DCOM]] (''Distributed Component Object Model'') |
Wersja z 17:27, 13 wrz 2009
Zasugerowano, aby zintegrować ten artykuł z artykułem Obliczenia rozproszone (dyskusja). Nie opisano powodu propozycji integracji. |
Zasugerowano, aby zintegrować ten artykuł z artykułem przetwarzanie rozproszone (dyskusja). Nie opisano powodu propozycji integracji. |
System rozproszony (ang. distributed system) to zbiór niezależnych urządzeń technicznych połączonych w jedną, spójną logicznie całość. Zwykle łączonymi urządzeniami są komputery, rzadziej – systemy automatyki. Połączenie najczęściej realizowane jest przez sieć komputerową, jednak można wykorzystać również inne – prostsze – magistrale komunikacyjne. Urządzenia są wyposażone w oprogramowanie umożliwiające współdzielenie zasobów systemowych.
Jedną z podstawowych cech systemu rozproszonego jest jego transparentność (inaczej przezroczystość, ang. transparency), która stwarza na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.
Definicja systemu rozproszonego ewoluowała wraz z rozwojem komputerów i sieci komputerowych.
Historia
W późnych latach 70. i na początku lat 80. systemy rozproszone składały się ze zdalnych terminali lub minikomputerów, które przeprowadzały niektóre operacje i co pewien czas komunikowały się w trybie wsadowym (ang. batch mode) z komputerem centralnym. Możliwe były połączenia terminali z komputerem centralnym typu gwiazda (wiele terminali połączonych przez modemy z jednym centralnym komputerem), pierścień (terminale, minikomputer i komputer centralny tworzą pierścień) lub hierarchicznie (komputer centralny połączony jest z minikomputerami, do których połączone są terminale). W drugiej połowie lat 80. system rozproszony zaczął być rozumiany jako osobne, geograficznie rozproszone aplikacje współdziałające ze sobą. W tym czasie pod pojęciem systemu rozproszonego rozumiano także pojedynczą aplikację składającą się ze względnie samodzielnych i niezależnych programów współdziałających ze sobą. Dominowały wówczas następujące konfiguracje połączeń:
- komputery osobiste (PC) podłączone do komputera centralnego,
- hierarchiczne (komputery podłączone do komputerów pośredniczących, które były połączone z komputerem centralnym, przy czym komputery znajduące się bliżej komputera centralnego miały większą moc obliczeniową)
- komputery różnej mocy obliczeniowej połączone siecią komputerową (połączenia typu równy, ang. peer),
- hybrydowe (hierarchiczne z konfiguracją typu peer).
Współczesne systemy rozproszone składają się z różnych komputerów połączonych siecią komputerową.
Cechy
System rozproszony posiada następujące cechy:
- współdzielenie zasobów (ang. resource sharing) – wielu użytkowników systemu może korzystać z danego zasobu (np. drukarek, plików, usług, itp.)
- otwartość (ang. openness) – podatność na rozszerzenia, możliwość rozbudowy systemu zarówno pod względem sprzętowym, jak i oprogramowania
- współbieżność (ang. concurrency) – zdolność do przetwarzania wielu zadań jednocześnie
- skalowalność (ang. scalability) – własność systemu polegająca na zachowaniu podobnej wydajności systemu przy zwiększeniu skali systemu (np. liczby procesów, komputerów, itp.)
- odporność na błędy (ang. fault tolerance) – własność systemu polegająca na zdolności działania systemu mimo pojawiania się błędów (np. poprzez utrzymywanie nadmiarowego sprzętu)
- transparentność, przeźroczystość (ang. transparency) – własność systemu pozwalająca na postrzeganie systemu przez użytkownika jako całości, a nie poszczególnych składowych.
Obecnie w systemach rozproszonych istotną rolę odgrywa warstwa pośrednicząca (ang. middleware), która pośredniczy w komunikacji między komponentami systemów rozproszonych. Przykładami warstwy pośredniczącej są:
- gniazda (ang. sockets)
- RPC (Remote Procedure Call)
- DCE (Distributed Computing Environment)
- CORBA (Common Object Request Broker Architecture)
- DCOM (Distributed Component Object Model)
- RMI (Remote Method Invocation)
Zobacz też
- sieć Petriego
- system operacyjny
- system czasu rzeczywistego
- system operacyjny czasu rzeczywistego
- Unix
Linki zewnętrzne
- Systemy rozproszone (materiały dydaktyczne MIMUW na studia informatyczne II stopnia)