Facebook - konwersja

Systemy operacyjne. Architektura, funkcjonowanie i projektowanie. Wydanie IX - ebook

Wydawnictwo:
Tłumacz:
Format:
MOBI
Data wydania:
31 sierpnia 2018
129,00
12900 pkt
punktów Virtualo

Systemy operacyjne. Architektura, funkcjonowanie i projektowanie. Wydanie IX - ebook

Systemy operacyjne cały czas są wzbogacane o innowacje i ulepszenia. Stają się też coraz bardziej wyspecjalizowane, co wynika z rosnącej różnorodności maszyn, które mają obsłużyć. Wystarczy tu wskazać systemy wbudowane, smartfony, komputery osobiste i komputery główne (ang. mainframe) oraz superkomputery, a także specjalne systemy czasu rzeczywistego. Znajomość wewnętrznych mechanizmów systemu i architektury jądra okazuje się zatem niezwykle istotna dla programistów i inżynierów. Bez tej wiedzy trudno mówić o niezawodności tworzonego oprogramowania.

Ta książka jest kolejnym, gruntownie przejrzanym i zaktualizowanym wydaniem klasycznego podręcznika, w którym jasno i wyczerpująco wyjaśniono koncepcje, strukturę i mechanizmy rządzące funkcjonowaniem nowoczesnych systemów operacyjnych. Wnikliwie omówiono również podstawowe zasady projektowania systemów operacyjnych i powiązano je ze współczesnymi zagadnieniami projektowymi oraz kierunkami rozwoju systemów operacyjnych. Aby zilustrować prezentowane treści, jako przykładami posłużono się czterema systemami: Windows, Android, Unix i Linux. W ten sposób koncepcje projektowe omawiane w danym rozdziale są natychmiast popierane rzeczywistymi przykładami.

Najważniejsze zagadnienia:

  • Przegląd systemów operacyjnych
  • Współbieżność i rozproszone zarządzanie procesami
  • Zarządzanie pamięcią i pamięć wirtualna
  • Bezpieczeństwo systemów operacyjnych
  • Operacje wejścia-wyjścia i zarządzanie przestrzenią dyskową
  • Odporność na awarie

Systemy operacyjne: poznaj i zaprojektuj!

DODATKOWE ROZDZIAŁY

Spis treści

Przedmowa (23)

O autorze (33)

CZĘŚĆ I. PODSTAWY (35)

Rozdział 1. Rzut oka na system komputerowy (37)

  • 1.1. PODSTAWOWE SKŁADOWE (38)
  • 1.2. EWOLUCJA MIKROPROCESORÓW (40)
  • 1.3. WYKONANIE ROZKAZU (40)
  • 1.4. PRZERWANIA (43)
    • Przerwania i cykl rozkazowy (45)
    • Przetwarzanie przerwania (47)
    • Przerwania wielokrotne (50)
  • 1.5. HIERARCHIA PAMIĘCI (53)
  • 1.6. PAMIĘĆ PODRĘCZNA (56)
    • Motywy (56)
    • Zasady działania pamięci podręcznej (56)
    • Projektowanie pamięci podręcznej (58)
  • 1.7. BEZPOŚREDNI DOSTĘP DO PAMIĘCI (60)
  • 1.8. ORGANIZACJA WIELOPROCESOROWA I WIELORDZENIOWA (61)
    • Wieloprocesory symetryczne (62)
    • Komputery wielordzeniowe (64)
  • 1.9. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (66)
    • Podstawowe pojęcia (66)
    • Pytania sprawdzające (66)
    • Zadania (67)
  • DODATEK 1A. CHARAKTERYSTYKA WYDAJNOŚCI PAMIĘCI DWUPOZIOMOWYCH (69)
    • Lokalność (70)
    • Działanie pamięci dwupoziomowej (72)
    • Wydajność (73)

