Technologie Informacyjne.
1. Elementy systemu komputerowego.
Podstawowe architektury
Architektura von Neumanna - rodzaj architektury komputera, przedstawionej po raz pierwszy w 1945 roku przez Johna von Neumanna.
Polega na ścisłym podziale komputera na trzy podstawowe części:
procesor (w ramach którego wydzielona była część sterująca oraz część arytmetyczno-logiczna)
pamięć komputera (zawierająca dane i sam program)
urządzenia wejścia/wyjścia
Komputer jest urządzeniem, które czyta z pamięci program i na podstawie tego programu przetwarza zawarte w pamięci dane. Z tej definicji wynika podstawowe rozróżnienie typów architektury komputerów:
Każda z tych architektur ma swoje zalety i wady.
Architektury von Neumanna
Instrukcje tworzące program są przechowywane w pamięci w taki sam sposób, jak dane.
Pamięć składa się z pewnej liczby ponumerowanych komórek:
» dostęp do pamięci następuje poprzez podanie przez procesor numeru komórki
» numer komórki nazywamy adresem.
Z powyższych postulatów wynika w praktyce, że:
» zazwyczaj komputer będzie pobierał kolejne instrukcje programu z kolejnych komórek pamięci
» komórki te będą wybierane przez zwiększający się adres, który powinien być przechowywany i inkrementowany w procesorze
» adres ten jest przechowywany w specjalnym rejestrze - tzw. liczniku instrukcji (Program Counter- PC)
Architektura harwardzka - realizacja maszyny von Neumanna z oddzielnymi hierarchiami pamięci programu i danych.
Jest często uznawana za architekturę nie-vonneumannowską ze względu na dyskusyjność zachowania postulatu o jednakowym składowaniu instrukcji i danych.
Posiada wysoką wydajność dzięki możliwości równoczesnego pobierania instrukcji i operacji na hierarchii pamięci danych.
Brak możliwości zapisu instrukcji do hierarchii pamięci instrukcji:
» brak możliwości programowania
» komputer dostarczany ze stałym programem
» dopuszczalne tylko w zastosowaniach wbudowanych lub DSP
Architektura Princeton - wzorcowa realizacja maszyny von Neumanna ze wspólną hierarchią pamięci instrukcji i danych
Wspólna hierarchia wyklucza równoczesne pobieranie instrukcji i operacje na danych (tzw. von Neumann bottleneck).
Nieograniczone możliwości modyfikacji programu:
» obiekt zapisany przez procesor danych do hierarchii pamięci jako dana może być następnie pobrany przez procesor instrukcji jako instrukcja
» możliwość programowania - potrzebna w komputerach uniwersalnych
» program może sam siebie modyfikować (automodyfikacja) - nie zawsze jest to pożądana cecha
Architektura Harvard-Princeton - realizacja maszyny von Neumanna z oddzielnymi górnymi warstwami hierarchii pamięci i wspólnymi warstwami dolnymi. Przynajmniej jeden poziom kieszeni jest oddzielny dla procesorów instrukcji i danych.
Większość odwołań do hierarchii pamięci jest realizowanych w górnych warstwach (szybkie działanie dzięki równoległości dostępów jak w architekturze Harvard).
Wspólne dolne warstwy hierarchii umoŜliwiają zapis programu (programowalność- niezbędna w komputerach uniwersalnych)
Program użytkowy nie ma pełnej kontroli nad położeniem obiektów w hierarchii pamięci (brak możliwości automodyfikacji).
Kontrolę taką może mieć system operacyjny:
» jeden program (proces) może modyfikować drugi
» możliwość ładowania programu np. z pliku
Architektura Harvard-Princeton zaspokaja potrzeby programowalności bez narażania bezpieczeństwa (automodyfikacja jest niebezpieczna).
Większość współczesnych komputerów uniwersalnych jest opartych o architekturę Harvard-Princeton (w tym wszystkie współczesne komputery PC).
2. Urządzenia komputerowe i podstawowe elementy komputera.
Komputer jest to uniwersalny system cyfrowy zdolny do wykonywania pewnego zbioru rozkazów (różnorodnych operacji elementarnych), w którym użytkownik może określić sekwencję wykonywanych rozkazów koniecznych do realizacji postanowionego zadania. Głównymi częściami składowymi komputera są: procesor, pamięć operacyjna. Oba urządzenia znajdują się w jednej obudowie nazywanej jednostką centralną. Pamięć operacyjna służy do chwilowego pamiętania danych wejściowych i wyjściowych oraz przechowuje uruchomione programy. Programy przekazują rozkazy do procesora. Procesor wykonuje rozkazy przychodzące z programu. Pozostałe elementy komputera to urządzenia peryferyjne (zewnętrzne). Ich celem jest dostarczanie lub odbieranie informacji (dane lub rozkazy) do lub z jednostki centralnej. Istotną cechą komputera, odróżniającą go od innych systemów cyfrowych, jest możliwość zupełnej zmiany realizowanych przez niego funkcji jedynie przez zmianę programu w jego pamięci.
Podstawowe elementy komputera to:
Płyta główna (ang. mainboard) - najważniejsza płyta drukowana urządzenia elektronicznego, na której zamontowano najważniejsze elementy urządzenia, umożliwiająca komunikację wszystkim pozostałym komponentom i modułom.
W komputerze na płycie głównej (ang. motherboard) znajdują się procesor, pamięć operacyjna lub gniazda do zainstalowania tych urządzeń oraz gniazda do zainstalowania dodatkowych płyt zwanych kartami rozszerzającymi (np. PCI), urządzeń składujących (dyski twarde, napędy optyczne itp.) i zasilacza. W niektórych konstrukcjach także innych urządzeń zewnętrznych (port szeregowy, port równoległy, USB, złącze klawiatury, złącze myszy).
Koncepcję zbudowania komputera osobistego wyposażonego tylko w minimum potrzebnych urządzeń zmontowanych na jednej płycie drukowanej oraz gniazd do których podłącza się dodatkowe urządzenia zapoczątkowała firma IBM wprowadzając komputer osobisty, zwany też PC.
Kontrolery poszczególnych urządzeń zgrupowane są głównie w dwóch mostkach - północnym i południowym.
Mostek północny, podłączony bezpośrednio do procesora przy pomocy FSB, zawiera kontroler pamięci oraz kontroler szyny graficznej. W przypadku zintegrowania kontrolera pamięci z procesorem mostek ten może nie występować, wówczas bezpośrednio do procesora podłączany jest szeregową szynę typu punkt-punk czyli HyperTransport mostek południowy łączący procesor z poszczególnymi komponentami systemu. Mostek południowy, podłączony do mostka północnego, może zawierać kontrolery PCI, USB, dźwięku, Ethernetu, dysków (ATA, SATA) itp. Do niego też zazwyczaj podłączone są dodatkowe zewnętrzne kontrolery (np. IEEE 1394).
Na płycie głównej umieszczony jest także zegar czasu rzeczywistego i BIOS(Najniższy poziom oprogramowania komputera umożliwiający działanie innych programów i operacji wykonywanych przez komputer . BIOS jest łącznikiem między sprzętem a uruchamianymi programami. Procedura BIOS-u została zapisana w pamięci stałej komputera , w odpowiednich układach scalonych , w postaci rozkazów języka maszynowego. Procedury te można odczytać ale nie można ich zmodyfikować.)
Procesor (ang. processor) nazywany często CPU (ang. Central Processing Unit) - urządzenie cyfrowe sekwencyjne potrafiące pobierać dane z pamięci, interpretować je i wykonywać jako rozkazy. Wykonuje on bardzo szybko ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.
Współczesne procesory (zwane mikroprocesorami) wykonywane są zwykle jako układy scalone zamknięte w hermetycznej obudowie, często posiadającej złocone wyprowadzenia (stosowane ze względu na własności stykowe tego metalu). Ich sercem jest monokryształ krzemu, na który naniesiono techniką fotolitografii szereg warstw półprzewodnikowych, tworzących, w zależności od zastosowania, sieć od kilku tysięcy do kilkuset milionów tranzystorów. Połączenia wykonane są z metalu (aluminium, miedź). Ważnym parametrem procesora jest rozmiar elementów budujących jego strukturę. Im są one mniejsze tym niższe jest zużycie energii, napięcie pracy oraz wyższa częstotliwość pracy. Współczesne procesory używane w komputerach osobistych wykonywane są w technologii pozwalającej na uzyskanie elementów o rozmiarach mniejszych niż 65 nm, pracujących z częstotliwością kilku GHz. Według planów największych producentów procesorów, pod koniec roku 2007 powinny pojawić się procesory wykonane w technologii 45 nm, a w 2010 - 32 nm. Fabryki procesorów muszą posiadać pomieszczenia o niezwykłej czystości, co jest bardzo kosztowne.
Dysk twardy jeden z typów urządzeń pamięci masowej, wykorzystujących nośnik magnetyczny do przechowywania danych. Nazwa "dysk twardy" (hard disk drive) powstała w celu odróżnienia tego typu urządzeń od tzw. "dysków miękkich", czyli dyskietek (floppy disk), w których nośnik magnetyczny naniesiono na elastyczne podłoże, a nie jak w dysku twardym na sztywne.
Pierwowzorem twardego dysku jest pamięć bębnowa. Pierwsze dyski twarde takie, jak dzisiaj znamy, wyprodukowała w 1980 r. firma Seagate. Dysk przeznaczony do mikrokomputerów miał pojemność 5 MB, 5 razy więcej niż standardowa dyskietka.
Pojemność dysków wynosi od 5 MB (przez 10MB, 20MB i 40MB - dyski MFM w komputerach klasy XT 808x i 286, współcześnie zaś dyski kilkusetmegabajtowe w komputerach osobistych należą do rzadkości), najczęściej posiadają rozmiar nawet kilkuset (powyżej 400 GB) GB, (w laptopach 20-260 GB). Małe dyski, o pojemnościach od kilkuset MB do kilku GB stosuje się współcześnie w kartach dla slotu Compact Flash (Microdrive) do cyfrowych aparatów fotograficznych, a także w innych urządzeniach przenośnych.
Dla dysków twardych najważniejsze są parametry: pojemność, szybkość transmisji danych, czas dostępu, prędkość obrotowa talerzy (obr/min.) oraz MTBF.
Kilka dysków twardych można łączyć w macierz dyskową, dzięki czemu można zwiększyć niezawodność przechowywania danych, dostępną przestrzeń na dane, zmniejszyć czas dostępu.
Dysk twardy składa się z następujących części:
obudowy, której zadaniem jest ochrona znajdujących się w niej elementów przed uszkodzeniami mechanicznymi a także przed wszelkimi cząsteczkami zanieczyszczeń znajdujących się w powietrzu. Jest to konieczne, gdyż nawet najmniejsza cząstka "kurzu" ma wymiary większe niż odległość pomiędzy głowicą a powierzchnią nośnika, tak więc mogłaby ona zakłócić odczyt danych, a nawet uszkodzić powierzchnię dysku
elementów elektronicznych, których celem jest kontrola ustalenia głowicy nad wybranym miejscem dysku, odczyt i zapis danych oraz ich ewentualna korekcja. Jest to w zasadzie osobny komputer, którego zadaniem jest "jedynie" obsługa dysku.
nośnika magnetycznego, umieszczonego na wielu wirujących "talerzach" wykonanych najczęściej ze stopów aluminium. Zapewnia to ich niewielką masę, a więc niewielką bezwładność, co umożliwia zastosowanie silników napędowych mniejszej mocy, a także szybsze rozpędzanie się "talerzy" do prędkości roboczej.
elementów mechanicznych, których to zadaniem jest szybkie przesuwanie głowicy nad wybrane miejsce dysku, realizowane za pomocą silnika krokowego. Wskazane jest stosowanie materiałów lekkich o dużej wytrzymałości, co dzięki małej ich bezwładności zapewnia szybkie i sprawne wykonywanie postawionych zadań.
Pamięć RAM (ang. Random Access Memory) - jest to podstawowy rodzaj pamięci cyfrowej zwany też pamięcią użytkownika lub pamięcią o dostępie swobodnym. Choć nazwa sugeruje, że oznacza to każdą pamięć o bezpośrednim dostępie do dowolnej komórki pamięci (w przeciwieństwie do pamięci o dostępie sekwencyjnym, np. rejestrów przesuwnych), to nazwa ta ze względów historycznych oznacza tylko te rodzaje pamięci o bezpośrednim dostępie, które mogą być też zapisywane przez procesor, a wyklucza pamięci ROM (tylko do odczytu), pomimo iż w ich przypadku również występuje swobodny dostęp do zawartości.
W pamięci RAM przechowywane są aktualnie wykonywane programy i dane dla tych programów, oraz wyniki ich pracy. Zawartość większości pamięci RAM jest tracona w momencie zaniku napięcia zasilania, dlatego wyniki pracy programów muszą być zapisane na jakimś nośniku danych.
Pamięć RAM jest stosowana głównie jako pamięć operacyjna komputera, jako pamięć niektórych komponentów (procesorów specjalizowanych) komputera (np. kart graficznych, dźwiękowych, itp.), jako pamięć danych sterowników mikroprocesorowych.
Odmiany pamięci RAM:
SRAM - statyczna pamięć o dostępie swobodnym, przechowuje dane tak długo, jak długo włączone jest zasilanie, w odróżnieniu od pamięci typu DRAM, która wymaga okresowego odświeżania
DRAM - rodzaj pamięci o dostępie swobodnym stosowanej w komputerach jako pamięć operacyjną, która przechowuje każdy bit danych w oddzielnym kondensatorze, wymaga okresowego odświeżania
DDR
DDR2
DDR3
ZASILACZ - dostarcza prądu do wszystkich jego komponentów: płyty głównej, dysku twardego, klawiatury, myszy i kart rozszerzeń.
Napęd optyczny - umożliwia komputerowi odczytywanie płyt CD-ROM, CD, CD-R, CD-RW. Podczas odczytu na dysk znajdujący się w napędzie CD-ROM pada światło lasera. W zależności od tego, czy padnie na pit, światło to zostanie odbite bądź nie. Informacje o odbiciu promienia lub o braku odbicia przekazywane są do komputera jako jedynki i zera, tworzące bity danych. Prędkość odczytu danych z CD-ROM-u określa się jako wielokrotność prędkości pierwszego napędu tego typu (oznaczanej jako x1) - 150 kB/s. Tak więc napęd CD-ROM x50 powinien odczytywać dane z maksymalną szybkością transferu 7,3 MB/s. Czas dostępu do informacji w typowych napędach CD-ROM wynosi około 90-120 ms, czyli jest około 10 razy dłuższy niż dla dysków twardych.
Karta graficzna - często określana też mianem akcelerator grafiki, to element komputera tworzący sygnał dla monitora.
Podstawowym zadaniem karty graficznej jest przechowywanie informacji o tym jak powinien wyglądać obraz na ekranie monitora i odpowiednim sterowaniu monitorem. Pierwsze karty graficzne potrafiły jedynie wyświetlać znaki alfabetu łacińskiego ze zdefiniowanego w pamięci karty generatora znaków - tryb tekstowy. Kolejna generacja kart graficznych potrafiła już wyświetlać w odpowiednim kolorze poszczególne punkty (piksele) - tryb graficzny. Nowoczesne procesory graficzne udostępniają wiele funkcji ułatwiających i przyśpieszających pracę programów. Możliwe jest narysowanie odcinka, trójkąta, wieloboku, wypełnienie ich zadanym kolorem lub wzorem, tzw. akceleracja 2D. Większość kart na rynku posiada również wbudowane funkcje ułatwiające tworzenie obrazu przestrzeni trójwymiarowej, tzw. akceleracja 3D. Niektóre posiadają zaawansowane algorytmy potrafiące na przykład wybrać tylko widoczne na ekranie elementy z przestrzeni. Obecnie najpopularniejsze są karty graficzne posiadające standardowo akcelerator grafiki 3D.
Karta dźwiękowa (soundcard) - specjalna karta rozszerzenia, której zadaniem jest odtwarzanie i nagrywanie plików dźwiękowych. Umożliwia ona także zrealizowanie połączenia z elektronicznymi urządzeniami muzycznymi poprzez tzw. złącze MIDI. W przeciwieństwie do karty graficznej, karta dźwiękowa jest dodatkową kartą rozszerzającą w komputerze. Jest ona jednak niezbędna w przypadku, gdy komputer ma być używany do gier lub programów multimedialnych. Obecnie standardem wśród kart dźwiękowych w komputerach klasy IBM PC jest karta Sound Blaster (firmy Creative Labs). Karty dźwiękowe posiadają wejścia i wyjścia audio, które dzięki dołączonemu oprogramowaniu umożliwiają korzystanie z innych zewnętrznych urządzeń muzycznych.
Podstawowym parametrem karty dźwiękowej jest częstotliwość próbkowania (sampling rate), która określa, ile razy w czasie sekundy są wysyłane lub pobierane dane do odtwarzania. Im wyższa jest częstotliwość próbkowania, tym wyższa jakość nagrywanego dźwięku. Popularne karty dźwiękowe obecne na rynku posiadaj ą częstotliwość próbkowania 44,1 lub 48 kHz (a nawet 55 kHz).
OBUDOWA KOMPUTERA - to najczęściej metalowa zamknięta skrzynka w formie prostopadłościanu, umożliwiająca umieszczenie i zamocowanie najważniejszych elementów komputera.
MODEM - służy do przekazywania informacji w postaci cyfrowej, odbierania jej i wysyłania.
3. Procesor i jego architektura.
Procesor jest centralną częścią systemu komputerowego, ale czy wszyscy zdają sobie sprawę z tego, jakie zadania ten procesor właściwie powinien realizować? Otóż procesor musi:
Zapisywać dane - w pamięci lub module wejścia-wyjścia.
Pobierać rozkazy - w celu odczytania poleceń z pamięci.
Interpretować rozkazy - polecenia należy zdekodować, aby wiedzieć jakie operacje należy wykonać.
Pobierać dane - z pamięci lub modułu wejścia-wyjścia.
Przetwarzać dane - przeprowadzać na danych pewne operacje arytmetyczne lub logiczne.
Aby procesor miał możliwość wykonywania powyższych zadań musi dysponować małą pamięcią wewnętrzną, która wymagana jest do czasowego przechowywania danych i rozkazów (procesor musi np. pamiętać lokalizację poprzedniego rozkazu po to, by "odnaleźć" rozkaz następny).
Poniżej przedstawione są dwa rysunki, które ukazują bardzo uproszczoną budowę procesora. Rysunek 1 przedstawia trzy główne składniki procesora
Rejestry - część pamięci wewnętrznej uprzywilejowanej wykorzystywanej przez procesor do adresowania, odczytu danych, itp.
Jednostkę arytmetyczno-logiczną (ALU) - ta część procesora jest odpowiedzialna za wykonanie obliczeń i przetwarzanie danych.
Jednostkę sterującą (CU) - kieruje ona ruchem danych i rozkazów do/z procesora i steruje pracą ALU.
Komunikacja między procesorem a resztą systemu komputerowego odbywa się poprzez magistralę systemową, której poszczególne składniki (szyny danych, adresowa i sterowania) mogą, ale nie muszą być fizycznie od siebie odseparowane.
Nieco dokładniej strukturę wewnętrzną procesora przedstawia kolejny rysunek. Element określony jako wewnętrzna magistrala procesora zajmuje się przesyłaniem danych między różnymi rejestrami a ALU (w rzeczywistości ALU operuje jedynie na danych zaczerpniętych z wewnętrznej pamięci procesora) [1]. Rysunek przedstawia również elementy podstawowe ALU:
Na koniec zapamiętajmy, że to właśnie ALU jest "sercem" procesora. Rejestry są używane do przechowywania danych wewnętrznych w procesorze, a niektóre z nich zawieraj ą informacj e potrzebne do zarządzania porządkowaniem rozkazów (np. słowo stanu programu), pozostałe zawierają dane przeznaczone dla ALU, pamięci i modułów wejścia-wyjścia lub dane przekazane przez te jednostki. Wewnętrzne ścieżki danych są używane do przenoszenia danych pomiędzy rejestrami oraz między rejestrami a ALU. Zewnętrzne ścieżki danych łączą rejestry z pamięcią i modułami wejścia-wyjścia często za pomocą magistrali systemowej. Jednostka sterująca koordynuje wykonanie operacj i wewnątrz procesora. Procesor (CPU - centralna jednostka wykonawcza ang. Central Procesing Unit) to układ scalony, którego działanie polega na wykonywaniu instrukcji programów. Nadzoruje on i synchronizuje prace wszystkich urządzen w komputerze. Charakterystyczne cechy, które odróżniają procesory od siebie to:
architektura (CISC lub RISC)
liczba bitów przetwarzana w jednym takcie
częstotliwość taktowania podawana w MHz
Wszystkie współczesne procesory maja podobna architekturę oparta na superskalarnym jądrze RISC (architektura procesora o uproszczonej liście rozkazów). Jeszcze kilka lat temu procesory zaliczano do rodziny CISC (architektura procesora wykorzystująca złożoną listę rozkazów). Dzisiaj, dzięki zastosowaniu w nich techniki przekodowywania rozkazów, uzyskano ogromne zwiększenie wydajności procesora, a RISC-owa konstrukcja umożliwia stosowanie wysokich częstotliwości zegara.
Architektura Budowa procesora
Procesor (Central Procesing Unit) jest najważniejszym elementem komputera. Istnieje wiele różnych typów procesorów, ale prym wiodą produkty kompatybilne z rodziną x86 pochodzące od firm Intel, AMD i ostatnio VIA. Wykonuje on wszelkiego rodzaju obliczenia, jakie występują w systemie. Choć dzisiejsze procesory posiadają bardzo złożoną architekturę to jednak można wyróżnić kilka najważniejszych bloków, są nimi: jednostka arytmetyczno logiczna (ALU), układ sterowania i bloki rejestrów. ALU odpowiedzialna jest za wykonywanie obliczeń, których wyniki pośrednie i końcowe przechowywane są w rejestrach. Wszystkim tym zarządza jednostka sterująca, która pobiera rozkazy z pamięci dekoduje je i wykonuje. Procesor składa się z:
zespołu rejestrów do przechowywania danych i wyników;
jednostki arytmetycznej (arytmometr) do wykonywania prostych operacji na danych;
układu sterującego przebiegiem obliczeń;
rejestru rozkazów, czyli operacji podstawowych.
Wnętrze procesora
Prędkość operacji procesora jest mierzona w ich ilości na sekundę i podawana w MHz. Od tej wartość zależy moc naszego procesora. Nie jest to jednak jedyny wyznacznik sprawność i choć dzisiejsze procesory przeznaczone dla PC- tów są bardzo zbliżone, jeżeli chodzi obudowę wewnętrzną to jednak producenci stosują różne rozwiązania techniczne i te widoczne gołym okiem i te głęboko ukryte w strukturze układu.
Dzisiejsze procesory wykonywane są w technologii 0,25 i 0,18 mikrometra, czyli tyle wynosi szerokość ścieżek łączących poszczególne elementy (na jednym milimetrze zmieściłoby się ich ponad 5500!!), a liczba tych drugich sięga milionów na pojedynczej płytce krzemu. Stosowane są także jednostki zmienno-przecinkowe (nawet kilka takich układów), które są wyspecjalizowane w obliczeniach dokonywanych na liczbach zmiennoprzecinkowych. Od wydajności tych układów zależy prędkość przetwarzania danych w grach i programach wspomagających projektowanie.
Procesor komunikuje się z otoczeniem poprzez magistralę systemową z częstotliwością zależną od jego typu np. 66, 100, 133 MHz. Jest to wartość kilkakrotnie niższa niż częstotliwość pracy samego procesora, co powodowałoby oczekiwanie przez niego na dane i rozkazy przesyłane z pamięci systemowej. Należy dodać, że współczesne procesory posiadają jądro superskalarne typu RISC (zredukowana liczba rozkazów), które umożliwia pracę potokową tzn. nim zakończy się procedura obsługi jednego rozkazu rozpoczyna się już przetwarzanie następnego (do 20). Wszystko to powoduje, że procesor przetwarza ogromne ilości danych.
Aby skrócić czas oczekiwania procesory wyposażono w pamięć podręczną (L1, L2) pracującą z częstotliwości procesora. Stanowi ona swego rodzaju bufor tzn. dane są do niej ładowane nim procesor się o nie upomni. Oczywiście sprawa jest dużo bardziej skomplikowana, bo stosowane są różnego rodzaju układy prognozowania tego, jakie dane procesor będzie potrzebował. Współczesne procesory (zwane mikroprocesorami) wykonywane są zwykle jako układy scalone zamknięte w hermetycznej obudowie, często posiadającej złocone wyprowadzenia (stosowane ze względu na własności stykowe tego metalu). Ich sercem jest monokryształ krzemu, na który naniesiono techniką fotolitografii szereg warstw półprzewodnikowych, tworzących, w zależności od zastosowania, sieć od kilku tysięcy do kilkuset milionów tranzystorów. Połączenia wykonane są z metalu (aluminium, miedź). Ważnym parametrem procesora jest rozmiar elementów budujących jego strukturę. Im są one mniejsze tym niższe jest zużycie energii, napięcie pracy oraz wyższa częstotliwość pracy. Współczesne procesory używane w komputerach osobistych wykonywane są w technologii pozwalającej na uzyskanie elementów o rozmiarach mniejszych niż 65 nm, pracujących z częstotliwością kilku GHz. Według planów największych producentów procesorów, pod koniec roku 2007 powinny pojawić się procesory wykonane w technologii 45 nm, a w 2010 - 32 nm. Fabryki procesorów muszą posiadać pomieszczenia o niezwykłej czystości, co jest bardzo kosztowne.
4. Urządzenia przechowywania danych.
Pamięć masowa (ang. mass memory, mass storage) - pamięć trwała, przeznaczona do długotrwałego przechowywania dużej ilości danych w przeciwieństwie do pamięci RAM i ROM. Pamięć masowa zapisywana jest na zewnętrznych nośnikach informacji. Nośniki informacji zapisywane i odczytywane są w urządzeniach zwanych napędami.
Nośniki magnetyczne:
Napędy optyczne:
Pamięci półprzewodnikowe (pozbawione części mechanicznych), współpracujące z różnymi złączami komunikacyjnymi:
karty pamięci