opracowanie slajdow, Politechnika Wrocławska, PWR - W8 - Informatyka, Sem1, OSK, OSK, OSK C2 KOLO, OSK C2 KOLO


Informatyka to systematyczne badanie procesów algorytmicznych, które charakteryzują i przetwarzają informację, teoria, analiza, projektowanie, badanie efektywności, implementacja i zastosowania procesów algorytmicznych.

Algorytmika - wiedza o sposobach rozwiązywania problemów.

IT - technologia wymagana do przetwarzania informacji, w szczególności użycie komputerów i oprogramowania do przekształcania, przechowania, przekazywania oraz odzyskiwania informacji

System - zbiór elementów funkcjonalnych, które są ze sobą powiązane by realizować konkretne cele.

Architektura - odnosi się do atrybutów systemu widzialnych dla programisty.

Organizacja - jak architektura jest wykorzystwana

Rodzina komputerów - ta sama architektura - rózna organizacja

Struktura - sposób powiązania składników komputera.

Funkcje - określają działanie poszczególnych składników jako części struktury:

- przetwarzanie

- przechowanie

- przenoszenie

- sterowanie ww. funkcjami

Obraz funkcjonalny komputera:

Urządzenie sterujące zarządza danymi - ze źródła - urządzeń przenoszących do pozostałych - przechowanie i przetwarzanie

Struktura komputera -

- CPU - jednostka centralna - sterowanie działaniem komputera i realizacja jego funkcji przetwarzania

- Pamięć główna - przechowywanie danych

- I/O - przenoszenie danych między komputerem a środowiskiem zewnętrznym

Połączenia systemów - łączy ww. rzeczy razem

Struktura CPU-

- Jednostka sterująca - steruje działaniem procesora (czyli też komputera)

- Jednostka algorytmiczno-logiczna (AUL) - realizacja funkcji przetwarzania danych przez PC

- Rejestry - wewnętrzne przechowywanie danych w procesorze

Połączenia procesora - łączy ww. rzeczy razem

Jednostka sterująca -

- Układy logiczne sterowania

- Rejestry i dekodery jednostki sterującej

- Pamięć sterująca

Zapis informacji - przedstawienie informacji za pomocą ciągu znaków

Alfabet - zbiór symboli służących do zapisu informacji

Słowo - skończony ciąg symboli danego alfabetu

Kodowanie - przyporządkowanie różnym informacjom słów kodowych

Systemy liczbowe - zestaw reguł umożliwiających przedstawianie liczb za pomocą pewnych symboli i wykonywania działań na nich (mogą być pozycyjne i niepozycyjne)

Magistrale - zespół linii transmisyjnych, które współdzielą podłączone do komputera moduły. Pojedyncza linia przekazuje sygnał w postaci binarnej. Sposób wykorzystania magistrali określa specjalny protokół opisujący dozwolone sekwencje sygnałów logicznych na poszczególnych liniach magistrali i grupach takich linii. Linie magistrali mogą być jedno i dwukierunkowe.

Grupy linii (tzw. szyny)

- szyna adresowa

- szyna danych

- szyna sterowania:

- Zapis/odczyt z/do pamięci

- Zapis/odczyt z/do portu I/O

