SIECI01

background image

Sieci komputerowe

© Jerzy Skurczyński
Instytut Matematyki Uniwersytetu

Gdańskiego

Gdańsk, 2002 r.

background image

Literatura:

1. M.J. Bach, Budowa systemu operacyjnego UNIX, WNT, 1995.

2. Ch. Brenton, Projektowanie sieci wieloprotokołowych (t. I, II), Exit, 1995.

3. C. Hunt, TCP/IP. Administracja sieci, RM, 1998.

4. K. Nowicki, J. Woźniak, Sieci LAN, MAN i WAN – protokoły komunikacyjne,
Wydawnictwo

Fundacji Postępu Telekomunikacji, 1998.

5. A. Silberschatz, J.L. Peterson, P.B. Galvin, Podstawy systemów operacyjnych,
WNT, 1993.

6. R. Stevens, Programowanie zastosowań sieciowych w systemie Unix, WNT,
1996.

7. A.S. Tanenbaum, Rozproszone systemy operacyjne, PWN, 1997.

8. A. Wolisz, Podstawy lokalnych sieci komputerowych (t. I – sprzęt sieciowy),
WNT, 1990.

background image

1. CELE I KORZYŚCI Z ŁĄCZENIA KOMPUTERÓW W SIECI

1)

Współdzielenie zasobów

Zasobami są wszystkie części składowe (fizyczne i abstrakcyjne) systemu

komputerowego,

o których udostępnianiu użytkownikowi decyduje system operacyjny.

Do zasobów zaliczamy między innymi:

- moc obliczeniową procesora;

- pojemność pamięci operacyjnej;

- pojemność pamięci zewnętrznych;

- urządzenia zewnętrzne (drukarki, skanery, ...).

background image

Zwykle zasoby rozumiemy w sposób abstrakcyjny, dostrzegając je przez
pryzmat usług, jakie

oferuje system operacyjny, np. w jednoprocesorowym systemie
wielodostępnym poszczególnym

procesom przydzielane są procesory wirtualne, w przypadku zbyt małej
pamięci operacyjnej

większa jej ilość może być symulowana przez przestrzeń wymiany na dysku -
uzyskujemy wtedy

wirtualną przestrzeń adresową, na dużym dysku mogą być wydzielone
fragmenty widziane

jako dyski wirtualne (dyski logiczne) itp.

Zwykły użytkownik systemu komputerowego nie mając uprawnień
administratora i odpowiednich

programów narzędziowych na ogół nie ma możliwości dowiedzenia się, jakie
są parametry

fizyczne systemu z którym współpracuje - ma do czynienia wyłącznie z
maszyną wirtualną.

background image

W przeciętnym komputerze osobistym „czas życia” jego procesora (licząc od
chwili zakupu do

chwili zniszczenia) jest efektywnie wykorzystywany w mniej niż jednym
procencie !

Podobnie wygląda wykorzystanie innych zasobów - np. pliki z programami na
dysku mogłyby być

używane przez wiele osób bez potrzeby tworzenia oddzielnych kopii dla
każdego komputera.

Współdzielenie zasobów systemu komputerowego jest bardzo korzystne
ekonomicznie -

elementy systemu zazwyczaj „starzeją się moralnie” dużo szybciej, niż ulegają
zużyciu lub

uszkodzeniu, więc należy starać się je jak najintensywniej eksploatować.

background image

2) Komunikacja

Sieć komputerowa jest bardzo dogodnym medium komunikacyjnym. Umożliwia
łączność pomiędzy

poszczególnymi osobami (poczta elektroniczna, programy zastępujące telegraf i
telefon), w obrębie

grup osób („telekonferencje”), zastępuje tablice ogłoszeń (strony domowe -
widoczne w obrębie

całego Internetu). W przypadku dużej przepustowości łącz umożliwia nawet
transmisję dźwięku

i obrazu w czasie rzeczywistym (może więc zastępować radio i telewizję).

Dużą część danych przesyłanych w sieciach komputerowych stanowią dane,
które nie są

przeznaczone do bezpośredniego odbioru przez ludzi (zakodowane transakcje
bankowe,

cyfrowe sygnały zdalnego sterowania, rozdzielone dane do dużych obliczeń
naukowych

lub technicznych prowadzonych współbieżnie na wielu komputerach).

background image

W przypadku zastosowań komunikacyjnych istotną rzeczą jest standaryzacja
formy
przesyłanych

informacji. Różne systemy komputerowe mogą mieć różne procesory -
dysponujące rejestrami

o różnych długościach i różnych uszeregowaniach bajtów, odmienne systemy
operacyjne

wykorzystujące różnie zorganizowane systemy plików oraz różne urządzenia
zewnętrzne

