Systemy operacyjne Studia podyplomowe 2015-2016 Wydział Informatyki PB dr inż. Marcin Czajkowski
Struktury pamięci masowej
Plan wykładu Pamięć RAM i ROM, pamięć podręczna (cache) i masowa Dostęp do dysku Macierze RAID System plików
Pamięć RAM Pamięć RAM (ang. Random Access Memory pamięć o dostępie swobodnym) pamięć używana do ładowania programów oraz wszystkich danych wprowadzanych za pomocą klawiatury lub innych urządzeń wejściowych przez użytkownika. Każde wyłączenie zasilania komputera powoduje jej wyczyszczenie (usunięcie z niej wszystkich informacji). Oznacza to, że jest to pamięć ulotna
Rodzaje ROM Pamięć ROM (ang. Read Only Memory - pamięć tylko do odczytu) pamięć nieulotna, w której umieszcza się informacje stałe. W pamięci ROM zapisywane są fabrycznie wszystkie procedury potrzebne do uruchomienia komputera i jego obsługi. Procedury te są zapisane w BIOS-ie. Pamięć ROM jest programowana przez producenta w trakcie procesu produkcyjnego
Pamięć ROM PROM (ang. Programmable ROM) - pamięć programowana przez przepalenie cieniutkich drucików wbudowanych w strukturę (tzw. "przepalanie połączeń" - jest to zapis jednokrotny) EPROM (ang. Erasable Programmable ROM) - pamięć, którą możemy zapisać za pomocą sygnałów elektrycznych, zaś kasowanie odbywa się poprzez naświetlanie ultrafioletem EEPROM (ang. Electrically Erasable Programmable ROM) - pamięć kasowana i programowana sygnałami elektrycznymi. Najpopularniejszy jej rodzaj: pamięć flash - nazwa wzięła się od szybkości zapisu (rzędu nanosekund)
Pamięć podręczna (cache) Pamięć dodatkowa (cache) - dodatkowa pamięć, która jest schowkiem danych podręcznych dla procesora. Najczęściej przechowywane są w niej dane używane do obliczeń, co przyczynia się do zwiększenia prędkości pracy komputera
Pamięć Masowa - wprowadzenie Pamięci masowe - pamięci trwałe, do długotrwałego przechowywania danych na nich zapisanych. Należą do nich: Nośniki magnetyczne: dyski twarde, dyskietki, pamięć taśmowa (taśmy) Nośniki optyczne: wszystkie rodzaje płyt np. CD-R, DVD-RW, BD_ROM itd. Pamięć półprzewodnikowa (flash): karty pamięci, dyski SSD, pamięć USB
Pamięć Masowa nośniki magnetyczne Struktura dysku: Dane przechowywane są na powierzchniach Maksimum dwie powierzchnie na talerzu. Co najmniej jeden talerz Dane znajdują się na koncentrycznych ścieżkach. Ścieżki podzielone są na sektory Odpowiednie ścieżki na wszystkich powierzchniach tworzą cylinder Dane są zapisywane i odczytywane przez głowice. Głowice przesuwane są przez napęd krokowy Wszystkie głowice przesuwane są jednocześnie Dysk z wymiennym lub niewymiennym nośnikiem
Pamięć Masowa porównanie nośników mag. Dyskietka vs mały dysk twardy
Pamięć Masowa napędy optyczne Płyta CD-R ma 4 warstwy: Poliwęglanowa warstwa ochronna w postaci plastikowego krążka (A) Warstwy organicznego barwnika, który ulega stopieniu w momencie zapisu (B) Warstwy odbijającej złotej lub aluminiowej (C) Warstwy ochronnej z lakieru (D) Płyta CD-RW Ptk. (B) zamiast barwnika ma światłoczułą warstwę, która pod wpływem silnego światła staje się matowa (nie odbija światła i zwraca zero ) lub półprzezroczysta (odbija światło od warstwy i zwraca jeden Płyty DVD ok 7 krotna większa gęstość zapisu Płyty dwuwarstwowe Laser może mieć różne długości fal lub kątów nachylenia
Pamięć półprzewodnikowa Zalety (dotyczy wszystkich flash tj. SSD, pendrive i kart pamięci) Brak ruchomych części Zdecydowanie krótszy czas dostępu do danych Cichsze i odporniejsze na uszkodzenia mechaniczne (np. wstrząsy/upadek) Większa niezawodność i odporność Wady: Zdecydowanie droższe Brak możliwości zmieniania/nadpisania istniejących plików!!! Aktualizacja wymaga stworzenia kopii zapasowej (strata pamięci) Kasowanie znacznie dłuższe niż zapis/odczyt gdyż dokonuje się gdy blok pamięci jest wolny od innych plików (ew. przenoszenie) Ilość cyklów zapisów danych ograniczona (5-100 tysięcy) zaś odczyt dowolny
Pamięć flash ciekawostki Prędkości pamięci USB: Przykładowo najnowsze USB 3.1 (2 gen.) przegra 50 GB dysk Blu-Ray w 38 sekund Dostęp do danych stronicowanie pamięci
Planowanie dostępu do dysku Czas dostępu do danych na dysku zależy od trzech składowych: czasu potrzebnego na ustawienie głowicy nad odpowiednią ścieżką, nazywanego czasem przeszukiwania (ang. seek time), czasu oczekiwania na pojawienie się pod głowicą odpowiedniego sektora nazywanego czasem oczekiwania (ang. latency time) czasu poświęconego na transfer informacji, nazywanego czasem przesłania. Najbardziej znaczącą (i jedyną na którą możemy mieć wpływ) jest składowa związana z czasem przeszukiwania. Metody dostępu pozwalają zminimalizować ten czas.
Metody przeszukiwania FCFS odpowiednik FIFO (słabe rezultaty, długie poszukiwania i może popsuć głowicę) SSTF (shortest seek-time-first) wybieramy te zlecenia, które położone są na ścieżce najbliżej bieżącego położenia głowicy (może zagładzać) SCAN jednostajne poruszanie się po całej głowicy i co wpadnie to jest realizowane (jak dojdzie do końca talerza to zmienia kierunek) Inne: C-SCAN, LOOK, C-LOOK, kolejki sektorów Więcej info wykład oryginalny
Efektywność i niezawodność (macierze RAID) Wydajność procesorów wzrasta wykładniczo. W przypadku dysków nie jest to prawdą. Czas dostępu jest ograniczony przez mechanikę dysku Niezawodność dysków nie jest wysoka. Nic dziwnego, dysk ma miliony sektorów. Rozwiązanie: wykorzystaj kilka dysków Dane przesyłane równolegle z wielu dysków Dane zapamiętane w paskach (ang. Stripe). Bit parzystości na dodatkowym dysku. Technika nosi nazwę RAID (ang. redudant array of independent drives).
Typy macierzy RAID raid 0 podział bloków na paski rozmieszczone na kilku dyskach raid 1 podział na paski i zdublowanie każdego dysku raid 2 podział odbywa się na poziomie bajtów; na każdym dysku zapisywany jest jeden bit słowa opatrzonego kodem detekcyjno-korekcyjnym Hamminga; wymaga dużej liczby dysków i synchronizacji ich głowic, raid 3 uproszczona wersja RAID 2, w której do każdego słowa dołączany jest bit parzystości, zapisywany na wyznaczonym do tego dysku, raid 4 jak wyżej, ale parzystość jest obliczana na poziomie pasków, nie wymaga synchronizacji, raid 5 paski parzystości nie są przechowywane na pojedynczym dysku, a zapisywane z przeplotem (ang. interleaving), czyli rozproszone po wszystkich dyskach macierzy. Niektóre poziomy macierzy RAID mogą być ze sobą kombinowane. Więcej info wykład oryginalny
Jednostki pamięci Bit - (ang. binary digit - cyfra dwójkowa) najmniejsza jednostka (porcja) informacji. Może zawierać jedną z dwóch wartości: 0 lub 1 Bajt - (ang. byte) liczba złożona z 8 bitów. Oznaczana symbolem B Do wyrażenia dużych pojemności pamięci używamy wielokrotności jednostki bajt (B): 1 kb (kilobajt) = 1024 B 1 MB (megabajt) = 1024 kb 1 GB (gigabajt) = 1024 MB 1 TB (terabajt) = 1024 GB 1 PB (petabajt) = 1024 TB 1 EB (exabajt) = 1024 PB
Jednostki transmisji danych Bit na sekundę - jednostką przesyłania danych jest bit na sekundę. Zapisywana najczęściej jako bps (ang. bit per second) lub b/s Do wyrażenia dużych szybkości transmisji używamy wielokrotności jednostki bps: kb/s (kbps) - kilobity na sekundę Mb/s (Mbps) - megabity na sekundę Gb/s (Gbps) - gigabity na sekundę Jeżeli prędkość przesyłu jest podana w bajtach, należy ją podzielić przez 8 np. 256 kb/s = 32 kb/s