Twoim problemem jest to, że powszechną NICOŚĆ mylisz z osobistą PUSTKĄ

 

SMP (Symmetric Multiprocessor)

û        Sprzętowa architektura komputera

û        Dwa lub więcej procesorów o podobnych możliwościach

û        Wspólna pamięć główna i urządzenia we-wy

û        Czas dostępu do pamięci taki sam (!) dla każdego procesora

û        Wszystkie procesory mogą realizować te same funkcje (stąd symmetric)

û        Sterowanie przez zintegrowany system operacyjny

û        Możliwość stopniowej rozbudowy

û        Uszkodzenie jednego procesora powoduje tylko obniżenie wydajności

û                       Obsługa współdzielenia zasobów poprzez magistralę

 

NUMA

û          Rodzaj architektury

û    Charakteryzuje się niejednorodnym dostępem do pamięci (czas dostępu dla różnych procesorów jest różny)

û    Ma to służyć polepszeniu efektywności i nie przeciążaniu magistrali (według twórców dla aplikacji reprezentatywnych, które posiadają większość danych lokalnie w cache działa wydajniej niż SMP)

û    Wady: słaba przenoszalność pomiędzy SMP a (CC)-NUMA, dostępność

 

MESI

û    Główne rozwiązanie problemu spójności pamięci podręcznych (jeden procesor aktualizuje cache, inne procesory wówczas mają nieaktualne dane – stąd problem)

û    Każdy cache znakowany przez 2 bity stanu:
zmodyfikowany – wiersz w cache został zmodyfikowany i jest osiągalny tylko tam,
wyłączny – wiersz w cache jest identyczny jak ten w głównej pamięci i nie występuje w innych cache,
wspólny – wiersz w cache taki sam jak w pamięci i głównej i może występować w innych               pamięciach,
nieważny – wiersz w cache nie zawiera danych ważnych

û    możliwości operacji na danych: chybienie / trafienie odczytu / zapisu

 

Failover i Failback

û    FO (przejmowania danych) - w odniesieniu do klastrów: funkcja przełączania aplikacji i zasobów danych z systemu uszkodzonego do inne go systemu w klastrze

û        FB (przywracanie) – w odniesieniu do klastrów: funkcja przywracania aplikacji i zasobów danych do systemu początkowego, gdy zostanie on naprawiony

 

Klaster

û                       Alternatywna dla SMP i NUMA

û        Bardziej wydajny i dostępny – stosowany w serwerach

û        Grupa połączonych kompletnych (mogących funkcjonować w oderwaniu od klastra) komputerów (nazywanych węzłami), tworzących zasób obliczeniowy imitujący jedną maszynę

û        Możliwe jest tworzenie bardzo dużych klastrów przewyższających możliwościami największe samodzielne jednostki

û        Istnieje możliwość nieinwazyjnego stopniowego powiększania klastra

û        Każdy węzeł klastra jest kompletny – jego odłączenie nie powoduje uszkodzenia systemu

û        Bardzo dobry stosunek cena / wydajność

û    Rodzaje:

rezerwa bierna – pseudoklaster, istnieje dodatkowy serwer, który włącza się dopiero gdy               serwer główny pada (przestaje wysyłać sygnał „bicia serca”)
dodatkowy czynny serwer – bardziej złożony, dodatkowy serwer nie „śpi” i również przetwarza dane
odrębne serwery – serwery pracują na oddzielnych dyskach, większa dostępność, większe obciążenie łącza (ciągłe kopiowanie danych)
serwery połączone z dyskami – praca na wspólnym dysku + własne dyski, mniejsze obciążenie łącza, wymaga tworzenia kopii RAID
serwery współużytkujące dyski – wiele serwerów ma jednocześnie dostęp do dysków, wymaga mechanizmów blokowania, niskie obciążenie łącza
 

û    Duży plus klastrów to zasadnicza jednolitość: sterowania, interfejsów, przestrzeni pamięci, hierarchii plików ...itd.

 

CISC

û    Architektura mikroprocesorów o pełnej liście rozkazów

û    Dużo ilość, skomplikowanych (zajmujących kilka cyklów procesora) rozkazów

û    Duża liczba trybów adresowania (5 do 20), powolny dekoder adresów

û    Projektowane głównie po to, by zapewnić odpowiednią współpracę z językami wysokiego poziomu, dążono do uproszczenia kompilatorów i lepszej wydajności

û    Stosowane dawniej również ze względów ekonomicznych – teoretycznie programy na architekturę CISC zajmowały mniej miejsca w pamięci, co było bardzo cenne

û    Wolniejsze od architektur typu RISC, bo jest duża liczba odwołań do danych w pamięci

û    Mniejsza liczba rejestrów

û    Różna długość rozkazów

û    Łatwiejsze programowanie, krótsze programy

û    Droższe w budowie i eksploatacji

û    Na każdy rozkaz składa się mikroprogram złożony z mikrooperacji/mikrorozkazów (a każdy mikrorozkaz zawiera sekwencję bitów, która reprezentuje mikrooperację sterującą przemieszczaniem informacji między różnymi podzespołami i rejestrami procesora);

 

