Прикладное программирование - Учебное пособие

бесплатно 0
4.5 53
Характеристика интерфейса прикладного программирования. Изучение одноранговых и серверных сетевых операционных систем. Исследование особенностей семафоров. Рассмотрение процесса кэширования данных. Анализ главных принципов управления файловой системой.

Скачать работу Скачать уникальную работу

Чтобы скачать работу, Вы должны пройти проверку:


Аннотация к работе
За почти полувековой период своего существования операционные системы (ОС) прошли сложный путь, насыщенный многими важными событиями. Огромное влияние на развитие операционных систем оказали успехи в совершенствовании элементной базы и вычислительной аппаратуры, поэтому многие этапы развития ОС тесно связаны с появлением новых типов аппаратных платформ, таких, как миникомпьютеры или персональные компьютеры. Серьезную эволюцию операционные системы претерпели в связи с новой ролью компьютеров в локальных и глобальных сетях. По мере того как эта сеть приобретает черты универсального средства массовых коммуникаций, ОС становятся все более простыми и удобными в использовании, включают развитые средства поддержки мультимедийной информации, снабжаются надежными средствами защиты. В последние годы получила дальнейшее развитие долговременная тенденция повышения удобства работы человека с компьютером.Операционная система компьютера представляет собой комплекс взаимосвязанных программ, который действует как интерфейс между приложениями и пользователями, с одной стороны, и аппаратурой компьютера - с другой. В соответствии с этим определением ОС выполняет две группы функций: предоставление пользователю или программисту вместо реальной аппаратуры компьютера расширенной виртуальной машины, с которой удобней работать и которую легче программировать; Именно операционная система скрывает от программиста большую часть особенностей аппаратуры и предоставляет возможность простой и удобной работы с требуемыми файлами. Виртуальная машина тоже управляется командами, но это уже команды другого, более высокого уровня, такие, как удалить файл с определенным именем, запустить на выполнение некоторую прикладную программу, повысить приоритет задачи, вывести текст из файла на печать. Таким образом, назначение ОС состоит в предоставлении пользователю/программисту некоторой расширенной виртуальной машины, которую легче программировать и с которой легче работать, чем непосредственно с аппаратурой, составляющей реальный компьютер или реальную сеть.Функции операционной системы автономного компьютера обычно группируются либо в соответствии с типами локальных ресурсов, которыми управляет ОС, либо в соответствии со специфическими задачами, применимыми ко всем ресурсам.Чтобы процесс мог быть выполнен, операционная система должна назначить ему область оперативной памяти, в которой будут размещены коды и данные процесса, а также предоставить ему необходимое количество процессорного времени. Кроме того, процессу может понадобиться доступ к таким ресурсам, как файлы и устройства вводавывода. Другие процессы, называемые системными, инициализируются самой операционной системой для выполнения своих функций. Поскольку процессы часто одновременно претендуют на одни и те же ресурсы, то в обязанности ОС входит поддержание очередей заявок процессов на ресурсы, например, очереди к процессору, к принтеру, к последовательному порту. Важная задача операционной системы - защита ресурсов, выделенных данному процессу, от остальных процессов.Память является для процесса таким же важным ресурсом, как и процессор, так как процесс может выполняться процессором только в том случае, если его коды и данные (не обязательно все) находятся в оперативной памяти. Управление памятью включает функции распределения имеющейся физической памяти между всеми существующими в системе в данный момент процессами, загрузки кодов и данных процессов в отведенные им области памяти, настройки адреснозависимых частей кодов процесса на физические адреса выделенной области, а также защиты областей памяти каждого процесса. Существует большое разнообразие алгоритмов распределения памяти, которые могут отличаться, например, количеством выделяемых процессу областей памяти (в одних случаях память выделяется процессу в виде одной непрерывной области, а в других - в виде нескольких несмежных областей), степенью свободы границы областей (она может быть жестко зафиксирована на все время существования процесса или же динамически перемещаться при выделении процессу дополнительных объемов памяти). Наличие в ОС этого механизма позволяет программисту писать программу так, как будто в его распоряжении имеется однородная оперативная память большого объема, часто существенно превышающего объем имеющейся физической памяти.Операционная система представляет отдельный набор данных, хранящихся на внешнем накопителе, в виде файла - простой неструктурированной последовательности байтов, имеющей символьное имя. Пользователь может с помощью ОС выполнять над файлами и каталогами такие действия, как поиск по имени, удаление, вывод содержимого на внешнее устройство (например, на дисплей), изменение и сохранение содержимого.Безопасность данных вычислительной системы обеспечивается средствами отказоустойчивости ОС, направленными на защиту от сбоев и отказов аппаратуры и ошибок программного обеспечения, а также средствами защиты от несанкционированного доступа.

