Biblioteka
  Wiw.pl   Na bieżąco:  Informacje   Co nowego   Matematyka i przyroda:  Astronomia   Biologia   Fizyka   Matematyka   Modelowanie rzeczywistości   Humanistyka:  Filozofia   Historia   Kultura antyczna   Literatura   Sztuka   Czytaj:  Biblioteka   Delta   Wielcy i więksi   Przydatne:  Słowniki   Co i gdzie studiować   Wszechświat w obrazkach    
  Jesteś tutaj:   Wirtualny Wszechświat > Biblioteka > Encyklopedia > Wybór haseł > Subskrypcja  




ARCHITEKTURA KOMPUTERA
Ogólna koncepcja struktury komputera, określająca jego składniki oraz sposób ich współdziałania i łączenia, tak aby całość spełniała określone wymagania użytkowe. Nazwa oznacza także dział informatyki zajmujący się koncepcyjną i funkcjonalną strukturą systemów komputerowych. Architektura komputera pozostaje w bliskiej analogii do architektury budowli, określającej całościową organizację elementów, wymagane cechy budulca oraz sposób łączenia budulca w celu otrzymania zaprojektowanej formy końcowej. Architektura komputera jest też związana, choć nie tożsama, z jego implementacją. Architektura obejmuje te właściwości, które wpływają na projektowanie i opracowywanie oprogramowania, implementacja zaś - na wydajność systemu i koszty jego eksploatacji. Przez wiele lat wysiłki architektów były skierowane na konstruowanie możliwie najszybszych w danym okresie komputerów (przy narzuconych z góry ograniczeniach, np. cenowych). W kolejnych latach sięgnięto po nowe możliwości - jednoczesne wykonywanie wielu programów oraz dostosowanie architektury komputera do struktury języków programowania wysokiego poziomu.

Komputer składa się z czterech głównych elementów sprzętowych (rys.): pamięci, procesora, urządzeń peryferyjnych i łączy komunikacyjnych. Pamięć służy do przechowywania danych i programów, procesor steruje pracą całego systemu i przetwarza dane, urządzenia peryferyjne służą do wymiany danych ze światem zewnętrznym, łącza natomiast umożliwiają wzajemne komunikowanie się elementów systemu.



Pamięć. W pamięci są przechowywane dane przetwarzane przez komputer oraz instrukcje określające wykonywane czynności. W komputerach cyfrowych informacje te są przechowywane w postaci binarnej, czyli są reprezentowane przez ciągi bitów. Bity są logicznie łączone w bajty (osiem bitów), a te w słowa (zwykle od jednego do ośmiu bajtów). Pamięć komputera ma z reguły strukturę hierarchiczną - podstawowe elementy strukturalne to rejestry, pamięć wewnętrzna (główna) oraz pamięć zewnętrzna (pomocnicza). Zob. Bit.

Rejestry są najszybszymi komórkami pamięci. Są częścią procesora i zawierają dane aktualnie w nim przetwarzane.

Pamięć wewnętrzna przechowuje dane, które mają być przetworzone, oraz instrukcje opisujące, jak mają być przetworzone. Głównym celem, jaki stoi przed architektem-projektantem, jest uzyskanie możliwie szybkiej i pojemnej pamięci wewnętrznej bez dramatycznego wzrostu jej ceny. Do zwiększenia szybkości pamięci służą dwie techniki: przeplatanie (scalenie wielu niezależnych pamięci w jeden szybszy system działający jako całość) i zastosowanie pamięci podręcznej (ang. cache; mała, bardzo szybko dostępna pamięć przechowująca zawartość niektórych - często używanych - komórek pamięci wewnętrznej). Natomiast powszechnie stosowanym rozwiązaniem zwiększającym efektywną pojemność pamięci jest pamięć wirtualna.

Zastosowanie pamięci wirtualnej stwarza wrażenie dysponowania pamięcią wewnętrzną o bardzo wielkiej pojemności, podczas gdy naprawdę tak nie jest. Technika ta polega na przechowywaniu dużej części zawartości pamięci wewnętrznej w powolnej pamięci zewnętrznej, przy czym odpowiednie jej fragmenty są przenoszone (w sposób niewidoczny dla działających programów) do pamięci wewnętrznej tylko wtedy, gdy są aktualnie potrzebne.

Pamięć zewnętrzna stanowi najpowolniejszą, najtańszą i najbardziej pojemną część pamięci całego systemu komputerowego. Stanowi magazyn wszystkich danych i programów. Są dwa typy tej pamięci - o dostępie sekwencyjnym i o dostępie bezpośrednim. Pamięć o dostępie sekwencyjnym (np. taśma magnetyczna) wymaga przeglądania zawartości w ustalonej kolejności. Dane zapisane w pamięci o dostępie bezpośrednim (np. na dysku magnetycznym) mogą być przeglądane w dowolnej kolejności.