(w szczególności karty sieciowe i modemy). Aby komputery mogły się ze sobą
skutecznie

porozumiewać, muszą dysponować:

a) wspólnym systemem adresowania;

b) wspólnym formatem przesyłanych ciągów bitów.

Efektem prac standaryzacyjnych są protokoły komunikacyjne specyfikujące
(na różnych

poziomach abstrakcji) sposoby przesyłania informacji pomiędzy komputerami.
Protokoły są

zaimplementowane w postaci oprogramowania, jak również w postaci norm
technicznych

określających np. rodzaje i maksymalne długości przewodów, charakterystyki
nadawanych

sygnałów elektrycznych itp.

W przypadku łączenia ze sobą sieci komputerowych o odmiennych protokołach
potrzebne jest

odpowiednie „oprogramowanie tłumaczące” z jednego protokołu na drugi i na
odwrót.

background image

3) Niezawodność

W niektórych dziedzinach zastosowań niezawodność działania jest szczególnie
istotna (służba

zdrowia, kierowanie ruchem lotniczym, obronność, ...). W tych dziedzinach
komputery powinny

w razie awarii być w stanie przejmować wzajemnie swoje funkcje (co najwyżej
przy niewielkim

pogorszeniu wydajności pracy).

W tego rodzaju zastosowaniach istotne jest:

a) zwielokrotnianie danych (plików, a czasem nawet zawartości pamięci
operacyjnej);

b) zwielokrotnianie łącz (tak, aby nie było łącz krytycznych);

c) istnienie pewnych rezerw mocy obliczeniowej procesorów;

d) zastępcze źródło (czasowego) zasilania.

background image

4) Uzyskiwanie łącznych mocy obliczeniowych nieosiągalnych dla
pojedynczych komputerów

Obecnie istnieją już komputery wieloprocesorowe (nawet zawierające tysiące
procesorów), ale

cały czas istnieje bariera technologiczna ograniczająca liczbę procesorów w
pojedynczym

komputerze. Nie ma natomiast praktycznie żadnych barier ograniczających
możliwości łączenia

komputerów w sieci (sieć działa nieco wolniej, niż pojedynczy komputer, ale przy
umiejętnym

rozdzieleniu podzadań na poszczególne współpracujące ze sobą komputery może
nie mieć to

dużego znaczenia).

Przykład: analiza sygnałów z Kosmosu przy użyciu wielu indywidualnych
komputerów

podłączonych do Internetu.

Wiele klasycznych zastosowań sieci komputerowych wiąże się z więcej niż jedną
spośród wyżej

omówionych korzyści (wielodostępne rozproszone bazy danych, programy do
zdalnej współpracy,

zdalna dydaktyka, sieciowe gry komputerowe ...).

background image

2. SIECIOWE SYSTEMY OPERACYJNE

Sieciowy system operacyjny to taki, który ma wbudowane mechanizmy
komunikacji z innymi

komputerami o takim samym systemie (lub posiadającymi kompatybilne
oprogramowanie).

Programy użytkowe oparte na funkcjach komunikacyjnych systemu operacyjnego
oferują

różnego rodzaju usługi - np. umożliwiają korzystanie z systemu plików na innym
komputerze,

mogą zlecać wykonanie na nim pojedynczych procedur lub nawiązywać z nim
trwałą łączność

(otwierać sesję).

Klasycznym przykładem systemu sieciowego jest Unix (udostępnia wszystkie w/w
usługi).

System oferujący jedynie zdalny dostęp do swojego systemu plików nazywany jest
serwerem

plików.

background image

Rozproszony system operacyjny to taki sieciowy system operacyjny, który
działając w pewnej

liczbie komputerów połączonych w sieć sprawia na ich użytkownikach
wrażenie, że pracują na

jednym (dużym, wielodostępnym) komputerze.

Własność uwalniania użytkowników systemu sieciowego od potrzeby
świadomości (szczegółów

technicznych) aspektów komunikacji wewnątrz sieci nazywamy
przezroczystością

(transparency)

.

Istnieją różne rodzaje przezroczystości, np.:

przezroczystość położenia zasobów
przezroczystość zwielokrotniania
przezroczystość awarii
przezroczystość działań równoległych

Ostatni rodzaj przezroczystości (dotyczący programistów, a nie zwykłych
użytkowników

komputerów) jest algorytmicznie najtrudniejszy do uzyskania.


Document Outline


Wyszukiwarka

Podobne podstrony:
sieci0405-w10-11
sieci0405-w4
sieci0405-w2
Sieci Komputerowe, Sieci03
SIECI09
SIECI08
sieci0405-w5
Sieci02
sieci0405-w13
Sieci07

więcej podobnych podstron