background image

1

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Lekcja 

17

TEMAT:

Pamięć ROM i RAM.

background image

2

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Pamięć 

ROM

:

Pamięć stała -Read Only Memory. Gdy dane zostaną 
zapisane w pamięci stałej są w niej przechowywane cały 
czas, a dzięki temu możliwy jest do nich bardzo szybki 
dostęp (ponieważ nie są stale otwierane i odnawiane)

 ROM przechowuje zapisane informacje bez względu na to 
czy napięcie jest włączone, czy nie.

Zaletami pamięci stałej są bezpieczeństwo i szybki dostęp 
do informacji, które nie muszą być zmieniane, są natomiast 
często odczytywane. 

background image

3

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Pamięć ROM nie może być dynamicznie aktualizowana tak 
jak pamięć o dostępie bezpośrednim RAM (Random Access 
Memory). 

Wymaga to użycia specjalnych programów. ROM jest 
znacznie bezpieczniejszy niż RAM, ponieważ zapisane w 
nim informacje o wiele trudniej jest zmienić, co sprawia, że 
wirusy i przypadkowe skasowanie danych są znacznie 
rzadszymi zjawiskami. 

background image

4

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

ROM płyty głównej w większości 
komputerów zawiera cztery główne 
programy, którymi są:

POST 

(Power-On Self Test) Seria procedur testujących 

sprawność poszczególnych komponentów komputera .

CMOS Setup

. Program umożliwiający zmianę 

parametrów konfiguracji systemu, ustawieni 
zabezpieczeń oraz preferencji.

Bootstrap loader

. Procedura szukająca możliwego do 

załadowania systemu operacyjnego najpierw na 
dyskietce w stacji dysków, a później na twardym 
dysku.

BIOS

. Basic Input/Output System. Zbiór sterowników 

stanowiący standardowy interfejs podstawowych 
urządzeń komputera, szczególnie tych, które muszą 
być aktywne podczas uruchamiania się systemu.

background image

5

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Typy pamięci 

ROM:

1. Programowalna pamięć stała (Programmable ROM,  

PROM

)

     Programowalna pamięć stała zasadniczo nie różni się od 

pamięci stałej, za wyjątkiem tego, że jest produkowana 
bez zapisanych na niej danych, natomiast jednokrotnego 
ich zapisu może dokonać producent posługujący się 
specjalnym sprzętem. Po wyprodukowaniu na ROM-ie 
wypalane są potrzebne dane za pomocą specjalnego 
urządzenia do programowania ROM-u, dlatego jeśli chce 
się dokonać uprgrade'u trzeba wyjąć stary układ scalony i 
zastąpić go na nowo zaprogramowanym PROM-em. 

background image

6

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

2. Wymazywalna programowalna pamięć stała 
    (Erasable Programmable ROM,  

EPROM

) 

Wymazywalna programowalna pamięć stała jest w 
zasadzie tym samym, co programowalna pamięć stała, 
którą można kasować i ponownie zapisywać, co 
eliminuje konieczność wymiany układu scalonego na 
nowy za każdym razem, gdy dokonuje się upgrade'u. 
EPROM tak jak programowalny ROM również był 
produkowany bez danych zapisanych w pamięci, z tym 
wyjątkiem, że po zapisaniu EPROM można wystawić na 
działanie światła ultrafioletowego, które wymaże jego 
zawartość, co pozwala technikowi na wypalanie danych 
przy użyciu specjalnego sprzętu do programowania 
ROM-u. Światło ultrafioletowe jest rzucane przez 
miniaturowe okienko umieszczone u góry EPROM-u, 
przez które widać sam układ, więc żeby dokonać 
upgrade'u i tak trzeba go wyjąć. 

background image

7

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

3. Pamięć stała programowalna elektrycznie (

EEPROM

)