Rozdział 2. Przegląd systemów operacyjnych (77)

  • 2.1. CELE I FUNKCJE SYSTEMU OPERACYJNEGO (78)
    • System operacyjny jako interfejs użytkownik - komputer (79)
    • System operacyjny jako zarządca zasobów (81)
    • Łatwość ewolucji systemu operacyjnego (82)
  • 2.2. ROZWÓJ SYSTEMÓW OPERACYJNYCH (83)
    • Przetwarzanie seryjne (83)
    • Proste systemy wsadowe (84)
    • Wieloprogramowe systemy wsadowe (87)
    • Systemy z podziałem czasu (90)
  • 2.3. NAJWAŻNIEJSZE OSIĄGNIĘCIA (92)
    • Proces (93)
    • Zarządzanie pamięcią (96)
    • Ochrona informacji i bezpieczeństwo (99)
    • Planowanie operowania zasobami (99)
  • 2.4. DROGA DO WSPÓŁCZESNYCH SYSTEMÓW OPERACYJNYCH (101)
  • 2.5. TOLEROWANIE AWARII (104)
    • Podstawowe pojęcia (104)
    • Wady (106)
    • Mechanizmy systemu operacyjnego (106)
  • 2.6. PROBLEMY PROJEKTOWANIA SYSTEMÓW OPERACYJNYCH WIELOPROCESORÓW I KOMPUTERÓW WIELORDZENIOWYCH (107)
    • Rozważania dotyczące wieloprocesorowego symetrycznego SO (107)
    • Rozważania dotyczące wielordzeniowych SO (108)
  • 2.7. PRZEGLĄD SYSTEMU MICROSOFT WINDOWS (110)
    • Rodowód (110)
    • Architektura (111)
    • Model klient-serwer (114)
    • Wątki i SMP (115)
    • Obiekty systemu Windows (116)
  • 2.8. TRADYCYJNE SYSTEMY UNIKSOWE (118)
    • Historia (118)
    • Opis (119)
  • 2.9. NOWOCZESNE SYSTEMY UNIKSOWE (120)
    • System V Release 4 (SVR4) (122)
    • System BSD (122)
    • Solaris 11 (122)
  • 2.10. LINUX (123)
    • Historia (123)
    • Struktura modularna (124)
    • Składowe jądra (126)
  • 2.11. ANDROID (129)
    • Architektura oprogramowania Androida (129)
    • Środowisko wykonawcze Androida (132)
    • Architektura systemu Android (135)
    • Czynności (136)
    • Zarządzanie zasilaniem (136)
  • 2.12. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (137)
    • Podstawowe pojęcia (137)
    • Pytania sprawdzające (138)
    • Zadania (138)

CZĘŚĆ II. PROCESY (141)

Rozdział 3. Pojęcie procesu i przebieg sterowania (143)

  • 3.1. CZYM JEST PROCES? (145)
    • Podstawy (145)
    • Procesy i bloki kontrolne procesów (146)
  • 3.2. STANY PROCESU (147)
    • Dwustanowy model procesu (150)
    • Tworzenie i likwidowanie procesów (151)
    • Model pięciostanowy (153)
    • Procesy zawieszone (157)
  • 3.3. OPIS PROCESU (162)
    • Struktury sterowania systemu operacyjnego (163)
    • Struktury sterowania procesu (165)
  • 3.4. STEROWANIE PROCESAMI (172)
    • Tryby wykonywania (172)
    • Tworzenie procesów (174)
    • Przełączanie procesów (174)
  • 3.5. WYKONYWANIE SYSTEMU OPERACYJNEGO (178)
    • Jądro nieprocesowe (178)
    • Wykonywanie w procesach użytkownika (179)
    • System operacyjny oparty na procesach (180)
  • 3.6. ZARZĄDZANIE PROCESAMI W SYSTEMIE UNIX SVR4 (181)
    • Stany procesu (181)
    • Opis procesu (183)
    • Sterowanie procesami (186)
  • 3.7. PODSUMOWANIE (186)
  • 3.8. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (187)
    • Podstawowe pojęcia (187)
    • Pytania sprawdzające (187)
    • Zadania (188)

Rozdział 4. Wątki (193)

  • 4.1. PROCESY I WĄTKI (194)
    • Wielowątkowość (195)
    • Funkcjonowanie wątków (198)
  • 4.2. RODZAJE WĄTKÓW (200)
    • Wątki poziomu użytkownika i wątki poziomu jądra (200)
    • Inne organizacje (205)
  • 4.3. WIELORDZENIOWOŚĆ I WIELOWĄTKOWOŚĆ (207)
    • Wydajność oprogramowania na wielu rdzeniach (207)
    • Przykład zastosowania: oprogramowanie gier Valve (210)
  • 4.4. ZARZĄDZANIE PROCESAMI I WĄTKAMI W SYSTEMIE WINDOWS (212)
    • Zarządzanie zadaniami drugoplanowymi i cyklami istnienia aplikacji (213)
    • Proces w systemie Windows (214)
    • Obiekty procesów i wątków (215)
    • Wielowątkowość (217)
    • Stany wątków (217)
    • Zaplecze podsystemów SO (218)
  • 4.5. ZARZĄDZANIE WĄTKAMI I WIELOPRZETWARZANIEM SYMETRYCZNYM W SYSTEMIE SOLARIS (219)
    • Architektura wielowątkowa (219)
    • Uzasadnienie (220)
    • Struktura procesu (220)
    • Wykonanie wątku (222)
    • Przerwania jako wątki (223)
  • 4.6. ZARZĄDZANIE PROCESAMI I WĄTKAMI W SYSTEMIE LINUX (223)
    • Prace Linuxa (223)
    • Wątki Linuxa (225)
    • Przestrzenie nazw Linuxa (226)
  • 4.7. ZARZĄDZANIE PROCESAMI I WĄTKAMI W SYSTEMIE ANDROID (229)
    • Aplikacje Androida (229)
    • Czynności (230)
    • Procesy i wątki (232)
  • 4.8. WIELKA CENTRALNA EKSPEDYCJA W SYSTEMIE MAC OS X (233)
  • 4.9. PODSUMOWANIE (235)
  • 4.10. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (236)
    • Podstawowe pojęcia (236)
    • Pytania sprawdzające (236)
    • Zadania (236)