RISC

û    Duża liczba rejestrów – operacje typu z rejestru do rejestru, implikują dużo szybsze działanie niż pobieranie danych z pamięci podręcznej

û    W dużych rejestrach zmienne lokalne, także globalne – szybsze wykonywanie rozkazów

û    Krótkie, proste rozkazy – łatwe do implementacji w procesorze, a jednocześnie będące podstawowym budulcem programów (wykorzystywane w ponad 90% przypadków)

û    Jeden rozkaz na jeden cykl – przyspieszenie działania

û    Proste tryby adresowania i ich niewielka liczba

û    Architektura load-store

û    Intensywne wykorzystanie przetwarzania potokowego

û    Proste formaty rozkazów

û    Rozkazy mają jednakową długość, brak adresowania pośredniego, brak operacji łączących ładowanie / zapis z arytmetyką

û    Przykłady realizacji:
MIPS – dodatkowe ALU,która mogłaby współpracować z istniejącymi. Potok wykorzystywany do aktywowania więcej niż jednej operacji. Ciężar zapewnienia poprawności wykonania spoczywa na kompilatorze; usprawnienie obliczeń
SPARC –otwarta architektura RISC, zysk z wyrzucenia sprzętu ze środka procesora a dołączenia wielu rejestrów generalnego przeznaczenia.  przełączanie kontekstów, okno z rejestrami, dużo rejestrów
ARM – brak zagospodarowania wolnego miejsca (po redukcji rozkazów) – mniejsza jednostka (zmniejszenie struktury) – mniejsze zużycie energii, mniej wydalanego ciepła – możliwe wyższe obroty –czyli praca z wysokimi częstotliwościami
POWERPC – podobne do MIPS, dodatkowe bloki funkcjonalne (dla floatów np.); rozdzielamy pewne typy operacji i wykonujemy je na oddzielnych jednostkach, aby zrównoleglić obliczenia.
 

û    Porównywanie RISC i CISC jest o tyle niezasadne, iż obie technologie od jakiegoś czasu przenikają się, wpływają na siebie i uzupełniają się

 

Urządzenie Sterujące

û        Jeden z elementu funkcjonalnego obrazu komputera

û          Zarządza zasobami komputera i koordynuje działanie jego składników funkcjonalnych w zależności od wprowadzonych poleceń

û        Jednostka sterująca CPU – steruje działaniem komputera, składa się z: układów logicznego sterowania, rejestrów i dekoderów jednostki sterującej i pamięci sterującej

 

Schemat Funkcjonalny Komputera

 

·     Komputer realizuje 4 podstawowe funkcje: przetwarzanie danych, przechowywanie danych, przenoszenie danych, sterowanie

·     Jeżeli komputer otrzymuje dane od urządzenia bezpośrednio podłączonego do niego – to jest to proces we-wy, a urządzenie nazywa się peryferyjnym

·     Jeżeli przenoszenie danych odbywa się na duże odległości, to proces ten nazywamy transmisją danych

·     W komputerze wyróżnia się 4 podstawowe elementy: CPU, pamięć główna, wejście-wyjście i magistrala systemowa

 

RAID

·     Schemat projektowania baz danych dla pamięci wielodyskowych

·     Ma zwiększać wydajność (w pewnym sensie także pojemność całościową) pamięci dyskowych, a także polepszać bezpieczeństwo danych

·     Jest to zespół fizycznie istniejących napędów dyskowych, widzianych przez OS jako jeden napęd logiczny

·     Dane są rozproszone, tworzą tablice

·     Implementuje przechowywanie danych o parzystości, co gwarantuje odzyskiwanie danych w wypadku awarii któregoś z napędów

·           Istnieje siedem poziomów RAID:

RAID 0 – nie przewiduje redundancji, stos w celu poprawienia wydajności i pojemności, dane rozproszone na wszystkich dyskach w postaci pasków, zwiększa szybkość transferu we-wy
RAID 1 – redundancja osiąga przez powielanie wszystkich danych, takie same dane są równolegle na dwóch dyskach – szybszy odczyt, w razie awarii każde dane posiadają kopię na drugim dysku, wady: wolniejszy zapis i koszt
RAID 2 – dostęp do danych – równoległy, stosowany jest kod Hamminga, mniej kosztowny niż RAID 1, ale nadal kosztowny, stosowany dla tablic o dużej zawodności

·           RAID 3 – analogiczny do RAID 2,  wymaga tylko jednego dysku redundancyjnego, dostęp równoległy, wykorzystuje obliczanie bitów parzystości (redundancja  implementowana za pomocą funkcji XOR)
RAID 4 – dostęp do danych – niezależny, każdy dysk działa niezależnie, mogą być obsługiwane równolegle, dobry w sytuacji, gdy potrzeba szybkich odpowiedzi na żądania we-wy a niekoniecznie dużego transferu, gorsza wydajność zapisu, paski parzystości znajdują się na jednym dysku (wąskie gardło)
RAID 5 – podobny do RAID 4, jednak paski parzystości są rozproszone na wszystkich dyskach
RAID 6 – znaczne polepszenie dostępności, parzystość obliczana jest podwójne, jednak dzieje się to kosztem wydajności i szybkości zapisu
 

 

