Введение.

Содержание

В настоящее время для ОС Linux существует и производится большое количество различных прикладных программ (приложений). Несмотря на то, что изначально все программное обеспечение для этой ОС было исключительно свободным, т.е. бесплатным, доля коммерческих программных продуктов постоянно растет. Возможно, это связано с увеличением популярности Linux среди современных пользователей, в т.ч. российских. Тем не менее, количество бесплатного программного обеспечения пока еще остается большим.

Все приложения можно разделить по двум основным параметрам:

- по рабочей среде – консольное или графическое;

- по назначению – например, сервисные утилиты, программы для создания и обработки текстов; для телекоммуникаций; игры; среды разработки и т.п.

Как правило, вместе с дистрибутивом самой ОС прилагается большое количество наиболее распространенных программных пакетов. В сети Интернет также можно найти много бесплатных программ для Linux. Рассмотрим некоторые программы из стандартного набора Linux:

Наиболее современными офисными пакетами для работы в графическом режиме являются пакеты Star Office и Open Office, возможности которых во многом схожи с MS-Office. В их состав входит мощный текстовый процессор (StarWriter), табличный процессор (StarCalc), инженерный калькулятор и другие. Рабочие окна этих приложений очень схожи с аналогичными приложениями – MS-Word и Excel, и кроме того с помощью встроенных конвертеров они могут открывать файлы с расширениями .doc и .xls. Существует версия редактора WordPerfect от фирмы Corel специально для Linux. Ее можно загрузить из Интернет и использовать бесплатно.

Выбор программных продуктов для работы с Интернетом в ОС Linux также достаточно широк. Наиболее известным пакетом, завоевавшим доверие у пользователей не только ОС Linux, но и MS-Windows и Macintosh – это коммерческий пакет Netscape. Для просмотра ВЕБ-страниц используется браузер Navigator или Communicator. Программа Netscape Messenger – клиент электронной почты. Компонент Discussions используется для чтения новостей из всемирной группы Usenet. Для того, чтобы стать членом этой группы, нужно ознакомится с ее правилами, полезными советами и зарегистрироваться.

Для получения электронной почты существуют и консольные программы, например, fetchmail. Эта программа может работать в фоновом режиме и поддерживает все распространенные протоколы, в т.ч. РОР3, SDPS, IMAP и другие. В сети Интернет существуют специальные информационные серверы для пользователей Linux. Одним из таких является информационная система Gopher. Для пользования этой системой на каждом ПК должна быть установлена клиентская часть этой системы.

Разнообразием программ для развлечения Linux также не обделен. В составе ОС Linux может быть установлено около 60 стандартных игр различного жанра, например, шахматы, карточные игры, аркадные игры и т.п. Большинство фирм-производителей игр, хорошо известных пользователям Windows, в последние годы выпускают версии игр в т.ч. и для Linux. Это такие известные игры, как Doom и Quake, имеющие 3-х мерную графику и другие.

Кроме того, некоторые программы, написанные для MS-Windows, могут работать в среде Linux при использовании эмулятора WINE.

Содержание.................................................................................................................................................. 1

1. Введение............................................................................................................................................... 5

1.1. История развития ОС.................................................................................................................. 5

1.1.1. Первый период (1945 -1955).............................................................................................. 5

1.1.2. Второй период (1955 - 1965).............................................................................................. 5

1.1.3. Третий период (1965 - 1980)............................................................................................... 6

1.1.4. Четвертый период (1980 - настоящее время).................................................................... 6

1.1.5. Классификация ОС по времени развития........................................................................ 7

1.2. Определение операционной системы и ее функции............................................................... 8

1.2.1. ОС – как виртуальная машина (взгляд сверху)................................................................ 9

1.2.2. ОС – как система управления ресурсами (взгляд снизу).............................................. 10

1.2.3. Классификация ОС по полноте функциональности..................................................... 10

1.2.3.1. Системы пакетной обработки.................................................................................. 10