План
Оглавление

Введение

1. Назначение и функции операционной системы

1.1 Функциональные компоненты операционной системы автономного компьютера

1.1.1 Управление процессами

1.1.2 Управление памятью

1.1.3 Управление файлами и внешними устройствами

1.1.4 Защита данных и администрирование

1.1.5 Интерфейс прикладного программирования

1.1.6 Пользовательский интерфейс

1.2 Сетевые операционные системы

1.2.1 Сетевые и распределенные ОС

1.2.2 Два значения термина «сетевая ОС»

1.2.3 Функциональные компоненты сетевой ОС

1.2.4 Сетевые службы и сетевые сервисы

1.2.5 Встроенные сетевые службы и сетевые оболочки

1.3 Одноранговые и серверные сетевые операционные системы

1.3.1 ОС в одноранговых сетях

1.3.2 ОС в сетях с выделенными серверами

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

2. Архитектура операционной системы

2.1 Ядро и вспомогательные модули ОС

2.2 Ядро и привилегированный режим

2.3 Многослойная структура ОС

2.4 Аппаратная зависимость и переносимость ОС

2.5 Переносимость операционной системы

2.6 Микроядерная архитектура

2.6.1 Концепция

2.6.2 Преимущества и недостатки микроядерной архитектуры

2.7 Совместимость и множественные прикладные среды

2.7.1 Двоичная совместимость и совместимость исходных текстов

2.7.2 Трансляция библиотек

2.7.3 Способы реализации прикладных программных сред

3. Процессы и потоки

3.1 Мультипрограммирование

3.1.1 Мультипрограммирование в системах пакетной обработки

3.1.2 Мультипрограммирование в системах разделения времени

3.1.3 Мультипрограммирование в системах реального времени

3.2 Мультипроцессорная обработка

3.3 Планирование процессов и потоков

3.4 Понятия «процесс» и «поток»

3.4.1 Создание процессов и потоков

3.4.2 Планирование и диспетчеризация потоков

3.4.3 Состояния потока

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

3.4.5 Алгоритмы планирования, основанные на квантовании

3.4.6 Алгоритмы планирования, основанные на приоритетах

3.4.7 Смешанные алгоритмы планирования

3.5 Мультипрограммирование на основе прерываний

3.5.1 Назначение и типы прерываний

3.5.2 Механизм прерываний

3.5.3 Программные прерывания

3.5.4 Диспетчеризация и приоритезация прерываний в ОС

3.5.5 Функции централизованного диспетчера прерываний на примере Windows NT

3.5.6 Процедуры обработки прерываний и текущий процесс

3.5.7 Системные вызовы

3.6. Синхронизация процессов и потоков

3.6.1 Цели и средства синхронизации

3.6.2 Необходимость синхронизации и гонки

3.6.3 Критическая секция

3.6.4 Блокирующие переменные

3.6.5 Семафоры

3.6.6 Тупики

3.6.7 Синхронизирующие объекты ОС

3.6.8 Сигналы

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

4.1 Функции ОС по управлению памятью

4.2 Типы адресов

4.3 Алгоритмы распределения памяти

4.3.1 Алгоритмы распределения без использования внешней памяти

4.3.2 Алгоритмы распределения с использованием внешней памяти

4.4 Кэширование данных

4.4.1 Иерархия запоминающих устройств

4.4.2 Кэшпамять

4.4.3 Проблема согласования данных

4.4.4 Способы отображения основной памяти на кэш

5. Вводвывод и файловая система

5.1 Задачи ОС по управлению файлами и устройствами

5.2 Специальные файлы

5.3 Логическая организация файловой системы

5.3.1 Цели и задачи файловой системы

5.3.2 Типы файлов

5.3.3 Иерархическая структура файловой системы

5.3.4 Имена файлов

5.3.5 Монтирование

5.3.6 Атрибуты файлов

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

5.4 Физическая организация файловой системы

5.4.1 Диски, разделы, секторы, кластеры

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

5.5 Физическая организация FAT

5.6 Физическая организация s5 и ufs

5.7 Физическая организация NTFS

5.7.1 Структура тома NTFS

5.7.2 Структура файлов NTFS

5.7.3 Каталоги NTFS

5.8 Контроль доступа к файлам

5.8.1 Доступ к файлам как частный случай доступа к разделяемым ресурсам

5.8.2 Механизм контроля доступа

5.8.3 Организация контроля доступа в ОС UNIX

5.8.4 Организация контроля доступа в ОС Windows NT

5.9 Отказоустойчивость и RAID-массивы

Библиографический список

Ответы на вопросы для самопроверки

Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность
своей работы


Новые загруженные работы

Дисциплины научных работ





Хотите, перезвоним вам?