INTEL 8086

·                 Mikroprocesor ogólnego przeznaczenia

·                 Dużo bardziej zaawansowany, niż 8080

·                 16-bitowy mikroprocesor

·     Szersza ścieżka danych, większe rejestry, podręczna pamięć rozkazów

·     Mechanizmy pracy wieloprocesorowej

·     Segmentacja pamięci

·     Rozszerzone możliwości adresowania operandów

·     Adresowanie natychmiastowe, rejestrowe, bezpośrednie, pośrednie, indeksowe i bazowe

·     Wprowadzenie układu kolejki (pamiętanie 6 bajtów z pamięci w czasie zajętości procesora)

·     2 części: jednostka wykonawcza, zespół łącza z magistralą systemową

·     Rozkazy: arytmetyczno-logiczne, przesłań, skoków, obsługi pętli, wywołań i powrotów z podprogramu, dotyczące rejestrów segmentowych ,wykonujące operacje na ciągach słów, wejścia/wyjścia i inne

PIC (16F84A)

·     Jednoukładowy komputer stosowany w systemach wbudowanych

·     Architektura RISC

·     Należy podłączyć do niego zegar i zasilanie

·     Zawiera 68 8-bitowych rejestrów, stos (8 wierszy 13-bitowych, ma do niego dostęp licznik programu),

·     Peryferyjne: pamięć EEPROM, TIMER, I/O Ports

·     Ostatni wpis ze stosu jest wpisywany do Program Counter

·     Zbudowany wg paradygmatu von Neumanna, jednak w architekturze Harvardzkiej – gwarantuje to większą szybkość – równoległe pobieranie danych i instrukcji

·     Stała długość instrukcji – 14 bitów

WDM

û    Typ sterowników typu PnP stosowany od Windowsa 98

û    następna VxD, obejmuje wsparciem Windowsy 98- Vista

û    Wyróżnia się 4 rodzaje (driver funkcyjny – główny driver, najczęściej napisany przez producenta i niezbędny do działania urządzenia) :
class driver – sterownik funkcyjny, mogący operować na dużej liczbie urządzeń tego samego typu (nie ma potrzeby pisania oddzielnych driverów dla każdej wersji urządzenia), w ujęciu programistycznym class driver może służyć jako baza dla bardziej specjalizowanych sterowników np. typu miniport (udostępnia interfejs)
miniport driver – sterownik funkcyjny do obsługi USB, SCSI, Audio i urządzeń sieciowych
bus driver – sterownik do obsługi magistral, może służyć jako kontroler, adapter czy mostek, może obsługiwać więcej niż jedną magistralę danego typu, używany jest do obsługi choćby USB, PCI, SCSI, FireWire...
filter driver – mogą dodawać i modyfikować funkcje obecnych już sterowników, nie muszą być związane z urządzeniem,

û    Wady: wygórowane wymagania dla nauki WDM, brak odpowiedniej współpracy z systemem zasilania, brak wsparcia dla sterowników pisanych czysto w user-mode

 

Scoreboarding

 

û    Algorytm stosowany w procesorach superskalarnych

û    Umożliwia synchronizację potoku i zabezpiecza przed hazardem RAW (wartość nim zostanie zapisana przez poprzednią instrukcję, jest już odczytana przez następną)

û    Polega na identyfikowaniu rejestrów procesora jako: ważnych i nieważnych

û    Odczyt możliwy jest tylko z ważnego rejestru

û    Rejestr oznaczany jest jako nieważny, gdy instrukcja mająca zapisać coś do tego rejestru opuszcza fazę odczytu

û    Wówczas inne instrukcje nie mają prawa korzystania z danego rejestru

û    Gdy instrukcja opuszcza fazę zapisu, rejestr oznaczany jest jako ważny i dane z rejestru są „odblokowywane” dla innych instrukcji

 

Algorytm Zastępowania Stron

 

û    Stosowany w stronicowaniu, jako element obsługi braku strony

û    W momencie, gdy brakuje wolnych ramek w pamięci należy zwolnić jedną z ramek poprzez zapisanie znajdującej się w niej strony na dysk

û    Taki zapis można dokonać tylko wówczas gdy odpowiedni bit (modyfikacji) w ramce jest ustawiony na 1

û    Szukaniem strony, która ma być usunięta z pamięci i zapisana na dysk zajmują się różne algorytmy:
FIFO – usuwamy stronę najdłużej znajdującą się w pamięci, prosty, łatwy w implementacji, zagrożenie to błędy - np. anomalia Beladiego
Algorytm Optymalny – usuwamy stronę najdłużej nieużywaną, idealny – teoretyczny – niemożliwy do implementacji
LRU – usuwamy stronę, która nie by...

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • jucek.xlx.pl






  • Formularz

    POst

    Post*

    **Add some explanations if needed