Rozdział 5. Współbieżność ? wzajemne wykluczanie i synchronizacja (243)

  • 5.1. WZAJEMNE WYKLUCZANIE ? PODEJŚCIA PROGRAMOWE (246)
    • Algorytm Dekkera (246)
    • Algorytm Petersona (250)
  • 5.2. PODSTAWY WSPÓŁBIEŻNOŚCI (251)
    • Prosty przykład (252)
    • Szkodliwa rywalizacja (254)
    • Kwestie związane z systemem operacyjnym (255)
    • Interakcja procesów (255)
    • Wymagania dotyczące wzajemnego wykluczania (259)
  • 5.3. WZAJEMNE WYKLUCZANIE ? ZAPLECZE SPRZĘTOWE (260)
    • Blokowanie przerwań (260)
    • Specjalne rozkazy maszynowe (261)
  • 5.4. SEMAFORY (263)
    • Wzajemne wykluczanie (269)
    • Problem producenta-konsumenta (269)
    • Implementacja semaforów (275)
  • 5.5. MONITORY (277)
    • Monitor z sygnałem (277)
    • Alternatywny model monitora z powiadamianiem i rozgłaszaniem (281)
  • 5.6. PRZEKAZYWANIE KOMUNIKATÓW (283)
    • Synchronizacja (284)
    • Adresowanie (285)
    • Format komunikatów (287)
    • Dyscyplina kolejkowania (287)
    • Wzajemne wykluczanie (288)
  • 5.7. PROBLEM CZYTELNIKÓW I PISARZY (290)
    • Czytelnicy mają pierwszeństwo (291)
    • Pisarze mają pierwszeństwo (291)
  • 5.8. PODSUMOWANIE (294)
  • 5.9. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (295)
    • Podstawowe pojęcia (295)
    • Pytania sprawdzające (295)
    • Zadania (296)

Rozdział 6. Współbieżność ? zakleszczenia i głodzenie (311)

  • 6.1. NA CZYM POLEGA ZAKLESZCZENIE (312)
    • Zasoby niezużywalne (316)
    • Zasoby zużywalne (317)
    • Grafy przydziału zasobów (318)
    • Warunki występowania zakleszczenia (320)
  • 6.2. ZAPOBIEGANIE ZAKLESZCZENIOM (321)
    • Wzajemne wykluczanie (321)
    • Przetrzymywanie i oczekiwanie (321)
    • Brak wywłaszczeń (322)
    • Czekanie cykliczne (322)
  • 6.3. UNIKANIE ZAKLESZCZEŃ (322)
    • Odmowa wszczynania procesu (323)
    • Odmowa przydziału zasobu (324)
  • 6.4. WYKRYWANIE ZAKLESZCZEŃ (328)
    • Algorytm wykrywania zakleszczenia (328)
    • Rekonstrukcja (uzdrawianie) (329)
  • 6.5. POŁĄCZONE STRATEGIE POSTĘPOWANIA Z ZAKLESZCZENIAMI (330)
  • 6.6. PROBLEM OBIADUJĄCYCH FILOZOFÓW (331)
    • Rozwiązanie z użyciem semaforów (332)
    • Rozwiązanie z użyciem monitora (333)
  • 6.7. MECHANIZMY WSPÓŁBIEŻNOŚCI W SYSTEMIE UNIX (334)
    • Potoki (335)
    • Komunikaty (335)
    • Pamięć dzielona (335)
    • Semafory (336)
    • Sygnały (336)
  • 6.8. MECHANIZMY WSPÓŁBIEŻNOŚCI W JĄDRZE LINUXA (337)
    • Operacje niepodzielne (338)
    • Wirujące blokady (339)
    • Semafory (342)
    • Bariery (343)
  • 6.9. ELEMENTARNE OPERACJE SYNCHRONIZACJI W SYSTEMIE SOLARIS (345)
    • Zamek wzajemnego wykluczania (346)
    • Semafory (347)
    • Blokada czytelnicy - pisarz (347)
    • Zmienne warunków (348)
  • 6.10. MECHANIZMY SYNCHRONIZACJI W SYSTEMIE WINDOWS (348)
    • Funkcje czekania (348)
    • Obiekty dyspozytora (349)
    • Sekcje krytyczne (350)
    • Wąskie blokady czytelnicy - pisarze i zmienne warunków (351)
    • Synchronizacja bez blokad (351)
  • 6.11. KOMUNIKACJA MIĘDZYPROCESOWA W SYSTEMIE ANDROID (352)
  • 6.12. PODSUMOWANIE (353)
  • 6.13. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (354)
    • Pytania sprawdzające (354)
    • Zadania (354)