1.2.3.2. ДОС Дисковые операционные системы................................................................. 11

1.2.3.3. ОС Операционные системы (системы разделения времени)............................... 11

1.2.3.4. Системы виртуальных машин................................................................................. 11

1.2.3.5. Системы реального времени.................................................................................... 12

1.2.3.6. Кросс-загрузчики....................................................................................................... 13

1.2.3.7. Системы промежуточных типов............................................................................. 13

2. Общие принципы построения операционных систем.................................................................. 13

2.1. Требования к операционным системам.................................................................................. 13

2.1.1. Многозадачность............................................................................................................... 14

2.1.2. Вытесняющая и невытесняющая многозадачность...................................................... 14

2.1.3. Поддержка нитей одного процесса................................................................................. 14

2.1.4. Многопроцессорная обработка........................................................................................ 15

2.1.5. Поддержка многопользовательского режима................................................................ 15

2.1.6. Поддержка сетевой подсистемы и распределенных вычислений............................... 15

2.1.7. Расширяемость................................................................................................................... 15

2.1.8. Мобильность (легкая переносимость)............................................................................. 16

2.1.9. Надежностьиотказоустойчивость.................................................................................. 16

2.1.10. Совместимость................................................................................................................... 16

2.1.11. Безопасность...................................................................................................................... 16

2.1.12. Производительность......................................................................................................... 16

2.1.13. Дружественный интерфейс.............................................................................................. 17

2.2. Интерфейсы ОС с пользователями.......................................................................................... 18

2.2.1. Введение в интерфейсы.................................................................................................... 18

2.2.2. Классификация интерфейсов........................................................................................... 18

2.2.3. Пакетная технология......................................................................................................... 19

2.2.4. Технология командной строки........................................................................................ 20

2.2.5. Графический интерфейс................................................................................................... 20

2.2.5.1. Простой графический интерфейс............................................................................ 21

2.2.5.2. WIMP – интерфейс.................................................................................................... 21

2.2.6. Речевая технология........................................................................................................... 22

2.2.7. Биометрическая технология............................................................................................. 22

2.2.8. Семантический (общественный) интерфейс.................................................................. 23

2.3. Общие принципы управление ресурсами в ОС.................................................................... 23

2.3.1. Виды ресурсов................................................................................................................... 23

2.3.2. Виртуальные ресурсы....................................................................................................... 24

2.3.3. Понятие стратегии и дисциплины управления ресурсами???..................................... 24

3. Управление ресурсами ОС............................................................................................................... 24

2.1. Управление программами........................................................................................................ 24

1.1. Понятие программы.............................................................................................................. 24

1.2. Загрузка программы.............................................................................................................. 25

1.2.1. Абсолютная загрузка..................................................................................................... 25

1.2.2. Относительная загрузка................................................................................................ 25

1.2.3. Позиционно-независимый код.................................................................................... 26

1.2.4. Оверлейная загрузка..................................................................................................... 26

1.2.5. Загрузка системы........................................................................................................... 27

1.3. Сборка программы................................................................................................................ 30

1.4. ?? Виртуальные программы................................................................................................. 34

2.2. Управление памятью................................................................................................................. 34

2.1. Типы адресов......................................................................................................................... 34

2.2. Распределение памяти без использования дискового пространства............................... 35

2.2.1. Открытая память............................................................................................................ 35

2.2.2. Распределение памяти фиксированными разделами................................................ 36

2.2.3. Распределение памяти динамическими разделами................................................... 37

2.2.4. Перемещаемые разделы................................................................................................ 38

2.3. Распределение памяти с использования дискового пространства.................................. 38

2.3.1. Понятие виртуальной памяти...................................................................................... 38

2.3.2. Страничное распределение.......................................................................................... 39

2.3.3. Сегментное распределение.......................................................................................... 42

2.3.4. Странично-сегментное распределение....................................................................... 43

2.3.5. Свопинг.......................................................................................................................... 43

