Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

по теме изложенный конспективно.html

Работа добавлена на сайт samzan.net:


Реферат по разделу курса (Оценка не выше 4)

Реферат по разделу курса должен содержать обобщенный и переработанный материал по одной из тем учебного курса. В обязательном порядке в реферате должны быть:

  1.  Лекционный материал по теме (изложенный конспективно).
  2.  Иллюстрации (рисунки) из лекционного материала.
  3.  Выдержки из учебной литературы, имеющейся в библиотеке.
  4.  Обзор Интернет-источников с классификацией содержания (например, описание файловой системы, учебно-методические материалы других вузов, оценка производительности, история развития, сравнение с другими разработками (достоинства и недостатки), примеры программирования и описания структур данных), информация о системных программах и утилитах.

Информация по каждому источнику должна быть переработана и представлена сжато (0.5-2 стр.).

Темы рефератов:

  1.  Основные понятия ОС: задание, задача, процесс, поток. Физический и логический параллелизм. Основные характеристики процесса и потока. Структура адресного пространства процесса: сегменты –команд, данных, стек, куча, DLL, их свойства, режимы ядра (системы) и пользователя. Системные вызовы. Защита.
  2.  Прерывание как обязательный элемент ОС. Обзор и классификация видов прерываний: внешние, синхронные (программные, исключения), вложенные, страничные, отложенные (DPC), на уровне среды программирования и процесса (ACP).
  3.  Ядро ОС как система реального времени. Приоритеты компонент ядра (процесс, ACP, DPC, прерывания устройств). Синхронизация к структурам данных ядра и процесса (DPC и ACP).
  4.  Стратегии управления процессором в ОС (обзор): круговая диспетчеризация, приоритетное планирование, плавающие приоритеты (структуры данных, алгоритмы).
  5.  Синхронизация в ОС. Понятие синхронизации параллельных (асинхронных) процессов и потоков. 1. Синхронизация к общим данным и ресурсам. Критическая секция. Синхронизация прерываний (запрещение прерываний, DPC) Примеры ошибок синхронизации. 2. Синхронизация к событиям (результатам). Механизмы синхронизации в ядре ОС: ожидание событий на объектах, семафоры.
  6.  Работа с процессами в ОС и различных системах программирования.
  7.  Работа с потоками в ОС и различных системах программирования (Java)
  8.  Виртуальное адресное пространство и его поддержка в ОС (Сегмент, файл подкачки, страница, загрузка по требованию, страничное прерывание).
  9.  Страничное прерывание в ОС. (Аппаратно-программные средства отображения виртуального АП в физическое. Особенности страничного прерывания. Стратегии замещения страниц в памяти).
  10.  Структуры данных и алгоритмы системы управления виртуальной памятью. (Аппаратно-программные средства отображения виртуального АП в физическое. БД (таблица) описания физических страниц. Диаграмма состояний физической страницы).
  11.  Стратегии управления виртуальной памятью. (Рабочее множество (рабочий набор), алгоритмы его отслеживания, свопинг рабочих наборов). Явление «пробуксовки».
  12.  Организация ввода-вывода по прерыванию в ОС  с виртуальной памятью (на примере W2000. Основные компоненты и их функции: диспетчер в/в, драйвер, диспетчер процессов, DPC, APC. Структуры данных: объекты - драйвер, устройство, очередь запросов в/в, запрос в/в. Описание последовательности выполняемых действий компонентами ядра ОС).
  13.  Обобщенная структура файловой системы: физический, базовый, логический и символьный. Сравнительный обзор файловых систем.
  14.  Файловая система FAT.
  15.  Файловая система UNIX
  16.  Файловые системы CD-ROM и DVD.
  17.  Файловая система NTFS
  18.  Начальная загрузка операционной системы. Структуры данных файловых систем, используемые при начальной загрузке (FAT DOS, NTFS, UNIX)
  19.  Структуры данных, используемые ядром ОС и файловыми системами (Обзор).
  20.  Особенности «классического» Си как средства программирования ядра ОС (Примеры программного кода). ОС семейства UNIX (LINUX, freeBSD). Понятие мобильности ОС.
  21.  ОС для мобильной телефонии. Системы программирования и загрузки программ в ОС мобильных телефонов.
  22.  ОС реального времени (Обзор).
  23.  Технология проектирования ОС. Монолитные ОС и ОС на основе микроядра. Способы реализации системных сервисов (процессы в режиме пользователя и ядра, драйверы). Использование DLL в ОС с виртуальной памятью. Объектно-ориентированный подход. Объекты ядра и их типы (классы). Синхронизация процессов на основе механизма ожидания событий на объектах.

В конце реферата должен быть приведен список ссылок на информационные источники (в пределах нескольких десятков). В тексте реферата обязательны ссылки на источники.