CZĘŚĆ III. PAMIĘĆ (363)

Rozdział 7. Zarządzanie pamięcią (365)

  • 7.1. WYMAGANIA DOTYCZĄCE ZARZĄDZANIA PAMIĘCIĄ (366)
    • Przemieszczanie (367)
    • Ochrona (368)
    • Współużytkowanie (368)
    • Organizacja logiczna (369)
    • Organizacja fizyczna (369)
  • 7.2. PODZIAŁ PAMIĘCI (370)
    • Podział stały (371)
    • Podział dynamiczny (374)
    • System kumplowski (377)
    • Przemieszczanie (380)
  • 7.3. STRONICOWANIE (381)
  • 7.4. SEGMENTACJA (385)
  • 7.5. PODSUMOWANIE (386)
  • 7.6. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (386)
    • Podstawowe pojęcia (386)
    • Pytania sprawdzające (387)
    • Zadania (387)
  • Dodatek 7.A. ŁADOWANIE I KONSOLIDACJA (390)
    • Ładowanie (390)
    • Konsolidacja (394)

Rozdział 8. Pamięć wirtualna (397)

  • 8.1. SPRZĘT I STRUKTURY STEROWANIA (398)
    • Lokalność i pamięć wirtualna (400)
    • Stronicowanie (402)
    • Segmentacja (413)
    • Połączenie stronicowania i segmentacji (414)
    • Ochrona i dzielenie (415)
  • 8.2. OPROGRAMOWANIE SYSTEMU OPERACYJNEGO (417)
    • Zasady pobierania (418)
    • Zasady umiejscawiania (419)
    • Zasady zastępowania (419)
    • Zarządzanie zbiorem rezydującym (426)
    • Zasady czyszczenia (433)
    • Kontrola załadowania (434)
  • 8.3. ZARZĄDZANIE PAMIĘCIĄ W SYSTEMACH UNIX I SOLARIS (436)
    • System stronicowania (436)
    • Alokator pamięci jądra (439)
  • 8.4. ZARZĄDZANIE PAMIĘCIĄ W LINUXIE (440)
    • Pamięć wirtualna Linuxa (441)
    • Przydział pamięci w jądrze (443)
  • 8.5. ZARZĄDZANIE PAMIĘCIĄ W SYSTEMIE WINDOWS (445)
    • Mapa adresów wirtualnych w systemie Windows (445)
    • Stronicowanie w systemie Windows (445)
    • Wymiana w systemie Windows (447)
  • 8.6. ZARZĄDZANIE PAMIĘCIĄ W ANDROIDZIE (447)
  • 8.7. PODSUMOWANIE (448)
  • 8.8. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (449)
    • Podstawowe pojęcia (449)
    • Pytania sprawdzające (449)
    • Zadania (450)

CZĘŚĆ IV. PLANOWANIE (455)

Rozdział 9. Planowanie jednoprocesorowe (457)

  • 9.1. RODZAJE PLANOWANIA PROCESORA (459)
    • Planowanie długoterminowe (461)
    • Planowanie średnioterminowe (461)
    • Planowanie krótkoterminowe (462)
  • 9.2. ALGORYTMY PLANOWANIA (462)
    • Kryteria planowania krótkoterminowego (462)
    • Zastosowanie priorytetów (463)
    • Alternatywne zasady planowania (465)
    • Porównanie efektywności (478)
    • Planowanie uczciwych udziałów (482)
  • 9.3. TRADYCYJNE PLANOWANIE UNIKSOWE (486)
  • 9.4. PODSUMOWANIE (488)
  • 9.5. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (489)
    • Podstawowe pojęcia (489)
    • Pytania sprawdzające (489)
    • Zadania (490)