- Potwierdzenie przyjścia danych (ACK

- Zapotrzebowanie na dostęp do magistrali (Bus request)

- Zwolnienie magistrali (Bus Grant)

- Zgłoszenie przerwania IRQ

- Linia synchronizacyjna - clock

- Sygnał wymuszający ustawienie początkowe (reset)

Arbitraż na magistrali jest konieczny gdy więcej modułów chce przejąć nad nią kontrolę w danym momencie.

Rodzaje arbitrażu:

-centralny

- pojedynczy sterownik magistrali (arbiter)

- urządzenie jest oddzielnym modułem lub częścią procesora

-rozproszony

- nie ma centralnego sterownika

- każdy moduł zawiera układy sterujące dostępem

- moduły współpracują ze sobą w celu ustalenia jednego urządzenia nadrzędnego

- tworzy się układ master-slave

Koordynacja czasowa - odnosi się do sposobu w którym koordynowane są zdarzenia na magistrali. Magistrala zawiera linię zegarową transmitującą sekwencję 0 i 1.

Rodzaje koordynacji

- synchroniczna

- magistrala zawiera linię zegarową

- pojedyncza transmisja 1-0 to cykl zegara

- wszystkie urządzenia mogą czytać linię zegarową

- inne sygnały na magistrali mogą się zmieniać w momencie narastania sygnału

zegarowego

- asynchroniczna

Rodzaje transferu danych na magistralach:

- operacja zapisu (multipleksowa i niemultipleksowa)

- operacja odczytu (multipleksowa i niemultipleksowa)

- operacja odczyt - modyfikacja - zapis

- operacja odczyt po zapisie

- operacja blokowego przesyłania danych

Przykłady magistral:

- ISA, EISA (magistrale rozszerzeń PC; wycofane)

- VLB (Local Bus - dla kart graficznych i kontrolerów; wycofane)

- AGP (Accelerated Graphic Bus; używana współcześnie)

- PCI ( tj. ISA tylko nowsza, stosowana obecnie)

- USB (Universal Serial Bus - ma zastąpić porty szeregowe)

- FireWire (do połączenia kamer wideo, aparatów)

- SCSI (Small komputer system interface)

// Architektura von Neumanna - rodzaj architektury komputera, przedstawionej po raz pierwszy w 1945 roku przez Johna von Neumanna stworzonej wspólnie z Johnem W. Mauchly'ym i Johnem Presper Eckertem.

Polega na ścisłym podziale komputera na trzy podstawowe części:

System komputerowy zbudowany w oparciu o architekturę von Neumanna powinien:

Podane warunki pozwalają przełączać system komputerowy z wykonania jednego zadania (programu) na inne bez fizycznej ingerencji w strukturę systemu, a tym samym gwarantują jego uniwersalność.

System komputerowy von Neumanna nie posiada oddzielnych pamięci do przechowywania danych i instrukcji. Instrukcje jak i dane są zakodowane w postaci liczb. Bez analizy programu trudno jest określić czy dany obszar pamięci zawiera dane czy instrukcje. Wykonywany program może się sam modyfikować traktując obszar instrukcji jako dane, a po przetworzeniu tych instrukcji - danych - zacząć je wykonywać.

Model komputera wykorzystującego architekturę von Neumanna jest często nazywany przykładową maszyną cyfrową (PMC).

//

Ogólny obraz działania komputera:

Architektura von Neumanna

- dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

- zawartość tej pamięci może być adresowana przez wskazane miejsca bez względu na rodzaj zawartych tam danych

- wykonywanie rozkazów - szeregowe - jeden za drugim z pewnymi wyjątkami

Rozwiązanie programowe - urządzenia o ogólnym przeznaczeniu mogą realizować różne zadania stosowne do otrzymanych sygnałów. Trzeba doprowadzić nową sekwencję kodów sygnałów sterujących dla nowego zadania.

Sekwencja kodów/rozkazów - oprogramowanie

Działanie jednostki sterującej - każda operacja posiada unikalny kod. Odpowiednie elementy akceptują kod i wysyłają odpowiednie sygnały sterujące

Cykl rozkazu - przetwarzanie wymagane dla pojedynczego rozkazu. Najprostszy ma 2 kroki pobieranie (fetch) i wykonanie (execute)

Cykl pobrania

- licznik programu (PC) - przechowuje adres następnej instrukcji do wykonania

- procesor pobiera instrukcje z miejsca wskazanego przez PC

- licznik PC jest inkrementowany

- rozkaz ładowany jest do rejestru zwanego rejestrem rozkazu IR

- procesor interpretuje i wykonuje odp. działanie.

Cykl wykonywania (kilka kategorii)

- Pamięć - procesor - przenoszenie danych

- Procesor - I/O - przenoszenie danych

- Przetwarzanie danych - procesor wykonuje działania logiczne/arytmetyczne na danych

- Sterowanie - zmiana sekwencji operacji. Rozkaz może zawierać kombinację ww. zadań

Przerwania - mechanizm pozwalający innym modułom przerwanie normalnej sekwencji przetwarzania np.

- przerwanie programowe (np. nadmiar, dzielenie przez 0)

- przerwanie zegarowe (generowane przez wew. zegar procesora, wykorzystywane w trybie pracy wielozadaniowej z wywłaszczaniem (pre-emptive multitasking)

- przerwanie I/O (od sterownika I/O)

- przerwanie związane z błędem sprzętowym (np. błąd parzystości pamięci)

Cykl przerwania:

- procesor sprawdza czy nie wystąpiło przerwanie (występowanie przerwania sygnalizowane obecnością sygnału przerwania)

- jeżeli przerwania nie są realizowane, procesor przechodzi do cyklu pobierania i pobiera następną instrukcję

- jeśli następuje przerwanie to procesor:

- zawiesza wykonywanie programu

- zachowuje kontekst programu

- ustawia licznik programu na początkowy adres programu obsługi przerwań

- wykonuje program do obsługi przerwań

- odtwarza kontekst i kontynuuje przerwany program

Przerwania wielokrotne:

-Przerwania zablokowane:

-procesor będzie ignorował dalsze przerwania w trakcie przetwarzania bieżącego przerwania

-przerwania zostają zawieszone i zostają one wykryte przez procesor jeśli uzyska on pozwolenie na przerwanie po obsłudze przerwania bieżącego

-przerwania obsługiwane są w kolejności w jakim się pojawiły

-Definicja priorytetów:

-przerwanie o niższym priorytecie może być przerwane przez przerwanie o priorytecie wyższym

-po obsłudze przerwania o wyższym priorytecie procesor wraca do poprzedniego przerwania.

Problemy wejścia-wyjścia:

- Różnorodność urządzeń peryferyjnych (różne ilości danych, format, szybkość)

-Wszystkie z nich są wolniejsze od CPU i RAM

-Istnieje zatem potrzeba organizacja modułów I/O

Moduł I/O:

- interfejs do CPU i pamięci głównej

- interfejs do jednego i więcej urządzeń peryferyjnych

Urządzenia I/O

- przeznaczone do odczytu przez człowieka (np. drukarka, klawiatura)

- przez maszynę (dyski, taśmy magnetyczne, urządzenia wykonawcze na procesie)

- komunikacyjne (modem, karta sieciowa)

Funkcje modułów I/O:

- Sterowanie i taktowanie

- komunikacja z procesorem

- komunikacja z urządzeniem

- buforowanie danych

- wykrywanie błędów

Kroki w działaniu I/O:

- CPU sprawdza status urządzenia

- moduł I/O zwraca status

- jeśli „gotowość” to CPU żąda transmisji danych

- moduł I/O pobiera dane od urządzenia zewnętrznego

- moduł I/O transferuje dane do CPU

Decyzje modułu I/O

- Ukrycie przed CPU własności urządzeń

- Wsparcie dla pojedynczego lub wielu urządzeń

- Realizacja funkcji sterowania urządzeniem lub pozostawienie ich CPU

- Zachodzą tu także decyzje systemu operacyjnego (np. Unix)

Techniki obsługi I/O:

-CPU posiada bezpośrednią kontrolę nad I/O poprzez kontrolę statusu, wysyłanie rozkazu read/write, udział w transferze danych

-CPU czeka na moduł I/O, żeby zakończyć operację I/O

- proces czasochłonny i angażujący CPU bez potrzeby

-CPU żąda operacji I/O

- operację przeprowadza moduł I/O

- Moduł I/O ustawia bity statusowe

- CPU sprawdza periodycznie stan bitów

- Moduł I/O nie komunikuje się bezpośrednio z CPU i nie przerywa jego pracy

- CPU może czekać lub wrócić później

Adresowanie urządzeń I/O:

- W trybie obsługi programowej transmisja danych z I/O jest z punktu widzenia procesora podobna do współpracy z pamięcią

-Każde urządzenie posiada swój unikatowy identyfikator

-Rozkazy CPU zawierają identyfikator (adres)

Odwzorowanie wejścia-wyjścia:

  1. odwzorowane w pamięci

- Jednolite adresowanie układów pamięci i układów I/O - urządzenie I/O i pamięć dzielą tę samą przestrzeń adresową.

- możliwość wykorzystania tych samych rozkazów co w operacjach z pamięcią; brak dodatkowego rozkazu we-wy

- pozornie „nieograniczona” liczba rejestrów we-wy

-mniej sygnałów sterujących z procesora

- zarówno pamięć jak i I/O są sterowane sygnałami: memory read/write

- komórki pamięci i rejestry układów we-wy muszą mieć inne adresy

- należy wyróżnić sygnał wskazujący czy adres odnosi się do pamięci czy do we-wy

  1. Izolowane I/O

-osobne przestrzenie adresowe

- potrzebne są linie selekcji I/O i pamięci - sygnały: memory read/write oraz input read output write

- specjalne rozkazy (szybsze i krótsze) dla operacji I/O (ograniczona liczba); dodatkowy kod rozkazu; zbiór rozkazów I/O jest ograniczony

-liczba bram I/O jest ograniczona

- potencjalne prostsze układy I/O

- I/O może używać innych szyn niż pamięć

-przezwyciężenie problemu oczekiwania przez CPU na gotowość urządzenia

- nie ma potrzeby cyklicznego sprawdzania stanu urządzenia

- moduł I/O zgłasza przerwanie kiedy jest gotowy

- obsługa urządzenia wejściowego: CPU wysyła rozkaz Read i przechodzi do innej pracy

-moduł I/O otrzymuje dane z urządzenia peryferyjnego i kiedy dane są w rejestrze moduły, moduł przerywa CPU (CPU sprawdza stan systemu przerwań pod koniec każdego cyklu rozkazowego, o ile przerwania nie są wyłączone)

-moduł czeka, aż CPU przyjmie przerwanie i zażąda danych

-moduł I/O transferuje dane

Identyfikacja urządzenia:

- wiele linii przerwań

-PC,

- ograniczona liczba urządzeń

- każda linia może mieć swój priorytet,

- kosztowne; szybkie

- Odpytywanie za pomocą oprogramowania

-po wykryciu przerwania CPU przepytuje każdy moduł I/O w celu sprawdzenia, który moduł spowodował przerwanie,

-wolne,

- priorytet wynika z kolejności odpytywania

- Odpytywanie za pomocą sprzętu (tzw. łańcuchowe - disy chaining lub wektorowe - hardware rolling)

- potwierdzenie przyjęcia przerwania jest przesyłane łańcuchem,

- moduł najbliższy procesowi odpowiada wektorem,

- CPU używa wektor aby zidentyfikować program obsługi

- kolejność w łańcuchu wyznacza priorytet (geometryczny, elektryczny)

- Arbitraż za pomocą magistrali (bus mastering)

-moduł musi najpierw przejąć sterowanie magistralą zanim pobudzi linię przerywania

-Tylko jeden moduł w danej chwili może przejąć magistralę, więc tylko jeden wyśle przerwanie ze swoim wektorem na liniach danych

- np. PCI i SCSCI

Wady programowego i sterowanego przerwaniami I/O:

- szybkość transferu jest ograniczona szybkością, z jaką procesor może testować i obsługiwać urządzenie

- procesor jest zajęty zarządzaniem przesyłaniem z wejścia na wyjście

Organizacja DMA

-dodatkowy moduł (H/W) na magistrali - DMAC (DMA controller)

-sterownik DMA przejmuje od procesora sterowanie systemem w zakresie I/O

Działanie DMA:

-CPU wydaje rozkaz modułowi DMAC:

-czy wymagany jest odczyt czy zapis

- adres niezbędnego urządzenia I/O

- adres początkowej komórki pamięci przewidzianej do odczytania lub zapisania

- liczbę słów, które mają być odczytane lub zapisane

-CPU następnie kontynuuje inne prace

-DMAC troszczy się o operacje I/O

-DMAC wysyła przerwanie kiedy zakończy zleconą operację I/O

Zjawisko kradzieży cyklu:

-DMAC wstrzymuje na okres wymiany danych działanie CPU - DMAC „kradnie” cykl maszynowy

- Transmisja jednego słowa danych

- nie jest to przerwanie! (CPU nie zmienia kontekstu)
-Spowolnienie działania CPU, ale nie tak znaczne jak w przypadku obsługi transferu przez CPU

Cele i funkcje systemu operacyjnego

- system jest wygodniejszy w użytku

- umożliwia sprawne eksploatowanie zasobów komputerowych

Usługi systemu operacyjnego

-tworzenie programów

-wykonywanie programów

-dostęp do urządzeń I/O

-dostęp do plików

-dostęp do systemu

-wykrywanie błędów i reakcja na nie

-rozliczanie (statystyki, logi zdarzeń, logi wydajności, rozliczenie użytkowników)

Rodzaje systemów operacyjnych:

-konwersacyjne

-wsadowe

-jednoprogramowe

-wieloprogramowe

-wyspecjalizowane np. czasu rzeczywistego

Monitor - program komputerowy służący do nadzoru nad stanem, lub czynnościami wykonywanymi przez komputer. Może to oznaczać trzy różne rzeczy podlegające nadzorowi:

1. Program monitujący (ang. monitor program) - nieduży program umieszczony w pamięci ROM (dziś to z reguły BIOS), mający za zadanie uruchomienie komputera i nadzorowanie pracy urządzeń wejścia/wyjścia.

2. Program diagnostyczny, umożliwiający użytkownikowi sprawowanie nadzoru i sprawdzanie stanu sprzętu lub oprogramowania funkcjonującego na danej maszynie.

3. Monitor kodu maszynowego (ang. machine code monitor lub machine language monitor) - oprogramowanie pozwalające użytkownikowi oglądanie i zmianę zawartości pamięci operacyjnej komputera a także jej zapis/odczyt na dysk.

Proste systemy wsadowe

-rezydentny program Monitora

-użytkownicy dostarczali swoje zadania do operatora systemu

-operator tworzył wsad prac

-monitor sterował sekwencją zdarzeń by przetworzyć wsad

-po zakończeniu pracy sterowanie wracało do Monitora, który czytał następną pracę

-monitor planował realizację prac

Język Sterowania Pracami (JCL)

-instrukcje dla Monitora

-zwyczajowo oznaczone znakiem $

Np.:

-$ JOB (oznaczenie początku pracy)

-$FTN (oznaczenie systemu FORTRAN)

-<zadania języka fortran>

-$LOAD (laduj program)

-$RUN (uruchom program)

-(tutaj dane czytane z tego samego strumienia wejściowego co źródło programu)

-$END

Wymagane własności sprzętowe:

-Ochrona pamięci (w celu ochrony Monitora)

-Czasomierz (dla zapobiegania monopolizacji systemu przez pojedynczą pracę

-rozkazy uprzywilejowane(wykonywane tylko przez program zarządzający(np. I/O)

-Przerwania (pozwalają na zaniechanie i wznowienie sterowania)

Wieloprogramowe systemy wsadowe:

-urządzenia I/O są bardzo wolne

-Idea: kiedy jeden program czeka na I/O to inny może używać CPU

Systemy z podziałem czasu (time sharing)

-umożliwiają użytkownikom na bezpośrednie porozumiewanie się z komputerem

- wieloprogramowość umożliwia podział czasu procesora między wielu użytkowników

Przetwarzanie wsadowe vs. Podział czasu

  1. wsadowe wieloprogramowe:

cel - maksymalizacja wykorzystania procesora

źródło rozkazów dla OS - rozkazy sterujące wykonywaniem zadania dostarczane razem z zadaniem

  1. podział czasu

Cel- minimalizacja czasu odpowiedzi

Rozkazy wprowadzane z terminala

Szeregowanie (Scheduling)

-Szeregowanie kluczem do wieloprogramowania

-Szeregowanie długookresowe -wysokiego poziomu

-określanie które programy są dopuszczone do przetwarzania przez system

-w ten sposób kontrolujemy stopień wieloprogramowości

-po dopuszczeniu praca (zadanie, program) staje się procesem podlegającym programowi szeregowania krótkookresowego

-Alternatywnie, praca jest kierowana na dysk do późniejszego uruchomienia (podlega wówczas szeregowaniu średniookresowemu)

-Szeregowanie średniookresowe

-część zadań związana z wymianą

- zazwyczaj jego funkcję określają potrzeby zarządzania wieloprogramowością

- jeśli w systemie nie ma pamięci wirtualnej to szeregowanie średniookresowe dotyczy również zarządzania pamięcią

-Szeregowanie krótkookresowe

-krótkookresowy program szeregujący - dyspozytor

-podejmowanie szczegółowych decyzji, które zadanie ma być realizowane jako następne t.j., które zadanie otrzyma procesor w następnym odcinku czasowym

-I/O

Zarządzanie pamięcią

-System jednoprogramowy

-pamięć dzielona na dwie części

-jedna dla OS (monitora)

-druga dla aktualnie wykonywanego programu

-System wieloprogramowy

-część użytkownika jest podzielona na części i współdzielona przez aktywne procesy

Partycjonowanie

-Podział pamięci na bloki służące alokacji procesów

-Partycje o ustalonym rozmiarze

-nie muszą być jednakowego rozmiaru

-proces jest umieszczany w najmniejszej dostępnej partycji, która może go pomieścić

-występują straty pamięci

-potrzebne są partycje o zmiennych rozmiarach

-Partycjonowanie o zmiennym rozmiarze

-proces wprowadzany do pamięci jest umieszczany w obszarze o dokładnie takiej pojemności, jaka jest niezbędna

-może to prowadzić do tworzenia luki na końcu pamięci, zbyt małej do wykorzystania)

-kiedy proces jest blokowany przez I/O, jest on usuwany do pliku wymiany i pobierany nowy proces

-nowy proces może być mniejszy niż obszar zwolniony

Organizacja procesora

-Organizacja CPU jest pochodną funkcji, które realizuje procesor tj. funkcji

-pobierania rozkazów

-interpretowania rozkazów

- pobierania danych

- przetwarzania danych

- zapisywania danych

Struktura procesora-

- Jednostka sterująca - steruje działaniem procesora (czyli też komputera)

- Jednostka algorytmiczno-logiczna (AUL) - realizacja funkcji przetwarzania danych przez PC

- Rejestry - wewnętrzne przechowywanie danych w procesorze

- Połączenia procesora - łączy ww. rzeczy razem

Rejestry

-CPU potrzebuje pamięci roboczych

-są nimi rejestry

-Liczba i przeznaczenie rejestrów

-specyficzne dla procesorów

-jest to podstawowa decyzja projektanta

-W hierarchii pamięci rejestry stoją najwyżej

-rejestry:

-widzialne dla użytkownika

-ogólnego przeznaczenia (r. robocze)

-do przechowywania danych(r. danych)

-do manipulowania na adresach(r. adresowe

- kodów warunkowych (flagi znaczki stanu)

Rejestry ogólnego przeznaczenia

-mogą być przypisane przez programistę wielu funkcjom

- często dowolny rejestr roboczy może zawierać argument dowolnego kodu operacji

-Często występują ograniczenia np. r. dedykowane operacjom zmiennoprzecinkowym

-r. danych (bez możliwości działań na adresach) - akumulator

-r. adresowe(uniwersalne lub dedykowane pewnym trybom adresowania)- wskaźniki segmentu, r. indeksowe, wskaźnik stosu

- problemy projektowe:

-r. ogólnego zastosowania dają uniwersalność użycia i programowania, ale zwiększają rozmiar i złożoność rozkazów

-r. specjalizowane - mniejsze rozkazy, ale mniejsza elastyczność

Ile rejestrów ogólnego przeznaczenia?

-8-32

-mniej => więcej odwołań do pamięci

-więcej=> zmniejsza się przez to liczba odwołań do pamięci i komplikuje procesor

Jaka długość rejestrów?

-r. adresowe tak długie by mogły pomieścić adres

-r. danych tak długie, aby mogły pomieścić dane we wszystkich formatach

-często wykorzystujemy układy par rejestrów

Rejestry kodów warunkowych

-zbiory indywidualnych bitów

-mogą być czytane przez program

-zazwyczaj nie mogą być ustawiane przez program

Rejestry sterowania i stanu

- licznik programu (PC)

- rejestr rozkazu (IR)

- rejestr adresowy pamięci (MAR)

- rejestr buforowy pamięci (MBR)

Słowo stanu programu PSW (program status Word)

- każdy procesor używa PSW

- może to być rejestr, zespół rejestrów lub zespół bitów opisujących stan programu

- PSW zawiera zwykle pola - bity (stan wyk. ostatniej operacji):

-Zero S (sign)

-Zero Z (zero)

-Parzystość P (parity)

-Przeniesienie C (Carry), przeniesienie pomocnicze A (auxillary carry)

-Równość E (equal)

-Przepełnienie, nadmiar V (overflow)

-Zezwolenie/blokowanie przerwania I (interrupt enable/disable)

-Nadzorca (supervisor) - praca procesora w trybie nadzorcy/użytkownika

Inne rejestry

-wskazujące bloki pamięci z dodatkową informacją o stanie

-rejstr wektora przerwań

-na organizację rejestrów wpłuwa organizacja s.o. i vice versa

Rozproszone systemy komputerowe - to układ niezależnych komputerów, który sprawia na jego użytkownikach wrażenie, że jest jednym komputerem

Zalety w porównaniu do dużych systemów scentralizowanych

-ekonomia rozwoju

-możliwość odtworzenia inherentną dla zastosowania wewnętrzną naturę rozproszenia

-szybkość/wydajność

-niezawodność

-stopniowe rozszerzanie/skalowność

Wady-trudności organizacyjne i techniczne

-oprogramowanie

-sieć

-bezpieczeństwo

-interoperacyjność

-efektywność

-jakość usług

Rozproszeniu podlega

-sprzęt

-oprogramowanie

-dane

Rozproszenie sprzętu

-taksonomia Flynna rozwiązań H/W

-cechy H/W

-liczba (1/wiele) strumieni instrukcji (instruction stream)

-liczba (1/wiele strumieni danch (data stream)

-SISD - 1:1 (single instruction, single data stream)

-pojedynczy processor

-pojedynczy strumień rozkazów

-dane zapisane w pojedynczej pamięci

-systemy jednoprocesowe - tradycyjna architektura von Neumana

-MISD - M:1 (arch. teoret)(multiple instruction/ single data)

-pojedynczy strumień danych jest przetwarzany na wielu procesorach sterowanych wieloma strumieniami rozkazów

- arch teoret., arch. Specjaliz. Sieci systoliczne

-SIMD - 1:M

-MIMD - M:M

-wiele procesów równocześnie przetwarza niezależne strumienie danych na podstawie własnych strumieni rozkazów

-popularność: SISD > MIMD > SIMD > MISD

Wieloprocesowy

-procesory ogólnego przeznaczenia

-wspólna pamięć

-każdy procesor może realizować wszystkie instrukcje

-maks. Kilkadziesiąt procesorów (<64)

-ograniczenia wynikają z rywalizacji o dostęp do tej samej pamięci

-reguły zapewniania spójności danych w pamięci skomplikowane

-dalsza klasyfikacja wynika z metody komunikacji międzyprocesowej oraz sposobu połączenia

-komunikacja poprzez wspólną pamięć

-komunikacja poprzez wymianę komunikatów

-szynowe

-przełączane

Komunikacja poprzez wspólną pamięć

-SMP (symetric multiprocesor)

-procesory dzielą pamięć

-komunikacja poprzez wspólną pamięć

-podział pojedynczej pamięci bądź puli pamięci

-wspólna szyna - magistrala dostępu do pamięci

-czas dostępu do każdego obszaru pamięci jest taki sam (UMA)

-każdy program może być wykonywany w każdej pamięci

- była wersja asynchroniczna

-NUMA (nonuniform memory Access)

-czas dostępu do określonej komórki pamięci zależy od jej położenia w pamięci lokalnej procesora czy też pamięci globalnej lub pamięci lokalnej innych procesorów

-czas dostępu do różnych obszarów pamięci może być różny dla poszczególnych prosesorów NUMA (lokalny dostęp lepszy)

Wielokomputery

-rozwiązanie skalowalne

-trudność w zapewnieniu wydajnej sieci połączeń

-topologie: szyna, pierścień, krata, drzewo, hipersześcian

-max hiperkostka ma 16384 węzły

-nowa linia wielokomputerów szynowych/przełączalnych - klastry

Klastry

- komputery w klastrze dzielą się dostępem do dysku bądź też nie

-własność skalowalności

-wysoka dostępność

-korzystny stosunek ceny do wydajności

-różne cele i funkcje klastrów:

-klastry obliczeniowe

-klastry WWW

-klastry niezawodnościowe

-równoważenie obciążenia v. czysta wydajność plus inne cechy



Wyszukiwarka

Podobne podstrony:
OSK skrot, Politechnika Wrocławska, PWR - W8 - Informatyka, Sem1, OSK, OSK, OSK C2 KOLO, OSK C2 KOLO
Tematyka i terminy zajec, Politechnika Wrocławska, PWR - W8 - Informatyka, Sem1, Podstawy Programowa
zarzadzanie, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem1, Zarządzanie
Zagad NE09, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem3, Elektro, Podstawy elekt
sc5 druk, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem3, Elektro, Podstawy elektro
SC3, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem3, Elektro, Podstawy elektrotechn
Pitagoras text, Politechnika Wrocławska (eit), Technologia informacyjna
zadania 1-odpowiedzi, Politechnika Wrocławska PWr, semestr 1, fizyka 1, zadania
Eegzamin zagadnienia cz1, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem3, Elektro,
sciaga elektra, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem3, Elektro, Podstawy e
AiR 2013 zima (1), Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem5, automaty
Materiałoznawstwo- ściąga nr 2, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem3, mat
tresc zadan, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem3, Elektro, Podstawy elek
podkładka 4, Politechnika Wrocławska PWr, semestr 2, geologia inżynierska, projekt 1
Negocjacje - referat, Politechnika Wrocławska PWr, semestr 2, socjologia
odpowiedzi mechanika - sciaga, Politechnika Wrocławska PWr, Ochrona Środowiska, Mechanika płynów
Ściąga - odlewy, Politechnika Wrocławska, PWR - W10- Automatyka i Robotyka, Sem4, Obróbka bezubytkow
zadania 1, Politechnika Wrocławska PWr, semestr 1, fizyka 1, zadania

więcej podobnych podstron