2.4. Иерархическая организация памяти. Принцип кэширования памяти............................ 45

2.5. Типы реальной памяти и их основные характеристики................................................... 47

2.5.1. Классификация оперативной памяти.......................................................................... 47

2.5.2. Энергонезависимая память.......................................................................................... 48

2.5.3. Энергозависимая (полупроводниковая) память........................................................ 49

2.5.4. Статическая и динамическая память........................................................................... 50

2.5.5. Триггеры как основа статической памяти.................................................................. 50

2.5.6. SRAM. Замечания.......................................................................................................... 50

2.5.7. DRAM. Что это такое?.................................................................................................. 50

2.6. Динамическое ОЗУ............................................................................................................... 51

2.6.1. Конструктивные особенности..................................................................................... 51

2.6.2. Устаревшие модификации........................................................................................... 51

2.6.2.1. DIP.............................................................................................................................. 51

2.6.2.2. SIPP (SIP) —модули памяти.................................................................................... 52

2.6.3. SIMM-модули................................................................................................................ 52

2.6.3.1. Сравнение SIMM-модулей....................................................................................... 53

2.6.3.2. Причины повышения скорости работы EDO RAM.............................................. 53

2.6.4. DIMM.............................................................................................................................. 53

2.6.5. SDRAM........................................................................................................................... 54

2.6.5.1. ESDRAM.................................................................................................................... 54

2.6.5.2. SDRAM II................................................................................................................... 55

2.6.5.3. SLDRAM.................................................................................................................... 55

2.6.6. Память от Rambus (RDRAM, RIMM).......................................................................... 55

2.6.7. Постоянное запоминающее устройство...................................................................... 56

2.6.7.1. ROM-память............................................................................................................... 56

2.6.7.2. Флэш-память.............................................................................................................. 57

2.6.7.3. CMOS-память............................................................................................................. 57

2.6.8. Недостатки перезаписываемой памяти....................................................................... 57

2.6.8.1. Потеря данных в CMOS........................................................................................... 57

2.6.8.2. Потеря данных в flash-памяти.................................................................................. 58

2.6.9. Область ПЗУ.................................................................................................................. 58

2.3. Управление процессами........................................................................................................... 59

3.1. Состояние процессов............................................................................................................ 59

3.2. Контекст и дескриптор процесса......................................................................................... 60

3.3. Планирование процессов..................................................................................................... 61

3.3.1. Планирование с квантованием времени.................................................................... 61

3.3.2. Планирование с использованием приоритетов......................................................... 62

3.4. Вытесняющие и невытесняющие алгоритмы планирования........................................... 63

3.5. Нити........................................................................................................................................ 65

3.6. Синхронизация и взаимодействие процессов................................................................... 66

3.6.1. Взаимодействие между процессами............................................................................ 66

3.6.2. Способы передачи информации от одного процесса другому................................ 66

3.6.2.1. Разделяемая память.................................................................................................... 66

3.6.2.2. Каналы (трубы),......................................................................................................... 67

3.6.2.3. Сокеты........................................................................................................................ 67

3.6.2.4. Почтовые ящики (только в Windows)..................................................................... 68

3.6.2.5. Логический и физический линк.............................................................................. 68

3.6.2.6. Системы, управляемые событиями......................................................................... 69

3.6.2.7. Вызов удаленной процедуры................................................................................... 71

3.6.3. Состязания процессов................................................................................................... 71

3.6.3.1. Состояние состязания (гонки).................................................................................. 71

3.6.3.2. Критические области................................................................................................ 72

3.6.4. Взаимное исключение при состязаниях..................................................................... 73

3.6.4.1. Метод запрещение прерываний............................................................................... 73

3.6.4.2. Метод блокирующих переменных.......................................................................... 73

3.6.4.3. Метод строгого чередования.................................................................................... 74

3.6.4.4. Метод аппарата событий.......................................................................................... 75

3.6.5. Семафоры во взаимодействии процессов.................................................................. 75