Rozdział 10. Planowanie wieloprocesorowe, wielordzeniowe i w czasie rzeczywistym (495)

  • 10.1. PLANOWANIE WIELOPROCESOROWE I WIELORDZENIOWE (496)
    • Ziarnistość (497)
    • Zagadnienia projektowe (498)
    • Planowanie procesów (500)
    • Planowanie wątków (502)
    • Wielordzeniowe planowanie wątków (508)
  • 10.2. PLANOWANIE CZASU RZECZYWISTEGO (509)
    • Podstawy (509)
    • Charakterystyka systemów czasu rzeczywistego (510)
    • Planowanie czasu rzeczywistego (513)
    • Planowanie terminów nieprzekraczalnych (515)
    • Planowanie monotonicznego tempa (519)
    • Odwrócenie priorytetów (522)
  • 10.3. PLANOWANIE W SYSTEMIE LINUX (525)
    • Planowanie czasu rzeczywistego (525)
    • Planowanie poza czasem rzeczywistym (526)
  • 10.4. PLANOWANIE W SYSTEMIE UNIX SVR4 (528)
  • 10.5. PLANOWANIE W SYSTEMIE UNIX FREEBSD (530)
    • Klasy priorytetów (530)
    • SMP i zaplecze wielordzeniowości (531)
  • 10.6. PLANOWANIE W SYSTEMIE WINDOWS (533)
    • Priorytety procesów i wątków (534)
    • Planowanie wieloprocesorowe (536)
  • 10.7. PODSUMOWANIE (536)
  • 10.8. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (537)
    • Podstawowe pojęcia (537)
    • Pytania sprawdzające (537)
    • Zadania (537)

CZĘŚĆ V. WEJŚCIE-WYJŚCIE I PLIKI (541)

Rozdział 11. Zarządzanie wejściem-wyjściem i planowanie dysków (543)

  • 11.1. URZĄDZENIA WEJŚCIA-WYJŚCIA (544)
  • 11.2. ORGANIZACJA FUNKCJI WEJŚCIA-WYJŚCIA (546)
    • Ewolucja funkcji wejścia-wyjścia (547)
    • Bezpośredni dostęp do pamięci (547)
  • 11.3. ZAGADNIENIA PROJEKTOWANIA SYSTEMU OPERACYJNEGO (549)
    • Cele projektowe (549)
    • Logiczna struktura funkcji wejścia-wyjścia (550)
  • 11.4. BUFOROWANIE WEJŚCIA-WYJŚCIA (552)
    • Bufor pojedynczy (553)
    • Bufor podwójny (555)
    • Bufor cykliczny (555)
    • Użyteczność buforowania (555)
  • 11.5. PLANOWANIE DYSKÓW (556)
    • Parametry wydajnościowe dysku (556)
    • Sposoby planowania dysku (559)
  • 11.6. RAID (564)
    • RAID ? poziom 0 (565)
    • RAID ? poziom 1 (570)
    • RAID ? poziom 2 (571)
    • RAID ? poziom 3 (571)
    • RAID ? poziom 4 (572)
    • RAID ? poziom 5 (573)
    • RAID ? poziom 6 (573)
  • 11.7. PAMIĘĆ PODRĘCZNA DYSKU (574)
    • Zagadnienia projektowe (574)
    • Zagadnienia dotyczące wydajności (576)
  • 11.8. WEJŚCIE-WYJŚCIE W SYSTEMIE UNIX SVR4 (578)
    • Pamięć podręczna buforów (578)
    • Kolejka znakowa (580)
    • Niebuforowane wejście-wyjście (580)
    • Urządzenia uniksowe (580)
  • 11.9. WEJŚCIE-WYJŚCIE W SYSTEMIE LINUX (581)
    • Planowanie dysku (581)
    • Linuksowa podręczna pamięć stron (584)
  • 11.10. WEJŚCIE-WYJŚCIE W SYSTEMIE WINDOWS (585)
    • Podstawowe własności wejścia-wyjścia (585)
    • Wejście-wyjście asynchroniczne i synchroniczne (586)
    • Programowa realizacja RAID (587)
    • Kopie-cienie tomów dyskowych (587)
    • Szyfrowanie tomów (587)
  • 11.11. PODSUMOWANIE (587)
  • 11.12. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (588)
    • Podstawowe pojęcia (588)
    • Pytania sprawdzające (589)
    • Zadania (589)