Программирование и моделирование элементов ОС

Моделирование файловой системы

Программа моделирует в двоичном файле файловую системы (работы может быть выполнена группой студентов, при разработке каждым из них своего уровня).

Физический уровень. Моделируется чтение/запись двоичного файла блоками по 512 байт (секторами). Реализуется:

  1.  первичное планирование носителя (структура носителя), размещение основных компонентов
  2.  управление свободной памятью (FAT-таблица, список секторов с номерами свободных блоков (UNIX), битовая карта, таблица extend-блоков переменной длины).
  3.  управление размещением файла (FAT-таблица, многоуровневый массив указателей (UNIX), таблица extend-блоков переменной длины)

Базовый уровень. Индексный файл. Набор операций с файлом по его индексу (создать пустой файл, читать сектор по логическому номеру, добавить сектор, обновить сектор, читать файл целиком в динамическую память, запись всего файла из памяти).

Логический уровень. Создание системы каталогов. Преобразование –путь –индекс, создание и уничтожение каталога.

Символьный и пользовательский уровни. Команды форматирования, создания, уничтожения и просмотра каталога и файла, экспорт и импорт файла, информация о внутренней структуре файловой системы.

Моделирование структур данных операционных систем

  1.  Каждый процесс имеет описатель, содержащий двухуровневый динамический массив указателей на связанные с ним объекты ОС (файлы, семафоры и т.п.). Объект идентифицируется 16-разрядным handle. Старший байт handle представляет собой смещение в массиве указателей верхнего уровня, младший байт –нижнего. Свободные handle обозначены NULL-указателями. Функция связывания заданного объекта с процессом с выделением ему handle и функция освобождения объекта по заданному handle. Каждый объект имеет счетчик связей. Если объект ОС не имеет больше связей с процессами, то он уничтожается. main моделирует фиксированную последовательность установления и освобождения связей между объектами и процессами (и производит трассировку текущего состояния системы).
  2.  Каждый процесс (поток) может ожидать событий от нескольких объектов одновременно. С каждым объектов может быть связано несколько ожидающих процессов. Смоделировать структуру связей «процессы-объекты» с использованием в каждом процессе динамического массива указателей на объекты и в каждом объекте –динамического массива указателей на ожидающие процессы. Реализовать действия: установить ожидание процессом заданного события, смоделировать наступление события в объекте с деблокированием связанных процессов, для которых это событие –единственное (последнее).
  3.  Задание аналогичное предыдущему, каждый процесс содержит заголовок списка объектов, на которых он ожидает событие, каждый объект содержит список ожидающих процессов. Факт «процесс ожидает событие» реализован элементом, имеющим 4 указателя и включенным одновременно в список процесса и в список объекта.
  4.  Описатель потока (процесса) представляет собой элемент односвязного списка, содержащего базовый и максимальный приоритеты (в диапазоне 0-255). Диспетчер поддерживает 256 приоритетных очередей (массив указателей на списки процессов). Модель поддерживает также список блокированных (ожидающих) процессов. Каждый процесс имеет две случайные характеристики: количество квантов работы и количество квантов блокировки. Диспетчер моделирует поведение процессов и собственный алгоритм. Если время блокировки процесса истекло, то диспетчер извлекает описатель процесса из очереди ожидающих и помещает его в конец очереди в соответствии с его максимальным приоритетом. Затем ищет очередь с максимальным приоритетом, выбирает из нее первый описатель и «выполняет процесс», после чего переносит его в очередь с более низким приоритетом, если его текущий приоритет выше базового. Если количество квантов работы процесса истекло, он переносится в список блокированных, и для него устанавливаются новые случайные значения квантов.
  5.  Задание аналогичное предыдущему, но диспетчер поддерживает единственную общую очередь всех процессов - двусвязный список, из которого извлекается первый процесс с максимальным приоритетом.
  6.  Драйвер устройства содержит таблицу функций (в том числе,  инициализация ввода-вывода и обработки прерывания ввода-вывода) и заголовок очереди запросов ввода-вывода. Функция инициализации ввода-вывода устанавливает случайное значение времени работы устройства. main моделирует появление операции ввода-вывода и формирует случайный интервал времени до следующей операции. Диспетчер ввода-вывода создает запрос ввода-вывода и помещает его в очередь драйвера, если она была пуста, вызывает функцию инициализации ввода-вывода в драйвере. Обработчик прерывания в драйвере вызывает функцию завершения ввода-вывода в диспетчере. Диспетчер удаляет запрос из очереди, и, если она не пуста, вызывает функцию инициализации для следующего запроса.  
  7.  Модель древовидной структуры именованных объектов в памяти. Базовый класс объектов содержит имя объекта и ссылки в списке. Производный класс объектов –каталогов содержит заголовок списка включенных в него объектов, а также указатель на каталог-предок. Имеются также производные классы объектов –процессы, файлы, семафоры и т.д.. Разработать редактор дерева объектов и функцию поиска объекта по спецификации <имя>/<имя>/<имя>.
  8.  Задание аналогичное предыдущему, но объект-каталог использует динамический массив указателей на объекты, включенные в каталог.

