Wst¦p

Transkrypt

Wst¦p
Wst¦p
1
Zasady prowadzenia zaj¦¢
Na stronie
www.ii.uni.wroc.pl/~kiero/dydaktyka.html
znale¹¢ b¦dzie mo»na materiaªy do zaj¦¢: zasady
zaliczania ¢wicze«, moje notatki (nie zawsze b¦d¡ zawieraªy caªy materiaª opowiedziany na wykªadzie i nie
zawsze b¦d¡ najporz¡dniejsze, ale mam nadziej¦, »e do czego± si¦ przydadz¡), listy zadaniowe, punktacj¦ w
mojej grupie ¢wiczeniowej i mo»e jeszcze par¦ innych rzeczy.
Literatura:
1. William Stallings, Organizacja i architektura systemu komputerowego.
Projektowanie systemu a jego
wydajno±¢, WNT 2000.
2. Linda Null, Julia Lobur, Struktura organizacyjna i architektura systemów komputerowych, Helion 2004
3. B. S. Chalk, Organizacja i architektura komputerów, WNT 1998;
4. M. Morris Mano, Architektura komputerów, WNT 1988.
2
Czego b¦dziemy si¦ uczy¢?
Omawia¢ b¦dziemy ogólne zasady budowy i dziaªania komputerów.
Nie b¦dziemy uczyli si¦ architektury
konkretnych maszyn - szczegóªowe poznanie architektury procesorów Pentium przekracza zdecydowanie ramy
tego wykªadu, który ma by¢ tylko wykªadem wprowadzaj¡cym. Poza tym na ±wiecie istnieje mnóstwo bardzo
ró»nych maszyn nazywanych koputerami - od maªych komputerów osobistych do pot¦»nych superkomputerów
- omówienie nawet wszystkich typów komputerów byªoby niemo»liwe.
Skoncentrujemy si¦ na cechach poja-
wiaj¡cych si¦ we wszystkich systemach i omawia¢ b¦dziemy raczej architektrury modelowe, cho¢ oczywi±cie
odwoªania do konkretnych rzeczywistych rozwi¡za« b¦d¡ si¦ pojawiaªy.
Co to jest komputer? Sama nazwa pochodzi od angielskiego sªowa compute, które oznacza oblicza¢. Sugeruje to, »e komputery s¡ urz¡dzeniami przeznaczonymi do oblicze«. Tak oczywi±cie byªo na pocz¡tku. Teraz
powiemy raczej, »e komputer to urz¡dzenie, którego zadaniami s¡:
•
przetwarzanie danych (obliczenia na danych liczbowych, kompresja tekstów, szyfrowanie, ...)
•
przechowywanie danych (pami¦ci zewn¦trzne, ale nie tylko: nawet podczas przetwarzania danych potrzebna jest funkcja przechowywania, chocia»by chwilowego w rejestrach procesora)
•
przenoszenie danych (klawiatura-komputer, komputer-monitor, transmisja na dalsze odlegªo±ci)
•
sterowanie tymi trzema funkcjami (w najprostszych przypadkach przez osoby z zewn¡trz, zazwyczaj
przez jednostk¦ steruj¡c¡ zasobami komputera)
Komputer zbudowany jest z
•
jednostki centralnej (CPU) - sterowanie, przetwarzanie danych
•
pami¦ci gªównej - przechowywanie danych
•
systemu wej±cia wyj±cia - przenoszenie danych mi¦dzy komputerem a otoczeniem
•
poª¡czenia systemu
Na budow¦ komputera b¦dziemy spogl¡da¢ hierarchicznie.
Ju» w tej chwili mo»emy rzuci¢ okiem jak
wygl¡da modelowa jednostka centralna (procesor). Skªada si¦ ona znowu z kilku cz¦±ci:
•
jednostka steruj¡ca (procesor w procesorze)
1
•
jednostka arytmetyczno-logicza (ALU)
•
rejestry
•
poª¡czenia wewn¦trzne
Mo»emy schodzi¢ jeszcze ni»ej. W jednostce steruj¡cej realizowanej metod¡ mikroprogramowania wyró»ni¢
mo»emy: ukªady logiczne szeregowania, rejestry i dekodery jednostki steruj¡cej, pami¦¢ steruj¡c¡.
2.1
Model von Neumanna
Wspóªczesne maszyny s¡ budowane zazwyczaj zgodnie z tzw. modelem von Neumanna. Koncepcja ta zostaªa
zaproponowana przez twórców komputera ENIAC (Mauchly, Eckert, ale sam ENIAC nie byª pierwotnie zbudowany zgodnie z t¡ koncepcj¡). Podobne pomysªy miaª w tym samym czasie (45-46) Alan Turing.
Podstawowa
cecha program przechowywany jest w pami¦ci razem z danymi.
•
koncepcja programu (rozkazy wykonywane s¡ szeregowo, z wyj¡tkiem skoków)
•
program i dane w pami¦ci gªównej, adresowanie
•
ALU operuje na danych binarnych
•
cykl pobieranie-dekodowanie-wykonywanie rozkazów
•
I/O nadzorowane jest przez CPU.
Oczywi±cie w historii komputerów pojawiªo si¦ wiele dodatkowych rozszerze« (pami¦¢ wirtualna, dane
zmiennoprzecinkowe, przerwania, ...), ale, z grubsza rzecz bior¡c, model obowi¡zuje do dzi±.
3
Hierarchiczna struktura komputerów
Luka semantyczna:
pomi¦dzy poziomem bramek logicznych a poziomem j¦zyków programowania wysokiego
poziomu.
Poziomy abstrakcji systemów komputerowych:
•
Poziom 0: logika cyfrowa (bramki logiczne, poª¡czenia mi¦dzy nimi)
•
Poziom 1: sterowanie (mikrokod lub skongurowane sprz¦towo)
•
Poziom 2: maszyna (architektura zbioru rozkazów)
•
Poziom 3: oprogramowanie systemowe (system operacyjny, biblioteki)
•
Poziom 4: asemblery
•
Poziom 5: j¦zyki wysokiego poziomu
•
Poziom 6: u»ytkownik (programy wykonywalne)
Mo»emy my±le¢, »e na ka»dym poziomie mamy maszyn¦ wirtualn¡ realizuj¡c¡ ró»ne zbiory operacji (w
razie potrzeby odwoªuj¡c si¦ do maszyn z ni»szego poziomu)
2

Podobne dokumenty