Największy postęp w dziedzinie pamięci stałej nastąpił wraz z 
pojawieniem się EEPROM-ów, które mogą być kasowane przez 
użytkownika za pomocą oprogramowania użytkowego. Zaletą 
EEPROM jest to, że układ scalony jako taki nie musi być wyjmowany z 
płyty głównej by ponownie zapisać dane w pamięci. 
Najpopularniejszym zastosowaniem elektrycznie programowalnego 
ROM-u jest przechowywanie BIOS-ów. Powtórne programowanie BIOS-
u wymaga od użytkownika użycia programowego narzędzia do 
aktulizacji BIOS-u. Po wprowadzeniu EEPROM-u producenci nie muszą 
już przechowywać BIOS-u w układzie zasilanym baterią. Dzięki 
EEPROM-om BIOS można bardzo łatwo przechowywać na "stałym" 
nośniku, które nie traci swojej zawartości, gdy do pamięci nie dociera 
prąd.

background image

8

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Pamięć 

RAM

:

Drugim rodzajem pamięci jest pamięć o dostępie swobodnym 
-

RAM,

 (Random Access Memory) która może być i odczytywana, i 

zapisywana. W przeciwieństwie do pamięci stałej RAM traci 
informacje przechowywane w komórkach pamięci, gdy zostaje 
odcięty dopływ prądu do układu pamięciowego, a co za tym idzie 
nie może być użytecznym rozwiązaniem dla przechowywania 
programów takich jak BIOS, ponieważ do utraty informacji 
wystarcza samo odcięcie dopływu prądu. RAM przechowuje 
informacje, które są w danym momencie używane i dostarcza do 
CPU wymagane informacje, które mają być przetworzone. 

background image

9

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Typy pamięci 

RAM:

1. DRAM (Dynamic Random Access Memory )

     Dane są przechowywane w komórkach pamięci, które 

stanowią jeden bit danych, a DRAM wykorzystuje 
kondensator do przechowywania poszczególnych bitów 
danych w komórkach pamięci. Komórki pamięci DRAM są 
zwykle złożone z jednego tranzystora i jednego 
kondensatora do przechowywania danych. Kondensatory 
są zasadniczo miniaturowymi bateriami, ponieważ 
przechowują ładunek elektryczny, a w tym wypadku 
ładunek elektronów, który przesądza o tym czy dana 
komórka jest "włączona", czy "wyłączona". Z logicznego 
punktu wiedzenia, jeśli komórka jest w pełni naładowana 
znajduje się w "stanie włączonym", czyli reprezentuje 1, a 
jeśli jest pusta reprezentuje 0, czyli jest wyłączona. 

background image

10

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Niestety kondensator traci swój ładunek po krótkim 
okresie czasu, ponieważ jest w istocie miniaturową 
baterią dlatego musi być okresowo odnawiany. 

Odczyt komórek pamięci DRAM-u powoduje 
wyładowanie kondensatora, dlatego komórki muszą 
być ponownie zapisane po tym jak zostały odczytane. 

background image

11

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

DRAM 

SDRAM

DDR-SDRAM

background image

12

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

2. SRAM (Static RAM),

Jest najszybszą i najbardziej wydajną z obu rodzajów 
pamięci, (ale użytkownicy przedkładają DRAM nad SRAM)

Zamiast tymczasowo naładowanych kondensatorów, które 
bardzo szybko tracą ładunek, statyczny RAM wykorzystuje 
tranzystory aby określić aktualny stan komórki pamięci na 
podstawie jej aktualnej pozycji. Ponieważ tranzystory nie 
mają ładunku, który by mogły stracić, a co za tym idzie nie 
muszą być odnawiane. 
SRAM jest znacznie szybszy niż DRAM. 

background image

13

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Dlaczego w takim razie nie używamy 

SRAM

 zamiast 

DRAM

 w 

naszej pamięci systemowej? 

Cóż, typowa komórka pamięci SRAM składa się z czterech 
tranzystorów i dwóch oporników, co daje cztery razy więcej 
tranzystorów niż składa się na typową komórkę pamięci 
DRAM. 

Ze względu na większą liczbę tranzystorów SRAM jest w 
porównaniu z DRAM znacznie droższy, zużywa o wiele więcej 
energii i nie może być pakowany tak gęsto, jak DRAM, przez 
co jest lepszym wyborem gdy idzie o pamięci podręczne L1 i 
L2 współczesnych procesorów. 

Oprócz tego SRAM jest fizycznie większy od układów DRAM, 
co odbiłoby się to na rozkładzie płyty głównej. W 
rzeczywistości ilość faktycznie użytego silikonu byłaby 
niemal cztery razy większa w przypadku tej samej ilości 
pamięci DRAM, co skutkuje szalenie drogim, chociaż szybkim 
układem pamięciowym. 