Моделирование процессов и обработка прерываний в DOS

При решении задач, связанных с обработкой прерывания необходимо разрешить проблемы, связанные с синхронизацией доступа к общим данным. В частности, нужно использовать функции enable() и disable() для разрешения и запрещения прерывания процессора. Используются средства обработки прерываний при программировании в DOS на Borland C 3.1. Для моделирования потока прерываний можно использовать прерывания от таймера, а основной процесс (main) приостанавливать на случайный интервал времени.

  1.  Очередь отложенных прерываний реализована в виде односвязного списка. Заголовок списка представляет собой два указателя на первый и последний элементы. Элемент списка содержит указатель на «отложенную» функцию, которую следует выполнить по завершении прерывания на низком приоритете (при разрешенном прерываний). Функция генерации отложенного прерывания создает элемент списка, помещает в него указатель и ставит его в очередь. Если очередь была пуста, то входит в режим обслуживания очереди прерываний на низком приоритете (при разрешенном прерывании). Поведение системы рассмотреть на основе источника отложенных прерываний –таймера, а в сами функции отложенного прерывания внести случайную программную задержку.
  2.  Ввод по прерыванию с буферизацией. Имеется список свободных буферов (элементов списка). По прерыванию от таймера генерируется очередное случайное число и записывается в массив (сам массив находится в элементе списка). При заполнении массива  буфер помещается в очередь накопленных данных. main производит периодический опрос очереди (используя случайную задержку –функция delay) , выводит полученные данные и освобождает буфер.
  3.  Модель процессов в DOS –функции, запускаемые событиями. Система поддерживает список: элемент списка содержит указатель на запускаемую функцию, ее фактические параметры и значение задержки перед запуском. Опрос клавиатуры и мыши приводят к планированию фиксированных функций. С помощью модели реализовать игровую интерактивную программу. Функция может также рассылать сообщение всем стоящим в очереди функциям.
  4.  Модель процессов –классы, обрабатывающие сообщения. Базовый класс программных объектов, обрабатывающих сообщения имеет статический список, в который они включаются конструктором и исключаются деструктором, а также виртуальную функцию обслуживания сообщений и функцию –послать сообщение. Класс сообщений содержит указатель на элемент в списке сообщений и ряд параметров, в том числе –код класс –источник сообщения. Класс «программа» поддерживает очередь сообщений и имеет доступ к очереди объектов. Метод run опрашивает таймер, клавиатуру и мышь и генерирует сообщения от них. Полученные сообщения «пропускает» через все программные объекты. Объект, принимающий сообщение, сообщает об этом, после чего обработка сообщения прекращается.  С помощью модели реализовать игровую интерактивную программу.




1. тема налогообложения для сельскохозяйственных товаропроизводителей единый сельскохозяйственный налог;
2. Что Вы за фигура
3. тема налогообложения УСН
4. Реферат- Синдром красного глаза
5. Динамо г Уфа 2 место- Рвачев Никита СК
6. Тема- Частные производные первого порядка Частная производная функции имеет вид
7. . Аниканов Алексей 6 8 3 62 02 6.
8. Учение о грыжах живота
9. тема римского частного права Римское частное право совокупность норм регулирующих вопросы имущественны
10. Лекция 7 ОССиО Тупики В лекции рассматриваются вопросы взаимоблокировок тупиковых ситуаций и
11. Радиационная опасность и проблемы использования АЭС
12.  Понятие государства предполагает понятие политического
13. Как оформить в собсть з
14. органайзер ~ неблагозвучное оно какоето мне сразу на память роботы приходят
15. и значит я люблю Я люблю и значит я живу - В
16. Розничные предприятия их типы виды и функции
17. Если примеры легко приходят на ум мы полагаем что они являются общепринятыми
18. СЕМИНАРЫ-ПРАКТИКУМЫ КАК СРЕДСТВО ПОВЫШЕНИЯ ПРОФЕССИОНАЛЬНОЙ КОМПЕТЕНТНОСТИ ПЕДАГОГОВ В ИСПОЛЬЗОВАНИИ ИКТ В ОБРАЗОВАТЕЛЬНОМ ПРОЦЕССЕ ДОУ
19. мутазилитов суфии ~ мистики ислама
20. века Перикл после короткой политической борьбы со своими афинскими противниками как вне так и внутри свое