Категорії
Електронні книги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комп'ютер в офісі
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Мультимедійне навчання
- Нерухомість
- Переконання та НЛП
- Податки
- Соціальна політика
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Звіти, аналізи
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Електронна преса
- Architektura i wnętrza
- Biznes i Ekonomia
- Будинок та сад
- Електронний бізнес
- Фінанси
- Особисті фінанси
- Бізнес
- Фотографія
- Інформатика
- Відділ кадрів та оплата праці
- Комп'ютери, Excel
- Бухгалтерія
- Культура та література
- Наукові та академічні
- Охорона навколишнього середовища
- Впливові
- Освіта
- Податки
- Подорожі
- Психологія
- Релігія
- Сільське господарство
- Ринок книг і преси
- Транспорт та спедиція
- Здоров'я та краса
-
Історія
-
Інформатика
- Офісні застосунки
- Бази даних
- Біоінформатика
- Бізнес ІТ
- CAD/CAM
- Digital Lifestyle
- DTP
- Електроніка
- Цифрова фотографія
- Комп'ютерна графіка
- Ігри
- Хакування
- Hardware
- IT w ekonomii
- Наукові пакети
- Шкільні підручники
- Основи комп'ютера
- Програмування
- Мобільне програмування
- Інтернет-сервери
- Комп'ютерні мережі
- Стартап
- Операційні системи
- Штучний інтелект
- Технологія для дітей
- Вебмайстерність
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Оповідна поезія
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Шкільні підручники
-
Науково-популярна та академічна
- Археологія
- Bibliotekoznawstwo
- Кінознавство / Теорія кіно
- Філологія
- Польська філологія
- Філософія
- Finanse i bankowość
- Географія
- Економіка
- Торгівля. Світова економіка
- Історія та археологія
- Історія мистецтва і архітектури
- Культурологія
- Мовознавство
- літературні студії
- Логістика
- Математика
- Ліки
- Гуманітарні науки
- Педагогіка
- Навчальні засоби
- Науково-популярна
- Інше
- Психологія
- Соціологія
- Театральні студії
- Богослов’я
- Економічні теорії та науки
- Transport i spedycja
- Фізичне виховання
- Zarządzanie i marketing
-
Порадники
-
Ігрові посібники
-
Професійні та спеціальні порадники
-
Юридична
- Безпека життєдіяльності
- Історія
- Дорожній кодекс. Водійські права
- Юридичні науки
- Охорона здоров'я
- Загальне, компендіум
- Академічні підручники
- Інше
- Закон про будівництво і житло
- Цивільне право
- Фінансове право
- Господарське право
- Господарське та комерційне право
- Кримінальний закон
- Кримінальне право. Кримінальні злочини. Кримінологія
- Міжнародне право
- Міжнародне та іноземне право
- Закон про охорону здоров'я
- Закон про освіту
- Податкове право
- Трудове право та законодавство про соціальне забезпечення
- Громадське, конституційне та адміністративне право
- Кодекс про шлюб і сім'ю
- Аграрне право
- Соціальне право, трудове право
- Законодавство Євросоюзу
- Промисловість
- Сільське господарство та захист навколишнього середовища
- Словники та енциклопедії
- Державні закупівлі
- Управління
-
Путівники та подорожі
- Африка
- Альбоми
- Південна Америка
- Центральна та Північна Америка
- Австралія, Нова Зеландія, Океанія
- Австрія
- Азії
- Балкани
- Близький Схід
- Болгарія
- Китай
- Хорватія
- Чеська Республіка
- Данія
- Єгипет
- Естонія
- Європа
- Франція
- Гори
- Греція
- Іспанія
- Нідерланди
- Ісландія
- Литва
- Латвія
- Mapy, Plany miast, Atlasy
- Мініпутівники
- Німеччина
- Норвегія
- Активні подорожі
- Польща
- Португалія
- Інше
- Росія
- Румунія
- Словаччина
- Словенія
- Швейцарія
- Швеція
- Світ
- Туреччина
- Україна
- Угорщина
- Велика Британія
- Італія
-
Психологія
- Філософія життя
- Kompetencje psychospołeczne
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Аудіокниги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Нерухомість
- Переконання та НЛП
- Податки
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Історія
-
Інформатика
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Науково-популярна та академічна
-
Порадники
-
Професійні та спеціальні порадники
-
Юридична
-
Путівники та подорожі
-
Психологія
- Філософія життя
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Відеокурси
-
Бази даних
-
Big Data
-
Biznes, ekonomia i marketing
-
Кібербезпека
-
Data Science
-
DevOps
-
Для дітей
-
Електроніка
-
Графіка / Відео / CAX
-
Ігри
-
Microsoft Office
-
Інструменти розробки
-
Програмування
-
Особистісний розвиток
-
Комп'ютерні мережі
-
Операційні системи
-
Тестування програмного забезпечення
-
Мобільні пристрої
-
UX/UI
-
Веброзробка, Web development
-
Управління
Подкасти
- Електронні книги
- Операційні системи
- Linux
- Systemy operacyjne. Wydanie IV
Деталі електронної книги
Увійти, Якщо вас цікавить зміст видання.
Wszystko o systemach operacyjnych!
System operacyjny to niezwykle złożone środowisko, które zarządza Twoim sprzętem, uprawnieniami i setkami innych rzeczy. Jednak jego najważniejszym zadaniem jest uruchamianie programów, z których chcą korzystać użytkownicy. Edytory tekstów, programy graficzne, księgowe i inne nie mogłyby istnieć, gdyby nie możliwości współczesnych systemów operacyjnych.Jeżeli chcesz poznać niuanse ich działania, najlepsze sposoby optymalizacji ich pracy oraz podstawy administrowania, trafiłeś na genialną książkę. Jest to kolejne wydanie światowego bestsellera, w którym w jasny sposób przedstawione zostały kluczowe informacje na temat systemów operacyjnych. W trakcie lektury poznasz dostępne systemy, ich możliwości, zalety oraz wady. Zaznajomisz się z fachowymi pojęciami oraz słownictwem. W kolejnych rozdziałach znajdziesz tematy związane z zarządzaniem procesami i wątkami. Dowiesz się, jak zorganizowane są pliki na dysku, czym jest wirtualizacja oraz dlaczego systemy są podatne na ataki. Ta książka jest obowiązkową lekturą dla pasjonatów informatyki chcących zrozumieć, jak pracują ich komputery.
Dzięki tej książce:
- dowiesz się, czym są proces i wątek
- poznasz zalety i wady dostępnych systemów operacyjnych
- zanalizujesz organizację plików na Twoim dysku
- poznasz fachowe słownictwo
- pogłębisz swoją informatyczną wiedzę
Idealna lektura dla każdego pasjonata informatyki!
Andrew S. Tanenbaum — profesor informatyki, zdobywca grantu European Research Council Advanced na badania nad niezawodnością w systemach komputerowych. Prowadził badania związane z kompilatorami, systemami operacyjnymi oraz sieciami komputerowymi. jest cenionym publicystą.
Herbert Bos — profesor na Uniwersytecie w Amsterdamie. Jego prace poruszają zagadnienia takie jak bezpieczeństwo oraz wsparcie sieci komputerowych w systemach operacyjnych. Jest zaangażowany w projekty MINIX 3 oraz Rosetta.
Przedmowa (23)
O autorach (27)
1. Wprowadzenie (29)
- 1.1. CZYM JEST SYSTEM OPERACYJNY? (31)
- 1.1.1. System operacyjny jako rozszerzona maszyna (32)
- 1.1.2. System operacyjny jako menedżer zasobów (33)
- 1.2. HISTORIA SYSTEMÓW OPERACYJNYCH (34)
- 1.2.1. Pierwsza generacja (1945 - 1955) - lampy elektronowe (35)
- 1.2.2. Druga generacja (1955 - 1965) - tranzystory i systemy wsadowe (35)
- 1.2.3. Trzecia generacja (1965 - 1980) - układy scalone i wieloprogramowość (37)
- 1.2.4. Czwarta generacja (1980 - czasy współczesne) - komputery osobiste (42)
- 1.2.5. Piąta generacja (1990 - czasy współczesne) - komputery mobilne (46)
- 1.3. SPRZĘT KOMPUTEROWY - PRZEGLĄD (47)
- 1.3.1. Procesory (47)
- 1.3.2. Pamięć (51)
- 1.3.3. Dyski (54)
- 1.3.4. Urządzenia wejścia-wyjścia (55)
- 1.3.5. Magistrale (58)
- 1.3.6. Uruchamianie komputera (61)
- 1.4. PRZEGLĄD SYSTEMÓW OPERACYJNYCH (61)
- 1.4.1. Systemy operacyjne komputerów mainframe (62)
- 1.4.2. Systemy operacyjne serwerów (62)
- 1.4.3. Wieloprocesorowe systemy operacyjne (62)
- 1.4.4. Systemy operacyjne komputerów osobistych (63)
- 1.4.5. Systemy operacyjne komputerów podręcznych (63)
- 1.4.6. Wbudowane systemy operacyjne (63)
- 1.4.7. Systemy operacyjne węzłów sensorowych (64)
- 1.4.8. Systemy operacyjne czasu rzeczywistego (64)
- 1.4.9. Systemy operacyjne kart elektronicznych (65)
- 1.5. POJĘCIA DOTYCZĄCE SYSTEMÓW OPERACYJNYCH (65)
- 1.5.1. Procesy (65)
- 1.5.2. Przestrzenie adresowe (67)
- 1.5.3. Pliki (68)
- 1.5.4. Wejście-wyjście (71)
- 1.5.5. Zabezpieczenia (71)
- 1.5.6. Powłoka (71)
- 1.5.7. Ontogeneza jest rekapitulacją filogenezy (73)
- 1.6. WYWOŁANIA SYSTEMOWE (76)
- 1.6.1. Wywołania systemowe do zarządzania procesami (79)
- 1.6.2. Wywołania systemowe do zarządzania plikami (82)
- 1.6.3. Wywołania systemowe do zarządzania katalogami (83)
- 1.6.4. Różne wywołania systemowe (85)
- 1.6.5. Interfejs Win32 API systemu Windows (85)
- 1.7. STRUKTURA SYSTEMÓW OPERACYJNYCH (88)
- 1.7.1. Systemy monolityczne (88)
- 1.7.2. Systemy warstwowe (89)
- 1.7.3. Mikrojądra (90)
- 1.7.4. Model klient-serwer (93)
- 1.7.5. Maszyny wirtualne (93)
- 1.7.6. Egzojądra (97)
- 1.8. ŚWIAT WEDŁUG JĘZYKA C (98)
- 1.8.1. Język C (98)
- 1.8.2. Pliki nagłówkowe (99)
- 1.8.3. Duże projekty programistyczne (100)
- 1.8.4. Model fazy działania (100)
- 1.9. BADANIA DOTYCZĄCE SYSTEMÓW OPERACYJNYCH (101)
- 1.10. PLAN POZOSTAŁEJ CZĘŚCI KSIĄŻKI (103)
- 1.11. JEDNOSTKI MIAR (104)
- 1.12. PODSUMOWANIE (104)
2. Procesy i wątki (109)
- 2.1. PROCESY (109)
- 2.1.1. Model procesów (110)
- 2.1.2. Tworzenie procesów (112)
- 2.1.3. Kończenie działania procesów (114)
- 2.1.4. Hierarchie procesów (115)
- 2.1.5. Stany procesów (115)
- 2.1.6. Implementacja procesów (117)
- 2.1.7. Modelowanie wieloprogramowości (119)
- 2.2. WĄTKI (120)
- 2.2.1. Wykorzystanie wątków (121)
- 2.2.2. Klasyczny model wątków (125)
- 2.2.3. Wątki POSIX (129)
- 2.2.4. Implementacja wątków w przestrzeni użytkownika (131)
- 2.2.5. Implementacja wątków w jądrze (134)
- 2.2.6. Implementacje hybrydowe (135)
- 2.2.7. Mechanizm aktywacji zarządcy (135)
- 2.2.8. Wątki pop-up (137)
- 2.2.9. Przystosowywanie kodu jednowątkowego do obsługi wielu wątków (138)
- 2.3. KOMUNIKACJA MIĘDZY PROCESAMI (141)
- 2.3.1. Wyścig (141)
- 2.3.2. Regiony krytyczne (143)
- 2.3.3. Wzajemne wykluczanie z wykorzystaniem aktywnego oczekiwania (144)
- 2.3.4. Wywołania sleep i wakeup (149)
- 2.3.5. Semafory (151)
- 2.3.6. Muteksy (154)
- 2.3.7. Monitory (159)
- 2.3.8. Przekazywanie komunikatów (164)
- 2.3.9. Bariery (167)
- 2.3.10. Unikanie blokad: odczyt-kopiowanie-aktualizacja (168)
- 2.4. SZEREGOWANIE (169)
- 2.4.1. Wprowadzenie do szeregowania (170)
- 2.4.2. Szeregowanie w systemach wsadowych (176)
- 2.4.3. Szeregowanie w systemach interaktywnych (178)
- 2.4.4. Szeregowanie w systemach czasu rzeczywistego (184)
- 2.4.5. Oddzielenie strategii od mechanizmu (185)
- 2.4.6. Szeregowanie wątków (185)
- 2.5. KLASYCZNE PROBLEMY KOMUNIKACJI MIĘDZY PROCESAMI (187)
- 2.5.1. Problem pięciu filozofów (187)
- 2.5.2. Problem czytelników i pisarzy (190)
- 2.6. PRACE BADAWCZE NAD PROCESAMI I WĄTKAMI (191)
- 2.7. PODSUMOWANIE (192)
3. Zarządzanie pamięcią (201)
- 3.1. BRAK ABSTRAKCJI PAMIĘCI (202)
- 3.2. ABSTRAKCJA PAMIĘCI: PRZESTRZENIE ADRESOWE (205)
- 3.2.1. Pojęcie przestrzeni adresowej (205)
- 3.2.2. Wymiana pamięci (207)
- 3.2.3. Zarządzanie wolną pamięcią (210)
- 3.3. PAMIĘĆ WIRTUALNA (213)
- 3.3.1. Stronicowanie (214)
- 3.3.2. Tabele stron (217)
- 3.3.3. Przyspieszenie stronicowania (219)
- 3.3.4. Tabele stron dla pamięci o dużej objętości (223)
- 3.4. ALGORYTMY ZASTĘPOWANIA STRON (226)
- 3.4.1. Optymalny algorytm zastępowania stron (227)
- 3.4.2. Algorytm NRU (228)
- 3.4.3. Algorytm FIFO (229)
- 3.4.4. Algorytm drugiej szansy (229)
- 3.4.5. Algorytm zegarowy (230)
- 3.4.6. Algorytm LRU (231)
- 3.4.7. Programowa symulacja algorytmu LRU (231)
- 3.4.8. Algorytm bazujący na zbiorze roboczym (233)
- 3.4.9. Algorytm WSClock (236)
- 3.4.10. Podsumowanie algorytmów zastępowania stron (238)
- 3.5. PROBLEMY PROJEKTOWE SYSTEMÓW STRONICOWANIA (239)
- 3.5.1. Lokalne i globalne strategie alokacji pamięci (239)
- 3.5.2. Zarządzanie obciążeniem (241)
- 3.5.3. Rozmiar strony (242)
- 3.5.4. Osobne przestrzenie instrukcji i danych (243)
- 3.5.5. Strony współdzielone (244)
- 3.5.6. Biblioteki współdzielone (246)
- 3.5.7. Pliki odwzorowane w pamięci (248)
- 3.5.8. Strategia czyszczenia (248)
- 3.5.9. Interfejs pamięci wirtualnej (249)
- 3.6. PROBLEMY IMPLEMENTACJI (249)
- 3.6.1. Zadania systemu operacyjnego w zakresie stronicowania (250)
- 3.6.2. Obsługa błędów braku strony (250)
- 3.6.3. Archiwizowanie instrukcji (251)
- 3.6.4. Blokowanie stron w pamięci (253)
- 3.6.5. Magazyn stron (253)
- 3.6.6. Oddzielenie strategii od mechanizmu (255)
- 3.7. SEGMENTACJA (256)
- 3.7.1. Implementacja klasycznej segmentacji (259)
- 3.7.2. Segmentacja ze stronicowaniem: MULTICS (260)
- 3.7.3. Segmentacja ze stronicowaniem: Intel x86 (263)
- 3.8. BADANIA DOTYCZĄCE ZARZĄDZANIA PAMIĘCIĄ (267)
- 3.9. PODSUMOWANIE (268)
4. Systemy plików (279)
- 4.1. PLIKI (281)
- 4.1.1. Nazwy plików (281)
- 4.1.2. Struktura pliku (283)
- 4.1.3. Typy plików (284)
- 4.1.4. Dostęp do plików (286)
- 4.1.5. Atrybuty plików (286)
- 4.1.6. Operacje na plikach (288)
- 4.1.7. Przykładowy program wykorzystujący wywołania obsługi systemu plików (289)
- 4.2. KATALOGI (291)
- 4.2.1. Jednopoziomowe systemy katalogów (291)
- 4.2.2. Hierarchiczne systemy katalogów (292)
- 4.2.3. Nazwy ścieżek (292)
- 4.2.4. Operacje na katalogach (294)
- 4.3. IMPLEMENTACJA SYSTEMU PLIKÓW (296)
- 4.3.1. Układ systemu plików (296)
- 4.3.2. Implementacja plików (297)
- 4.3.3. Implementacja katalogów (302)
- 4.3.4. Pliki współdzielone (304)
- 4.3.5. Systemy plików o strukturze dziennika (306)
- 4.3.6. Księgujące systemy plików (308)
- 4.3.7. Wirtualne systemy plików (310)
- 4.4. ZARZĄDZANIE SYSTEMEM PLIKÓW I OPTYMALIZACJA (313)
- 4.4.1. Zarządzanie miejscem na dysku (313)
- 4.4.2. Kopie zapasowe systemu plików (319)
- 4.4.3. Spójność systemu plików (324)
- 4.4.4. Wydajność systemu plików (327)
- 4.4.5. Defragmentacja dysków (332)
- 4.5. PRZYKŁADOWY SYSTEM PLIKÓW (332)
- 4.5.1. System plików MS-DOS (333)
- 4.5.2. System plików V7 systemu UNIX (336)
- 4.5.3. Systemy plików na płytach CD-ROM (338)
- 4.6. BADANIA DOTYCZĄCE SYSTEMÓW PLIKÓW (343)
- 4.7. PODSUMOWANIE (344)
5. Wejście-wyjście (349)
- 5.1. WARUNKI, JAKIE POWINIEN SPEŁNIAĆ SPRZĘT WEJŚCIA-WYJŚCIA (349)
- 5.1.1. Urządzenia wejścia-wyjścia (350)
- 5.1.2. Kontrolery urządzeń (351)
- 5.1.3. Urządzenia wejścia-wyjścia odwzorowane w pamięci (352)
- 5.1.4. Bezpośredni dostęp do pamięci (DMA) (355)
- 5.1.5. O przerwaniach raz jeszcze (358)
- 5.2. WARUNKI, JAKIE POWINNO SPEŁNIAĆ OPROGRAMOWANIE WEJŚCIA-WYJŚCIA (362)
- 5.2.1. Cele oprogramowania wejścia-wyjścia (362)
- 5.2.2. Programowane wejście-wyjście (364)
- 5.2.3. Wejście-wyjście sterowane przerwaniami (365)
- 5.2.4. Wejście-wyjście z wykorzystaniem DMA (366)
- 5.3. WARSTWY OPROGRAMOWANIA WEJŚCIA-WYJŚCIA (367)
- 5.3.1. Procedury obsługi przerwań (367)
- 5.3.2. Sterowniki urządzeń (368)
- 5.3.3. Oprogramowanie wejścia-wyjścia niezależne od urządzeń (372)
- 5.3.4. Oprogramowanie wejścia-wyjścia w przestrzeni użytkownika (377)
- 5.4. DYSKI (379)
- 5.4.1. Sprzęt (379)
- 5.4.2. Formatowanie dysków (384)
- 5.4.3. Algorytmy szeregowania ramienia dysku (388)
- 5.4.4. Obsługa błędów (391)
- 5.4.5. Stabilna pamięć masowa (393)
- 5.5. ZEGARY (396)
- 5.5.1. Sprzęt obsługi zegara (397)
- 5.5.2. Oprogramowanie obsługi zegara (398)
- 5.5.3. Zegary programowe (400)
- 5.6. INTERFEJSY UŻYTKOWNIKÓW: KLAWIATURA, MYSZ, MONITOR (402)
- 5.6.1. Oprogramowanie do wprowadzania danych (402)
- 5.6.2. Oprogramowanie do generowania wyjścia (407)
- 5.7. CIENKIE KLIENTY (423)
- 5.8. ZARZĄDZANIE ENERGIĄ (424)
- 5.8.1. Problemy sprzętowe (425)
- 5.8.2. Problemy po stronie systemu operacyjnego (426)
- 5.8.3. Problemy do rozwiązania w programach aplikacyjnych (432)
- 5.9. BADANIA DOTYCZĄCE WEJŚCIA-WYJŚCIA (433)
- 5.10. PODSUMOWANIE (435)
6. Zakleszczenia (443)
- 6.1. ZASOBY (444)
- 6.1.1. Zasoby z możliwością wywłaszczania i bez niej (444)
- 6.1.2. Zdobywanie zasobu (445)
- 6.2. WPROWADZENIE W TEMATYKĘ ZAKLESZCZEŃ (447)
- 6.2.1. Warunki powstawania zakleszczeń zasobów (447)
- 6.2.2. Modelowanie zakleszczeń (448)
- 6.3. ALGORYTM STRUSIA (450)
- 6.4. WYKRYWANIE ZAKLESZCZEŃ I ICH USUWANIE (451)
- 6.4.1. Wykrywanie zakleszczeń z jednym zasobem każdego typu (451)
- 6.4.2. Wykrywanie zakleszczeń dla przypadku wielu zasobów każdego typu (453)
- 6.4.3. Usuwanie zakleszczeń (455)
- 6.5. UNIKANIE ZAKLESZCZEŃ (457)
- 6.5.1. Trajektorie zasobów (457)
- 6.5.2. Stany bezpieczne i niebezpieczne (458)
- 6.5.3. Algorytm bankiera dla pojedynczego zasobu (459)
- 6.5.4. Algorytm bankiera dla wielu zasobów (460)
- 6.6. PRZECIWDZIAŁANIE ZAKLESZCZENIOM (462)
- 6.6.1. Atak na warunek wzajemnego wykluczania (462)
- 6.6.2. Atak na warunek wstrzymania i oczekiwania (463)
- 6.6.3. Atak na warunek braku wywłaszczania (463)
- 6.6.4. Atak na warunek cyklicznego oczekiwania (463)
- 6.7. INNE PROBLEMY (464)
- 6.7.1. Blokowanie dwufazowe (465)
- 6.7.2. Zakleszczenia komunikacyjne (465)
- 6.7.3. Uwięzienia (468)
- 6.7.4. Zagłodzenia (469)
- 6.8. BADANIA NA TEMAT ZAKLESZCZEŃ (469)
- 6.9. PODSUMOWANIE (470)
7. Wirtualizacja i przetwarzanie w chmurze (477)
- 7.1. HISTORIA (479)
- 7.2. WYMAGANIA DOTYCZĄCE WIRTUALIZACJI (480)
- 7.3. HIPERNADZORCY TYPU 1 I TYPU 2 (483)
- 7.4. TECHNIKI SKUTECZNEJ WIRTUALIZACJI (484)
- 7.4.1. Wirtualizacja systemów bez obsługi wirtualizacji (485)
- 7.4.2. Koszt wirtualizacji (487)
- 7.5. CZY HIPERNADZORCY SĄ PRAWIDŁOWYMI MIKROJĄDRAMI? (488)
- 7.6. WIRTUALIZACJA PAMIĘCI (491)
- 7.7. WIRTUALIZACJA WEJŚCIA-WYJŚCIA (495)
- 7.8. URZĄDZENIA WIRTUALNE (498)
- 7.9. MASZYNY WIRTUALNE NA PROCESORACH WIELORDZENIOWYCH (498)
- 7.10. PROBLEMY LICENCYJNE (499)
- 7.11. CHMURY OBLICZENIOWE (500)
- 7.11.1. Chmury jako usługa (500)
- 7.11.2. Migracje maszyn wirtualnych (501)
- 7.11.3. Punkty kontrolne (502)
- 7.12. STUDIUM PRZYPADKU: VMWARE (502)
- 7.12.1. Wczesna historia firmy VMware (503)
- 7.12.2. VMware Workstation (504)
- 7.12.3. Wyzwania podczas opracowywania warstwy wirtualizacji na platformie x86 (505)
- 7.12.4. VMware Workstation: przegląd informacji o rozwiązaniu (506)
- 7.12.5. Ewolucja systemu VMware Workstation (515)
- 7.12.6. ESX Server: hipernadzorca typu 1 firmy VMware (515)
- 7.13. BADANIA NAD WIRTUALIZACJĄ I CHMURĄ (517)
8. Systemy wieloprocesorowe (521)
- 8.1. SYSTEMY WIELOPROCESOROWE (523)
- 8.1.1. Sprzęt wieloprocesorowy (524)
- 8.1.2. Typy wieloprocesorowych systemów operacyjnych (534)
- 8.1.3. Synchronizacja w systemach wieloprocesorowych (538)
- 8.1.4. Szeregowanie w systemach wieloprocesorowych (542)
- 8.2. WIELOKOMPUTERY (548)
- 8.2.1. Sprzęt wielokomputerów (548)
- 8.2.2. Niskopoziomowe oprogramowanie komunikacyjne (552)
- 8.2.3. Oprogramowanie komunikacyjne poziomu użytkownika (555)
- 8.2.4. Zdalne wywołania procedur (558)
- 8.2.5. Rozproszona współdzielona pamięć (560)
- 8.2.6. Szeregowanie systemów wielokomputerowych (565)
- 8.2.7. Równoważenie obciążenia (565)
- 8.3. SYSTEMY ROZPROSZONE (568)
- 8.3.1. Sprzęt sieciowy (570)
- 8.3.2. Usługi i protokoły sieciowe (573)
- 8.3.3. Warstwa middleware bazująca na dokumentach (576)
- 8.3.4. Warstwa middleware bazująca na systemie plików (578)
- 8.3.5. Warstwa middleware bazująca na obiektach (582)
- 8.3.6. Warstwa middleware bazująca na koordynacji (584)
- 8.4. BADANIA DOTYCZĄCE SYSTEMÓW WIELOPROCESOROWYCH (586)
- 8.5. PODSUMOWANIE (587)
9. Bezpieczeństwo (593)
- 9.1. ŚRODOWISKO BEZPIECZEŃSTWA (595)
- 9.1.1. Zagrożenia (596)
- 9.1.2. Intruzi (598)
- 9.2. BEZPIECZEŃSTWO SYSTEMÓW OPERACYJNYCH (599)
- 9.2.1. Czy możemy budować bezpieczne systemy? (600)
- 9.2.2. Zaufana baza obliczeniowa (601)
- 9.3. KONTROLOWANIE DOSTĘPU DO ZASOBÓW (602)
- 9.3.1. Domeny ochrony (602)
- 9.3.2. Listy kontroli dostępu (605)
- 9.3.3. Uprawnienia (607)
- 9.4. MODELE FORMALNE BEZPIECZNYCH SYSTEMÓW (610)
- 9.4.1. Bezpieczeństwo wielopoziomowe (612)
- 9.4.2. Ukryte kanały (614)
- 9.5. PODSTAWY KRYPTOGRAFII (619)
- 9.5.1. Kryptografia z kluczem tajnym (620)
- 9.5.2. Kryptografia z kluczem publicznym (621)
- 9.5.3. Funkcje jednokierunkowe (622)
- 9.5.4. Podpisy cyfrowe (622)
- 9.5.5. Moduły TPM (624)
- 9.6. UWIERZYTELNIANIE (626)
- 9.6.1. Uwierzytelnianie z wykorzystaniem obiektu fizycznego (633)
- 9.6.2. Uwierzytelnianie z wykorzystaniem technik biometrycznych (635)
- 9.7. WYKORZYSTYWANIE BŁĘDÓW W KODZIE (638)
- 9.7.1. Ataki z wykorzystaniem przepełnienia bufora (640)
- 9.7.2. Ataki z wykorzystaniem łańcuchów formatujących (648)
- 9.7.3. "Wiszące wskaźniki" (651)
- 9.7.4. Ataki bazujące na odwołaniach do pustego wskaźnika (652)
- 9.7.5. Ataki z wykorzystaniem przepełnień liczb całkowitych (653)
- 9.7.6. Ataki polegające na wstrzykiwaniu kodu (654)
- 9.7.7. Ataki TOCTOU (655)
- 9.8. ATAKI Z WEWNĄTRZ (656)
- 9.8.1. Bomby logiczne (656)
- 9.8.2. Tylne drzwi (656)
- 9.8.3. Podszywanie się pod ekran logowania (657)
- 9.9. ZŁOŚLIWE OPROGRAMOWANIE (658)
- 9.9.1. Konie trojańskie (661)
- 9.9.2. Wirusy (663)
- 9.9.3. Robaki (673)
- 9.9.4. Oprogramowanie szpiegujące (676)
- 9.9.5. Rootkity (680)
- 9.10. ŚRODKI OBRONY (684)
- 9.10.1. Firewalle (685)
- 9.10.2. Techniki antywirusowe i antyantywirusowe (687)
- 9.10.3. Podpisywanie kodu (693)
- 9.10.4. Wtrącanie do więzienia (695)
- 9.10.5. Wykrywanie włamań z użyciem modeli (695)
- 9.10.6. Izolowanie kodu mobilnego (697)
- 9.10.7. Bezpieczeństwo Javy (701)
- 9.11. BADANIA DOTYCZĄCE BEZPIECZEŃSTWA (704)
- 9.12. PODSUMOWANIE (705)
10. Pierwsze studium przypadku: UNIX, Linux i Android (715)
- 10.1. HISTORIA SYSTEMÓW UNIX I LINUX (716)
- 10.1.1. UNICS (716)
- 10.1.2. PDP-11 UNIX (717)
- 10.1.3. Przenośny UNIX (718)
- 10.1.4. Berkeley UNIX (719)
- 10.1.5. Standard UNIX (720)
- 10.1.6. MINIX (721)
- 10.1.7. Linux (722)
- 10.2. PRZEGLĄD SYSTEMU LINUX (725)
- 10.2.1. Cele Linuksa (725)
- 10.2.2. Interfejsy systemu Linux (726)
- 10.2.3. Powłoka (728)
- 10.2.4. Programy użytkowe systemu Linux (731)
- 10.2.5. Struktura jądra (733)
- 10.3. PROCESY W SYSTEMIE LINUX (735)
- 10.3.1. Podstawowe pojęcia (735)
- 10.3.2. Wywołania systemowe Linuksa związane z zarządzaniem procesami (738)
- 10.3.3. Implementacja procesów i wątków w systemie Linux (742)
- 10.3.4. Szeregowanie w systemie Linux (748)
- 10.3.5. Uruchamianie systemu Linux (753)
- 10.4. ZARZĄDZANIE PAMIĘCIĄ W SYSTEMIE LINUX (755)
- 10.4.1. Podstawowe pojęcia (756)
- 10.4.2. Wywołania systemowe Linuksa odpowiedzialne za zarządzanie pamięcią (759)
- 10.4.3. Implementacja zarządzania pamięcią w systemie Linux (760)
- 10.4.4. Stronicowanie w systemie Linux (766)
- 10.5. OPERACJE WEJŚCIA-WYJŚCIA W SYSTEMIE LINUX (769)
- 10.5.1. Podstawowe pojęcia (769)
- 10.5.2. Obsługa sieci (771)
- 10.5.3. Wywołania systemowe wejścia-wyjścia w systemie Linux (772)
- 10.5.4. Implementacja wejścia-wyjścia w systemie Linux (773)
- 10.5.5. Moduły w systemie Linux (776)
- 10.6. SYSTEM PLIKÓW LINUKSA (777)
- 10.6.1. Podstawowe pojęcia (777)
- 10.6.2. Wywołania systemu plików w Linuksie (782)
- 10.6.3. Implementacja systemu plików Linuksa (785)
- 10.6.4. NFS - sieciowy system plików (794)
- 10.7. BEZPIECZEŃSTWO W SYSTEMIE LINUX (800)
- 10.7.1. Podstawowe pojęcia (800)
- 10.7.2. Wywołania systemowe Linuksa związane z bezpieczeństwem (802)
- 10.7.3. Implementacja bezpieczeństwa w systemie Linux (803)
- 10.8. ANDROID (804)
- 10.8.1. Android a Google (804)
- 10.8.2. Historia Androida (805)
- 10.8.3. Cele projektowe (808)
- 10.8.4. Architektura Androida (810)
- 10.8.5. Rozszerzenia Linuksa (811)
- 10.8.6. Dalvik (814)
- 10.8.7. Binder IPC (816)
- 10.8.8. Aplikacje Androida (824)
- 10.8.9. Zamiary (834)
- 10.8.10. Piaskownice aplikacji (835)
- 10.8.11. Bezpieczeństwo (836)
- 10.8.12. Model procesów (841)
- 10.9. PODSUMOWANIE (846)
11. Drugie studium przypadku: Windows 8 (855)
- 11.1. HISTORIA SYSTEMU WINDOWS DO WYDANIA WINDOWS 8.1 (855)
- 11.1.1. Lata osiemdziesiąte: MS-DOS (856)
- 11.1.2. Lata dziewięćdziesiąte: Windows na bazie MS-DOS-a (857)
- 11.1.3. Lata dwutysięczne: Windows na bazie NT (857)
- 11.1.4. Windows Vista (860)
- 11.1.5. Druga dekada lat dwutysięcznych: Modern Windows (861)
- 11.2. PROGRAMOWANIE SYSTEMU WINDOWS (862)
- 11.2.1. Rdzenny interfejs programowania aplikacji (API) systemu NT (865)
- 11.2.2. Interfejs programowania aplikacji Win32 (869)
- 11.2.3. Rejestr systemu Windows (872)
- 11.3. STRUKTURA SYSTEMU (875)
- 11.3.1. Struktura systemu operacyjnego (875)
- 11.3.2. Uruchamianie systemu Windows (890)
- 11.3.3. Implementacja menedżera obiektów (891)
- 11.3.4. Podsystemy, biblioteki DLL i usługi trybu użytkownika (901)
- 11.4. PROCESY I WĄTKI SYSTEMU WINDOWS (904)
- 11.4.1. Podstawowe pojęcia (904)
- 11.4.2. Wywołania API związane z zarządzaniem zadaniami, procesami, wątkami i włóknami (911)
- 11.4.3. Implementacja procesów i wątków (916)
- 11.5. ZARZĄDZANIE PAMIĘCIĄ (924)
- 11.5.1. Podstawowe pojęcia (924)
- 11.5.2. Wywołania systemowe związane z zarządzaniem pamięcią (928)
- 11.5.3. Implementacja zarządzania pamięcią (929)
- 11.6. PAMIĘĆ PODRĘCZNA SYSTEMU WINDOWS (939)
- 11.7. OPERACJE WEJŚCIA-WYJŚCIA W SYSTEMIE WINDOWS (940)
- 11.7.1. Podstawowe pojęcia (940)
- 11.7.2. Wywołania API związane z operacjami wejścia-wyjścia (942)
- 11.7.3. Implementacja systemu wejścia-wyjścia (944)
- 11.8. SYSTEM PLIKÓW NT SYSTEMU WINDOWS (949)
- 11.8.1. Podstawowe pojęcia (949)
- 11.8.2. Implementacja systemu plików NTFS (950)
- 11.9. ZARZĄDZANIE ENERGIĄ W SYSTEMIE WINDOWS (960)
- 11.10. BEZPIECZEŃSTWO W SYSTEMIE WINDOWS 8 (963)
- 11.10.1. Podstawowe pojęcia (964)
- 11.10.2. Wywołania API związane z bezpieczeństwem (965)
- 11.10.3. Implementacja bezpieczeństwa (967)
- 11.10.4. Czynniki ograniczające zagrożenia bezpieczeństwa (969)
- 11.11. PODSUMOWANIE (972)
12. Projekt systemu operacyjnego (979)
- 12.1. ISTOTA PROBLEMÓW ZWIĄZANYCH Z PROJEKTOWANIEM SYSTEMÓW (980)
- 12.1.1. Cele (980)
- 12.1.2. Dlaczego projektowanie systemów operacyjnych jest takie trudne? (981)
- 12.2. PROJEKT INTERFEJSU (983)
- 12.2.1. Zalecenia projektowe (983)
- 12.2.2. Paradygmaty (986)
- 12.2.3. Interfejs wywołań systemowych (989)
- 12.3. IMPLEMENTACJA (992)
- 12.3.1. Struktura systemu (992)
- 12.3.2. Mechanizm kontra strategia (996)
- 12.3.3. Ortogonalność (997)
- 12.3.4. Nazewnictwo (998)
- 12.3.5. Czas wiązania nazw (999)
- 12.3.6. Struktury statyczne kontra struktury dynamiczne (1000)
- 12.3.7. Implementacja góra-dół kontra implementacja dół-góra (1001)
- 12.3.8. Komunikacja synchroniczna kontra asynchroniczna (1002)
- 12.3.9. Przydatne techniki (1004)
- 12.4. WYDAJNOŚĆ (1009)
- 12.4.1. Dlaczego systemy operacyjne są powolne? (1009)
- 12.4.2. Co należy optymalizować? (1010)
- 12.4.3. Dylemat przestrzeń-czas (1011)
- 12.4.4. Buforowanie (1014)
- 12.4.5. Wskazówki (1015)
- 12.4.6. Wykorzystywanie efektu lokalności (1015)
- 12.4.7. Optymalizacja z myślą o typowych przypadkach (1016)
- 12.5. ZARZĄDZANIE PROJEKTEM (1017)
- 12.5.1. Mityczny osobomiesiąc (1017)
- 12.5.2. Struktura zespołu (1018)
- 12.5.3. Znaczenie doświadczenia (1020)
- 12.5.4. Nie istnieje jedno cudowne rozwiązanie (1021)
- 12.6. TRENDY W ŚWIECIE PROJEKTÓW SYSTEMÓW OPERACYJNYCH (1021)
- 12.6.1. Wirtualizacja i przetwarzanie w chmurze (1022)
- 12.6.2. Układy wielordzeniowe (1022)
- 12.6.3. Systemy operacyjne z wielkimi przestrzeniami adresowymi (1023)
- 12.6.4. Bezproblemowy dostęp do danych (1024)
- 12.6.5. Komputery zasilane bateriami (1024)
- 12.6.6. Systemy wbudowane (1025)
- 12.7. PODSUMOWANIE (1026)
13. Lista publikacji i bibliografia (1031)
- 13.1. SUGEROWANE PUBLIKACJE DODATKOWE (1031)
- 13.1.1. Publikacje wprowadzające i ogólne (1032)
- 13.1.2. Procesy i wątki (1032)
- 13.1.3. Zarządzanie pamięcią (1033)
- 13.1.4. Systemy plików (1033)
- 13.1.5. Wejście-wyjście (1034)
- 13.1.6. Zakleszczenia (1035)
- 13.1.7. Wirtualizacja i przetwarzanie w chmurze (1035)
- 13.1.8. Systemy wieloprocesorowe (1036)
- 13.1.9. Bezpieczeństwo (1037)
- 13.1.10. Pierwsze studium przypadku: UNIX, Linux i Android (1039)
- 13.1.11. Drugie studium przypadku: Windows 8 (1039)
- 13.1.12. Zasady projektowe (1040)
- 13.2. BIBLIOGRAFIA W PORZĄDKU ALFABETYCZNYM (1041)
A. Multimedialne systemy operacyjne (1069)
- A.1. WPROWADZENIE W TEMATYKĘ MULTIMEDIÓW (1070)
- A.2. PLIKI MULTIMEDIALNE (1074)
- A.2.1. Kodowanie wideo (1075)
- A.2.2. Kodowanie audio (1078)
- A.3. KOMPRESJA WIDEO (1079)
- A.3.1. Standard JPEG (1080)
- A.3.2. Standard MPEG (1082)
- A.4. KOMPRESJA AUDIO (1085)
- A.5. SZEREGOWANIE PROCESÓW MULTIMEDIALNYCH (1088)
- A.5.1. Szeregowanie procesów homogenicznych (1088)
- A.5.2. Szeregowanie w czasie rzeczywistym - przypadek ogólny (1088)
- A.5.3. Szeregowanie monotoniczne w częstotliwości (1090)
- A.5.4. Algorytm szeregowania EDF (1091)
- A.6. PARADYGMATY DOTYCZĄCE MULTIMEDIALNYCH SYSTEMÓW PLIKÓW (1093)
- A.6.1. Funkcje sterujące VCR (1094)
- A.6.2. Wideo niemal na życzenie (1096)
- A.7. ROZMIESZCZENIE PLIKÓW (1097)
- A.7.1. Umieszczanie pliku na pojedynczym dysku (1097)
- A.7.2. Dwie alternatywne strategie organizacji plików (1098)
- A.7.3. Rozmieszczenie wielu plików na pojedynczym dysku (1102)
- A.7.4. Rozmieszczanie plików na wielu dyskach (1104)
- A.8. BUFOROWANIE (1106)
- A.8.1. Buforowanie bloków (1106)
- A.8.2. Buforowanie plików (1108)
- A.9. SZEREGOWANIE OPERACJI DYSKOWYCH W SYSTEMACH MULTIMEDIALNYCH (1108)
- A.9.1. Statyczne szeregowanie operacji dyskowych (1108)
- A.9.2. Dynamiczne szeregowanie operacji dyskowych (1110)
- A.10. BADANIA NA TEMAT MULTIMEDIÓW (1112)
- A.11. PODSUMOWANIE (1112)
Skorowidz (1119)
- Назва: Systemy operacyjne. Wydanie IV
- Автор: Andrew S. Tanenbaum, Herbert Bos
- Оригінальна назва: Modern Operating Systems (4th Edition)
- Переклад: Radosław Meryk
- ISBN: 978-83-283-1425-2, 9788328314252
- Дата видання: 2015-11-26
- Формат: Eлектронна книга
- Ідентифікатор видання: sysop4
- Видавець: Helion