background image

14

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Moduły SIMM

Współczesne płyty główne wyposażone są w złącza typu 
SIMM (ang. Single Inline Memory Modules), 
umożliwiające rozszerzenie pamięci RAM od kilku do kilkuset 
MB. 

Moduły SIMM są to podłużne płytki na których umieszczono 
"kostki" pamięci, wyposażone z złącze krawędziowe. Moduły 
te posiadają 72-stykowe złącze i mogą mieć pojemności 
4,8,16,32 oraz 64 MB. Czas dostępu modułów SIMM zawiera 
się w granicach 60-70 nanosekund. Złącze SIMM ma 32-
bitową szynę danych - do rozszerzenia pamięci na płycie 
głównej z procesorem PENTIUM wystarczą więc dwa moduły, 
gdyż pamięć RAM ma 64-bitową organizację zapisu i odczytu 
danych. 

background image

15

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Moduły DIMM

 

(ang. Dual Inline Memory Modules)

- to najnowsze osiągnięcia przemysłu komputerowego. 
Wyposażone są w 169-stykowe złącza i dysponują 64-
bitową magistralą danych (taką samą jak procesor 
PENTIUM) - do rozszerzania pamięci na płycie głównej 
potrzebny jest więc tylko jeden moduł. Moduły te 
posiadają trzy rzędy styków, oddzielone dwoma 
wycięciami.

background image

16

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Struktura pamięci 

RAM:

Pierwsze komputery IBM PC z procesorem 8086/88 
(popularne XT) narzuciły pewien podział pamięci, 
kontynuowany w następnych generacjach 
komputerów. 

Całkowity obszar 1MB RAM dostępny dla procesora 
8086 został podzielony, przez konstruktorów IBM, na 
dwa obszary. 

Pierwszy obszar obejmujący zakres 0 - 9FFFF (0 - 640 
KB) nazwany został 

pamięcią konwencjonalną

Natomiast obszar o adresach A0000 do FFFFF (640 - 
1 MB) to 

pamięć górna

.

background image

17

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Początkowy obszar pamięci konwencjonalnej używany jest 
przez sprzęt i system operacyjny do przechowywania 
wektorów przerwań sprzętowych, danych BIOSU-u, obszarów 
buforów i plików DOS, a w dalszej kolejności ewentualnych 
programów obsługi (tzw. driverów) dodatkowych urządzeń 
(np. myszy, klawiatury, itd.), plików systemowych (Io.sys i 
MsDos.sys) oraz pierwszej kopii pliku Command.com. 

Obszar ten może mieć różną wielkość, w zależności od 
konfiguracji systemu, zainstalowanych driverów i wersji 
systemu operacyjnego. Zwykle zajmuje od ok. 60 KB do 160 
KB, a nawet ponad 200 KB. Pozostała przestrzeń do granicy 
640 KB może być użyta przez aplikacje.

background image

18

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

background image

19

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Pamięć górna (Upper Memory)

zajmuje obszar do adresu A0000 do FFFFF (640 KB - 1 
MB) niedostępny do oprogramowania użytkownika. 
Obszar ten (384 KB) podzielony jest na kilka części o 
ściele ustalonym przeznaczeniu:

Obszar A0000 - BFFFF (128 KB) przeznaczony jest dla 
pamięci ekranu. 

Końcowa część obszaru Upper Memory przeznaczona 
jest na ROM BIOS. W zależności od typu monitora i 
karty graficznej oraz wielkości obszaru 
zarezerwowanego na BIOS pozostaje nie 
wykorzystany obszar tej pamięci ok.160 -230 KB.

background image

20

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

background image

21

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Pamięć dodatkowa - Expanded 
Memory:

 

Ograniczenia adresowe procesora 8086 limitujące 
wielkość pamięci RAM do 1 MB zmusiły konstruktorów do 
poszukiwania sposobów zwiększenia dostępnej pamięci 
użytkowej. 

Technicznie uzyskano to poprzez zastosowanie 
dodatkowej karty pamięci z układami RAM - zwanej 
Expanded Memory. Fizycznie adresowanie tej 
dodatkowej pamięci rozszerzonej realizował standard LIM 
3.2