Rozdział 12. Zarządzanie plikami (593)

  • 12.1. W SKRÓCIE (594)
    • Pliki i systemy plików (594)
    • Struktura pliku (595)
    • Systemy zarządzania plikami (597)
  • 12.2. ORGANIZACJA I DOSTĘP DO PLIKÓW (600)
    • Sterta (601)
    • Plik sekwencyjny (603)
    • Indeksowany plik sekwencyjny (603)
    • Plik indeksowy (604)
    • Plik bezpośredniego dostępu, czyli plik haszowany (605)
  • 12.3. B-DRZEWA (605)
  • 12.4. KATALOGI PLIKÓW (609)
    • Zawartość (609)
    • Struktura (610)
    • Nazewnictwo (612)
  • 12.5. DZIELENIE PLIKÓW (612)
    • Prawa dostępu (612)
    • Dostęp jednoczesny (614)
  • 12.6. BLOKOWANIE REKORDÓW (615)
  • 12.7. ZARZĄDZANIE PAMIĘCIĄ DRUGORZĘDNĄ (616)
    • Lokowanie plików (616)
    • Zarządzanie wolną przestrzenią (622)
    • Tomy, inaczej ? woluminy (624)
    • Niezawodność (624)
  • 12.8. ZARZĄDZANIE PLIKAMI W SYSTEMIE UNIX (625)
    • I-węzły (626)
    • Umiejscawianie plików (628)
    • Katalogi (629)
    • Struktura tomu (630)
  • 12.9. WIRTUALNY SYSTEM PLIKÓW W LINUXIE (630)
    • Obiekt superbloku (632)
    • Obiekt i-węzła (633)
    • Obiekt k-wpisu (633)
    • Obiekt pliku (633)
    • Pamięci podręczne (634)
  • 12.10. SYSTEM PLIKÓW WINDOWS (634)
    • Podstawowe cechy NTFS (634)
    • Wolumin NTFS i struktura pliku (635)
    • Odtwarzalność (638)
  • 12.11. ZARZĄDZANIE PLIKAMI W ANDROIDZIE (639)
    • System plików (639)
    • SQLite (641)
  • 12.12. PODSUMOWANIE (641)
  • 12.13. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (642)
    • Podstawowe pojęcia (642)
    • Pytania sprawdzające (643)
    • Zadania (643)

CZĘŚĆ VI. SYSTEMY WBUDOWANE (645)

Rozdział 13. Wbudowane systemy operacyjne (647)

  • 13.1. SYSTEMY WBUDOWANE (648)
    • Pojęcie systemu wbudowanego (648)
    • Procesory aplikacji a procesory do zadań specjalnych (650)
    • Mikroprocesory (650)
    • Mikrokontrolery (652)
    • Systemy głęboko wbudowane (653)
  • 13.2. CHARAKTERYSTYKA WBUDOWANYCH SYSTEMÓW OPERACYJNYCH (653)
    • Środowiska macierzyste i docelowe (655)
    • Metody opracowywania (657)
    • Adaptacja istniejących handlowych systemów operacyjnych (657)
    • Wbudowany system operacyjny skonstruowany w określonym celu (657)
  • 13.3. WBUDOWANY LINUX (658)
    • Charakterystyka wbudowanego Linuxa (658)
    • Systemy plików wbudowanego Linuxa (661)
    • Zalety wbudowanego Linuxa (661)
    • uClinux (662)
    • Android (665)
  • 13.4. TinyOS (665)
    • Bezprzewodowe sieci czujników (665)
    • Cele systemu TinyOS (666)
    • Składowe TinyOS-a (668)
    • Planista TinyOS-a (670)
    • Przykładowa konfiguracja (671)
    • Interfejs zasobów TinyOS-a (673)
  • 13.5. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (675)
    • Podstawowe pojęcia (675)
    • Pytania sprawdzające (675)
    • Zadania (675)

Rozdział 14. Maszyny wirtualne (679)

  • 14.1. KONCEPCJA MASZYNY WIRTUALNEJ (680)
  • 14.2. HIPERWIZORY (683)
    • Hiperwizory (684)
    • Parawirtualizacja (686)
    • Wirtualizacja z asystą sprzętu (687)
    • Aplikacje wirtualne (688)
  • 14.3. WIRTUALIZACJA KONTENEROWA (688)
    • Jądrowe grupy sterowania (689)
    • Pojęcie kontenera (689)
    • Kontenerowy system plików (693)
    • Mikrousługi (694)
    • Docker (694)
  • 14.4. ZAGADNIENIA DOTYCZĄCE PROCESORÓW (695)
  • 14.5. ZARZĄDZANIE PAMIĘCIĄ (697)
  • 14.6. ZARZĄDZANIE WEJŚCIEM-WYJŚCIEM (699)
  • 14.7. HIPERWIZOR VMWARE ESXI (701)
  • 14.8. MICROSOFTOWY HYPER-V I ODMIANY XENA (703)
  • 14.9. MASZYNA WIRTUALNA JAVY (705)
  • 14.10. ARCHITEKTURA MASZYNY WIRTUALNEJ LINUX VSERVER (706)
    • Architektura (706)
    • Planowanie procesów (707)
  • 14.11. PODSUMOWANIE (709)
  • 14.12. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (709)
    • Podstawowe pojęcia (709)
    • Pytania (problemy) sprawdzające (710)
    • Zadania (710)

