
- •Федеральное агентство связи
- •Московский технический университет связи и информатики
- •План умд 201/14 уч. Год Методические указания
- •Общие замечания
- •1 Методические указания к материалу курса
- •1.1 Введение в операционные системы
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •Архитектура ос
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •1.3 Управление процессами
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •1.4 Управление памятью
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •1.5 Управление вводом/выводом и файловые системы
- •Вопросы, подлежащие изучению:
- •2 Курсовая работа
- •2.1 Задание
- •2.2 Методические указания
- •2.2.1 Отображение файлов
- •2.2.2 Почтовые ящики
- •2.2.3 Каналы
- •2. Задание на курсовую работу
- •3. Методические указания
- •3.1 Общие замечания
- •Порядок выполнения курсовой работы
- •3.3 Структура и примерное содержание пояснительной записки
- •3.4 Требования к оформлению пояснительной записки
- •3.5 Защита курсовой работы
- •4. Список рекомендованной литературы
- •Федеральное агентство связи
- •Московский технический университет связи и информатики
- •Содержание
- •1. Цели и задачи выполнения курсовой работы…………………….…..3
1.4 Управление памятью
Функциями ОС по управлению памятью в мультипрограммной системе являются: учет свободной и занятой памяти; выделение памяти процессам и освобождение памяти по завершении процесса; организация виртуальной памяти; настройка адресов программы на конкретную область физической памяти; динамическое распределение памяти; дефрагментация памяти; защита памяти. Классификация методов распределения памяти приведена на рис.
Вопросы, подлежащие изучению:
Алгоритмы распределения памяти без использования внешних носителей
(фиксированные, динамические, перемещаемые разделы) ([1], с. 43-47).
Страничное распределение памяти([1], с. 197-207).
Сегментное распределение памяти ([1], с. 207-210).
Сегментно-страничное распределение памяти ([1], с. 210-215).
Принцип действия кэш-памяти. Способы отображения основной памяти на кэш. Проблема согласования данных ([1], с. 218-226).
Схема выполнения запросов в системах с кэш-памятью([1], с. 226-230) .
Вопросы для самоконтроля
1. Чем ограничивается максимальный размер физической памяти, которую можно установить в компьютере определенной модели?
2. Чем ограничивается максимальный размер виртуального адресного пространства, доступного приложению?
3. Почему размер страницы выбирается равным степени двойки?
4. На что влияет размер страницы? Каковы преимущества и недостатки большого размера страницы?
5. Где хранятся таблицы страниц и таблицы сегментов?
1.5 Управление вводом/выводом и файловые системы
Одной из главных задач ОС является обеспечение обмена данными между приложениями и периферийными устройствами компьютера. Подсистема ввода/вывода мультипрограммной ОС должна решать следующие задачи: организация параллельной работы устройств ввода-вывода и процессора, согласование скоростей обмена и кэширование данных, разделение устройств и данных между процессами, организация удобного интерфейса между устройствами и остальной частью системы, поддержка широкого спектра драйверов, динамическая загрузка и выгрузка драйверов, поддержка нескольких файловых систем, поддержка синхронных и асинхронных операций ввода-вывода.
Вопросы, подлежащие изучению:
Задачи ОС по управлению файлами и устройствами ([1], с. 276-284).
Физическая организация жесткого диска([1], с. 305-310).
4 способа размещения файлов на жестком диске ([1], с. 310-314).
Контроль доступа к файлам.
FAT([1], с. 314-318).
Структура тома UFS ([1], с. 319-322).
NTFS: структура тома, типы файлов, каталоги ([1], с. 322-331).
Организация контроля доступа к файлам ([1], с. 342-357).
Отказоустойчивость файловых систем ([1], с. 384-388).
Процедура самовосстановления NTFS ([1], с. 388-394).
Избыточные дисковые подсистемы RAID ([1], с. 394-400).
2 Курсовая работа
Цель работы: получение практических навыков по использованию Win32 API
для программирования механизмов межпроцессного взаимодействия (IPC).
2.1 Задание
Разработать программу, выполняющую с помощью механизмов межпроцессного
взаимодействия одну из следующих задач в соответствии с № по журналу. Варианты заданий приведены в таблице 1.
Таблица 1.Задание на курсовую работу.
№ варианта |
Способ |
Задача |
1, 16 |
отображение файлов |
Реализовать вычисление определителя квадратной матрицы с помощью разложения ее на определители меньшего порядка. При этом «ведущий» процесс рассылает задания «ведомым» процессам, последние выполняют вычисление определителей, а затем главный процесс вычисляет окончательный результат. |
2 , 21 |
почтовые ящики | |
3, 26 |
каналы | |
4, 17 |
отображение файлов |
Реализовать нахождение обратной матрицы методом Гаусса, при этом задания по решению систем линейных уравнений распределяются поровну для каждого процесса. |
5 , 22 |
почтовые ящики | |
6, 27 |
каналы | |
7, 18 |
отображение файлов |
Реализовать перемножение двух матриц с помощью нескольких процессов: каждый процесс выполняет перемножение строки первой матрицы на столбец второй (в соответствии с правилом умножения матриц). При необходимости процессам, выполняющим умножение, может быть отправлено несколько заданий. |
8 , 23 |
почтовые ящики | |
9, 28 |
каналы | |
10, 19 |
отображение файлов |
Реализовать алгоритм блочной сортировки файла целых чисел. Каждый процесс, выполняющий сортировку, получает свою часть файла от ведущего процесса и сортирует его. Ведущий процесс выполняет упорядочивание уже отсортированных блоков. При необходимости ведомым процессам может быть выделено более одного задания на сортировку. |
11, 24 |
почтовые ящики | |
12, 29 |
каналы | |
13, 20 |
отображение файлов |
Реализовать обмен текстовыми сообщениями между несколькими процессами. Обеспечить возможность отправки сообщения сразу нескольким адресатам. Реализовать подтверждение приема сообщения адресатом или, в случае потери сообщения, повторную его передачу. |
14, 25 |
почтовые ящики | |
15, 30 |
каналы |