W wolnym nie wykorzystanym dotąd obszarze Upper 
Memory wydzielono specjalne okno - page frame - za 
pomocą którego można się odwoływać do dowolnego 
segmentu zainstalowanej pamięci dodatkowej Expanded 
Memory. Umożliwia to ściąganie w porcjach po 64 KB 
zawartości tej pamięci poprzez okno page frame do 
pamięci konwencjonalnej i użytkowanie zawartych w nich 
danych przez oprogramowanie aktywne z pamięci 
konwencjonalnej.

background image

22

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

background image

23

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Pamięć rozszerzona (Extended 
Memory):

 

Procesory 286 i nowsze posiadające ponad 20 bitową 
magistralę adresową umożliwiają bezpośrednie 
adresowanie pamięci RAM powyżej 1 MB. 

Szczególne znaczenie w obszarze Extended Memory ma 
pierwszy blok 64 KB powyżej granicy 1 MB - tzw. obszar 
wysokiej pamięci (High Memory Area) . 

W komputerach z procesorami 286 i nowszymi, przy 
zainstalowaniu pamięci RAM większej niż 1 MB, w wyniku 
segmentowego sposobu adresacji pamięci, istnieje 
możliwość wykorzystania tego obszaru przez DOS i 
umieszczaniu w nim zasobów systemu.

background image

24

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

background image

25

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Każdy program komputerowy, który został z kodu 
źródłowego przetworzony do postaci wykonywalnej (np. 
plik 

*.exe

) przed wykonaniem wczytywany jest do 

pamięci operacyjnej. 

Za proces wczytania programu odpowiada system 
operacyjny. To system określa, w którym miejscu w 
pamięci program ma być wczytany, tak by zajmowana 
pamięć nie pokryła się z obszarem innego programu. 

Zazwyczaj obszar pamięci zajmowanej przez program 
można podzielić na trzy główne obszary pokazane na 
poniższym rysunku.

background image

26

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

background image

27

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

obszar programu - to tutaj wczytany jest kod 

wykonywalny programu przeznaczony dla danego typu 
procesora i systemu operacyjnego. Wielkość obszaru 
pamięci zależy od ilości kodu źródłowego napisanego przez 
programistę oraz ilości użytych przez niego bibliotek z 
dodatkowymi funkcjami. Zazwyczaj nie przekracza ona 
wartości 1 lub 2 MB. 

background image

28

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

obszar danych - w tym obszarze przechowywane są dane, 

które są przetwarzane przez wykonywany program. Wielkość 
obszaru pamięci zajęta przez dane zależy ściśle od ilości 
zmiennych użytych przez programistę do przechowywania 
informacji. Może się zdarzyć, że niektóre programy 
komputerowe powinny przetwarzać dużą ilość danych i 
wtedy należy pamiętać przy pisaniu programu o jak 
najbardziej efektywnym wykorzystaniu dosyć ograniczonej 
ilości pamięci operacyjnej w komputerze. 

background image

29

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

stos - ten obszar pamięci służy do tymczasowego 

przechowywania danych, które są potrzebne tylko przez 
pewien czas przy wykonywaniu programu. Przykładem 
takich danych mogą być zmienne lokalne w funkcjach, 
które istnieją na stosie tylko w czasie wykonywania danej 
funkcji. Określenie stos oznacza sposób dostępu do 
danych. Kolejne zmienne zapamiętywane są na stosie w 
kolejnych komórkach pamięci analogicznie do układania 
np. stosu książek na stole. W danym momencie istnieje 
dostęp tylko do ostatniej zmiennej na szczycie stosu (tak 
samo jak tylko ostatnią książkę można wziąć ze stosu 
książek). Żeby uzyskać dostęp do zmiennych w środku 
stosu, to należy zdjąć wszystkie zmienne z jego 
wierzchołka. Taki sposób dostępu do danych określany 
jest czasem mianem 

LIFO - Last In, First Out (ostatni położony, pierwszy 

zdjęty). 

background image

30

Systemy operacyjne i sieci komputerowe

mgr Mirosław Brozio

Praca domowa:

Zadanie 1
Wyjaśnij dokładnie sposób zapisu i adresowania pamięci RAM   


Document Outline