Rozdział 15. Bezpieczeństwo systemów operacyjnych (711)

  • 15.1. INTRUZI I ZŁOŚLIWE OPROGRAMOWANIE (712)
    • Zagrożenia dostępu do systemu (712)
    • Środki zaradcze (714)
  • 15.2. PRZEPEŁNIENIE BUFORA (716)
    • Ataki z przepełnieniem bufora (717)
    • Obrona w fazie kompilacji (720)
    • Obrona w fazie wykonania (723)
  • 15.3. KONTROLOWANIE DOSTĘPU (725)
    • Kontrolowanie dostępu w systemie plików (725)
    • Zasady kontrolowania dostępu (727)
  • 15.4. KONTROLOWANIE DOSTĘPU W SYSTEMIE UNIX (733)
    • Konwencjonalna kontrola dostępu do plików uniksowych (733)
    • Listy kontroli dostępu w UNIX-ie (735)
  • 15.5. HARTOWANIE SYSTEMÓW OPERACYJNYCH (736)
    • Instalowanie systemu operacyjnego ? ustawienia początkowe i łatanie (737)
    • Usuwanie zbędnych usług, aplikacji i protokołów (738)
    • Konfigurowanie użytkowników, grup i uwierzytelniania (739)
    • Kształtowanie kontroli zasobów (739)
    • Wprowadzanie dodatkowych środków bezpieczeństwa (740)
    • Testowanie bezpieczeństwa systemu (740)
  • 15.6. DBAŁOŚĆ O BEZPIECZEŃSTWO (741)
    • Rejestrowanie zdarzeń (741)
    • Składowanie i archiwizowanie danych (742)
  • 15.7. BEZPIECZEŃSTWO W SYSTEMIE WINDOWS (742)
    • Schemat kontroli dostępu (743)
    • Żeton dostępu (743)
    • Deskryptory bezpieczeństwa (744)
  • 15.8. PODSUMOWANIE (748)
  • 15.9. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (748)
    • Podstawowe pojęcia (748)
    • Pytania sprawdzające (749)
    • Zadania (749)

Rozdział 16. Systemy operacyjne chmur i internetu rzeczy (753)

  • 16.1. OBLICZENIA W CHMURZE (754)
    • Elementy chmury obliczeniowej (754)
    • Modele usług chmurowych (756)
    • Modele realizacyjne chmur (757)
    • Wzorcowa architektura chmury obliczeniowej (760)
  • 16.2. CHMUROWE SYSTEMY OPERACYJNE (763)
    • Infrastruktura jako usługa (763)
    • Wymagania na chmurowy system operacyjny (765)
    • Ogólna architektura chmurowego systemu operacyjnego (766)
    • OpenStack (772)
  • 16.3. INTERNET RZECZY (IR) (780)
    • Rzeczy w internecie rzeczy (781)
    • Rozwój IR (781)
    • Elementy urządzeń podłączonych do IR (782)
    • IR i kontekst chmury (782)
  • 16.4. SYSTEMY OPERACYJNE IR (785)
    • Urządzenia ograniczone (785)
    • Wymagania dotyczące SOIR (787)
    • Architektura SOIR (789)
    • RIOT (790)
  • 16.5. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (793)
    • Podstawowe pojęcia (793)
    • Pytania sprawdzające (793)

DODATKI (795)

Dodatek A. Zagadnienia współbieżności (797)

  • A.1. SZKODLIWA RYWALIZACJA I SEMAFORY (798)
    • Sformułowanie problemu (798)
    • Pierwsza próba (798)
    • Druga próba (800)
    • Trzecia próba (801)
    • Czwarta próba (802)
    • Dobra próba (803)
  • A.2. PROBLEM ZAKŁADU FRYZJERSKIEGO (805)
    • Nieuczciwy zakład fryzjerski (805)
    • Uczciwy zakład fryzjerski (808)
  • A.3. Zadania (810)

