Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Разработка ПО.doc
Скачиваний:
48
Добавлен:
01.05.2014
Размер:
96.26 Кб
Скачать

Северокавказский филиал белгородского государственного технологического университета имени в. Г. Шухова Курсовая работа

По дисциплине: Операционные системы

Тема: Решение задач синхронизации с использованием событий.

Выполнила студент III-го курса Группы ПВ – 31 факультета Программное обеспечение ВТ и АС Комаристый Михаил Александрович

Дата «__» __________ 200_г.

Проверил преподаватель:

Акопов Владимир Николаевич

200_Г. Содержание:

  1. Объект ядра………………………………………………………………стр.4

  1. Синхронизация …………………………………………………………..стр.6

  1. Методы синхронизации …………………………………………………стр.8

  1. События………………………………………………………………….стр.11

  1. Листинг программы ……………………………………………………стр.13

  1. Список литературы……………………………………………………. стр.17

Цель работы: Получение практических навыков по использованию Win32 API для исследования потоков

Задание: Реализовать программу, решающую задачу синхронизации с помощью событий.

Объект ядра

Архитектура Windows базируется на использовании множества различных объектов. Объект ядра (kernel object) - это структура данных, доступ к членам которой, имеет только ядро Windows. Далее приведены примеры объектов ядра:

  • объект процесс;

  • объект поток;

  • объект файл;

  • объект отображаемый в память файл, то есть файл, содержимое которого отображено непосредствен­но на виртуальное адресное пространство и используется как физическая память;

  • объект каналы используется для обмена данными между процессами;

  • объект событие является объектом синхронизации потоков, сигнализирую­щим о завершении операции;

  • объект мьютекс представляет собой объект синхронизации потоков, который может использоваться несколькими процессами;

  • объект семафоры используется для того, чтобы учитывать ресурсы и сиг­нализировать потоку о доступности ресурса на данный момент.

Каждый объект ядра — на самом деле просто блок памяти, выделенный ядром и доступный только ему. Этот блок представляет собой структуру данных, в элементах которой содержится информация об объекте. Некоторые элементы (дескриптор защиты, счетчик числа пользователей и др.) присутствуют во всех объектах, но большая их часть специфична для объектов конкретного типа. Например, у объекта "процесс" есть идентификатор, базовый приоритет и код завершения, а у объекта "файл" — смещение в байтах, режим разделения и режим открытия.

Поскольку структуры объектов ядра доступны только ядру, приложение не может самостоятельно найти эти структуры в памяти и напрямую модифицировать их содержимое. Такое ограничение Microsoft ввела намеренно, чтобы ни одна программа не нарушила целостность структур объектов ядра. Это же ограничение позволяет Microsoft вводить, убирать или изменять элементы структур, не нарушая работы каких-либо приложений.

Соседние файлы в предмете Операционные системы