Jedną z najważniejszych cech organizacji pamięci współczesnych komputerów jest mapowanie (odwzorowywanie) pamięci. Przed wykonaniem programu jest on wczytywany w jakieś, z góry nieznane, miejsce w pamięci fizycznej. Mapowanie pamięci polega na odwzorowaniu logicznej przestrzeni adresowej programu (zbioru adresów instrukcji i danych występujących w programie) na fizyczną przestrzeń adresową programu (aktualne adresy fizyczne komórek pamięci wewnętrznej, w których program i dane są zapisane). Najczęstszym sposobem mapowania jest stosowanie rejestrów bazowych (b-rejestrów). Do rejestru bazowego programu jest wpisywany fizyczny adres pierwszej komórki, od której zaczyna się zapis programu w pamięci. Mapowanie polega wówczas na przetłumaczeniu adresów logicznych występujących w napisanym programie na adresy fizyczne przez dodanie do każdego adresu logicznego wartości b-rejestru. Oczywiście, wartości rejestrów bazowych różnych programów muszą być różne, aby zapobiec zakłócaniu się programów podczas ich wspólnego przebywania w pamięci.

Innym sposobem mapowania jest stronicowanie. Polega to na podzieleniu przestrzeni adresowych (logicznej i fizycznej) na jednakowej wielkości fragmenty zwane stronami. Mapowanie uzyskuje się przypisując stronom pamięci logicznej strony pamięci fizycznej, co można traktować jako ciąg rejestrów bazowych. Zob. Pamięć komputera.

Przetwarzanie. Procesor komputera (stanowiący jednostkę centralną) jest złożony z modułu sterującego, nadzorującego pracę systemu, oraz z modułu arytmetyczno-logicznego, wykonującego przetwarzanie. Architektura procesora określa zbiór jego rejestrów, możliwe sposoby wymiany danych między rejestrami i pamięcią oraz zestaw rozkazów (instrukcji), które procesor potrafi zinterpretować i wykonać. Zwykle procesorem steruje program złożony z kolejnych instrukcji, znajdujący się w pamięci wewnętrznej.

Interpretowanie instrukcji przez procesor jest wykonywane przez odpowiedni układ dekodujący. Zwykle taki układ jest skomplikowany i stanowi znaczną część obwodów procesora. W celu uproszczenia konstrukcji układów dekodujących stosuje się mikroprogramy, co pozwala traktować instrukcje procesora jak makropolecenia złożone z prostszych kroków (stanowiących mikrorozkazy, czyli instrukcje mikroprogramu), jak przesyłanie danych między rejestrami, pamięcią i modułem arytmetyczno-logicznym. (Trzeba wyraźnie zaznaczyć, że mikroprogramowanie nie ma nic wspólnego z mikroprocesorami; te ostatnie są procesorami zintegrowanymi w postaci pojedynczego układu scalonego). Zob. Mikroprocesor.

Urządzenia peryferyjne i łącza. Typowy system komputerowy zawiera różnorodne urządzenia peryferyjne, jak drukarka, klawiatura czy wyświetlacz (monitor). Służą one do komunikowania się systemu z człowiekiem lub innymi urządzeniami (np. aparaturą pomiarowo-kontrolną czy robotami przemysłowymi).

Są dwa podstawowe sposoby łączenia urządzeń peryferyjnych i urządzeń pamięci zewnętrznej z resztą komputera: za pośrednictwem kanału lub magistrali. Kanał bezpośrednio łączy urządzenie peryferyjne z pamięcią. Kanał może być multipleksowany, co umożliwia jego wspólne wykorzystywanie przez kilka urządzeń. Magistrala jest odmianą multipleksowanego kanału, do którego można przyłączyć dużą liczbę urządzeń. Wymagany narzut organizacyjno-sterujący magistrali powoduje, że jej maksymalna przepustowość jest mniejsza niż w wypadku kanału, jednak dla systemu z wieloma urządzeniami peryferyjnymi bardziej wydajnym rozwiązaniem jest zastosowanie pojedynczej magistrali niż wielu kanałów.

Jednym z najprostszych sposobów organizacji wymiany danych za pośrednictwem kanałów i magistral jest tzw. programowe wejście-wyjście (wszystkie dane przechodzą przez specjalny obszar pamięci obsługiwanej bezpośrednio przez procesor, zwany obszarem portów wejścia-wyjścia). Wejście-wyjście z bezpośrednim dostępem do pamięci oznacza metodę, w której procesor nakazuje urządzeniu przesłanie bloku danych - dane te są transmitowane do pamięci (lub z pamięci) bez absorbowania procesora, który w tym czasie może wykonywać inne czynności.

Przerwania są specjalnymi sygnałami służącymi urządzeniom peryferyjnym do informowania procesora, że transmisja danych została zakończona. Inną ich rolą jest zgłaszanie procesorowi chęci przesłania danych przez port wejścia-wyjścia. Projekt procesora musi obejmować rozstrzyganie sytuacji, w której jest jednocześnie aktywnych wiele urządzeń peryferyjnych. Zob. Komputer; Komputer cyfrowy. [D.J.F.] (L.R.)

[  góra strony  ]

Wiw.pl  |  Na bieżąco  |  Informacje  |  Co nowego  |  Matematyka i przyroda  |  Astronomia  |  Biologia  |  Fizyka  |  Matematyka  |  Modelowanie rzeczywistości  |  Humanistyka  |  Filozofia  |  Historia  |  Kultura antyczna  |  Literatura  |  Sztuka  |  Czytaj  |  Biblioteka  |  Delta  |  Wielcy i więksi  |  Przydatne  |  Słowniki  |  Co i gdzie studiować  |  Wszechświat w obrazkach