Dodatek B. Projekty i zadania z programowania systemów operacyjnych (811)

  • B.1. PROJEKTY DOTYCZĄCE SEMAFORÓW (812)
  • B.2. PROJEKT DOTYCZĄCY SYSTEMÓW PLIKÓW (813)
  • B.3. OS/161 (813)
  • B.4. SYMULACJE (814)
  • B.5. PROJEKTY PROGRAMISTYCZNE (815)
    • Projekty zdefiniowane w podręczniku (815)
    • Dodatkowe większe projekty programistyczne (815)
    • Małe projekty programistyczne (816)
  • B.6. PROJEKTY BADAWCZE (816)
  • B.7. ZADANIA TYPU "PRZECZYTAJ I ZDAJ SPRAWĘ" (817)
  • B.8. PRACE DO NAPISANIA (817)
  • B.9. TEMATY DO DYSKUSJI (817)
  • B.10. BACI (818)

Literatura (819)

Źródła i zasady ich udostępnienia (831)

Skorowidz (833)

SPIS TREŚCI ROZDZIAŁÓW ONLINE

Rozdział 17. Protokoły sieciowe (1005)

  • 17.1. ZAPOTRZEBOWANIE NA ARCHITEKTURĘ PROTOKOŁÓW (1007)
  • 17.2. ARCHITEKTURA PROTOKOŁÓW TCP/IP (1010)
    • Warstwy TCP/IP (1010)
    • Protokoły TCP i UDP (1011)
    • Protokoły IP i IPv6 (1012)
    • Działanie TCP/IP (1014)
    • Zastosowania TCP/IP (1016)
  • 17.3. GNIAZDA (1017)
    • Pojęcie gniazda (1017)
    • Wywołania interfejsu gniazd (1018)
  • 17.4. PRACA SIECIOWA W SYSTEMIE LINUX (1019)
    • Wysyłanie danych (1022)
    • Odbieranie danych (1022)
  • 17.5. PODSUMOWANIE (1023)
  • 17.6. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (1023)
    • Podstawowe pojęcia (1023)
    • Pytania sprawdzające (1024)
    • Zadania (1024)
  • Dodatek 17A. TFTP ? BANALNY PROTOKÓŁ PRZESYŁANIA PLIKÓW (1027)
    • Wprowadzenie do TFTP (1027)
    • Pakiety TFTP (1027)
    • Rzut oka na przesyłanie (1029)
    • Błędy i opóźnienia (1030)
    • Składnia, semantyka i koordynacja w czasie (1031)

Rozdział 18. Przetwarzanie rozproszone, klient-serwer i grona (1033)

  • 18.1. OBLICZENIA W UKŁADZIE KLIENT-SERWER (1034)
    • Co to są obliczenia klient-serwer? (1034)
    • Aplikacje klient-serwer (1036)
    • Warstwa pośrednia (1043)
  • 18.2. ROZPROSZONE PRZEKAZYWANIE KOMUNIKATÓW (1045)
    • Niezawodność a zawodność (1047)
    • Blokowanie a nieblokowanie (1048)
  • 18.3. ZDALNE WYWOŁANIA PROCEDUR (1048)
    • Przekazywanie parametrów (1050)
    • Reprezentowanie parametrów (1050)
    • Wiązanie klienta z serwerem (1050)
    • Synchroniczne czy niesynchroniczne (1051)
    • Mechanizmy obiektowe (1051)
  • 18.4. GRONA, CZYLI KLASTRY (1052)
    • Konfigurowanie gron (1053)
    • Zagadnienia projektowe systemów operacyjnych (1055)
    • Architektura grona komputerów (1057)
    • Grona w porównaniu z SMP (1058)
  • 18.5. SERWER GRONA W SYSTEMIE WINDOWS (1058)
  • 18.6. BEOWULF I GRONA LINUKSOWE (1060)
    • Właściwości Beowulfa (1060)
    • Oprogramowanie Beowulfa (1061)
  • 18.7. PODSUMOWANIE (1062)
  • 18.8. LITERATURA (1063)
  • 18.9. PODSTAWOWE POJĘCIA, PYTANIA SPRAWDZAJĄCE I ZADANIA (1063)
    • Podstawowe pojęcia (1063)
    • Pytania sprawdzające (1064)
    • Zadania (1064)

Rozdział 19. Rozproszone zarządzanie procesami (1067)

  • 19.1. WĘDRÓWKA PROCESÓW (1068)
    • Uzasadnienie (1068)
    • Mechanizmy wędrówki procesów (1069)
    • Negocjowanie wędrówki (1073)
    • Eksmisja (1074)
    • Przeniesienia z wywłaszczaniem lub bez wywłaszczania (1075)
  • 19.2. ROZPROSZONE STANY GLOBALNE...
Kategoria: Systemy operacyjne
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-3760-2
Rozmiar pliku: 27 MB

BESTSELLERY

Menu

Zamknij