3.6.6. Проблема переполненного буфера (проблема производителя и потребителя)...... 76

3.6.7. Решение проблемы переполненного буфера с помощью семафора........................ 77

3.6.8. Гармонически взаимодействующие последовательные процессы.......................... 78

3.7. ? Наследование процессов................................................................................................... 78

3.8. ? Сохранение и восстановление процессов....................................................................... 78

2.4. ? Управление процессорами.................................................................................................... 78

4.1. Аппаратное управление памятью и процессором в вычислительной системе. Виртуальные процессоры......................................................................................................................................... 78

4.2. Средства аппаратной поддержки сегментации памяти.................................................... 79

4. Управление периферийными ресурсами........................................................................................ 81

2.5. Управление устройствами ввода/вывода............................................................................... 81

5.1. Назначение и функции системы управления устройствами ввода/вывода.................... 81

5.2. Физическая организация устройств ввода-вывода............................................................ 81

5.3. Организация программного обеспечения ввода-вывода.................................................. 82

5.4. Обработка прерываний......................................................................................................... 83

5.4.1. Программные прерывания. Прерывания от таймера................................................ 84

5.4.2. Аппаратные прерывания.............................................................................................. 84

5.5. Драйверы внешних устройств............................................................................................. 86

5.6. Независимый от устройств слой операционной системы................................................ 87

5.7. Пользовательский слой программного обеспечения........................................................ 87

5.8. ?Планирование доступа к устройствам.............................................................................. 88

5.9. ?Управление операциями обмена. Буферизация, блокирование, спулинг..................... 88

5.10. ?Драйверы устройств........................................................................................................ 88

5.10.1. Общая архитектура драйверов..................................................................................... 88

5.10.2. Организация взаимодействия драйверов в ядре ОС................................................. 88

5.10.3. Примеры драйверов устройств для UNIX и Windows.............................................. 88

2.6. Файловые системы.................................................................................................................... 88

6.1. Имена файлов........................................................................................................................ 88

6.2. Типы файлов.......................................................................................................................... 89

6.3. Логическая организация файла............................................................................................ 91

6.4. Физическая организация и адрес файла.............................................................................. 92

6.5. Права доступа к файлу.......................................................................................................... 93

6.6. Кэширование диска............................................................................................................... 95

6.7. Общая модель файловой системы....................................................................................... 95

6.8. Отображаемые в память файлы........................................................................................... 97

6.9. Современные архитектуры файловых систем................................................................... 98

6.10. Физические и логические разделы внешней памяти.................................................. 101

6.11. Функционирование файловых систем. Назначение и состав уровней функций файловой системы 101

6.12. Структура файловой системы и ее элементы............................................................... 101

6.13. Режимы использования файловых систем................................................................... 101

6.14. Типы файловых систем................................................................................................... 101

6.15. Отказоустойчивость. RAID – массивы, зеркалирование............................................ 101

2 Сопровождение ОС......................................................................................................................... 101

2.1. Задачи и принципы сопровождения системного програмного обеспечения................... 101

2.2. Генерация ОС.......................................................................................................................... 101

2.3. Модификация ОС.................................................................................................................... 101

2.4. Измерение параметров ОС..................................................................................................... 101

2.5. Резервное копирование. Организация и планирование..................................................... 101

2.6. Восстановление ОС после сбоев........................................................................................... 101

2 Защита ОС........................................................................................................................................ 101

2 Общая архитектура системы защиты............................................................................................ 101

2 Объекты и субъекты защиты.......................................................................................................... 101

2 Права доступа: описание и способы управления........................................................................ 101

5. Характеристики наиболее распостраненных ОС........................................................................ 101

2.1. Операционные системы семейства Windows....................................................................... 101

2.2. Операционные системы клона UNIX................................................................................... 101

2.3. Операционные системы Nowell NetWare............................................................................. 101

2.4. Другие операционные системы............................................................................................. 101

6. Список литературы......................................................................................................................... 101