книга DipMaster-Shop.RU
поиск
карта
почта
Главная На заказ Готовые работы Способы оплаты Партнерство Контакты F.A.Q. Поиск
Мультимедийный информационный киоск, специализированный на продажу аудио дисков ( Дипломная работа, 106 стр. )
На входе А{1:16}и В{1:16}. Посчитать количество несовпадений по разрядам. На выходе сформировать учетверенное значение этого числа ( Контрольная работа, 18 стр. )
На устройство по шине А{8:1} побайтно приходит 32-разрядный код. Если число единиц кода четно, то сформировать номер младшей единицы, в противном случае - код 111111. Вар. 26 ( Контрольная работа, 20 стр. )
На устройство по шине А{1:32} последовательно друг за другом поступают два параллельных 32-х разрядных слова. Определить слово, содержащее более длинную последовательность нулей и длину этой последовательности. Входные и выходные слова перед ( Контрольная работа, 17 стр. )
На устройство по шине А{8:1} побайтно приходит 32-разрядный код. Если число единиц кода четно, то сформировать номер младшей единицы, в противном случае - код 111111. ( Контрольная работа, 20 стр. )
На устройство по шинам А{48:1} и N{6:0} поступают параллельные кода. Код N - двоичное целое число со знаком в обратном коде. Осуществить циклический сдвиг на |N| разрядов влево, если N>0 , и вправо, если N<0. ( Контрольная работа, 12 стр. )
Назначение и возможности информационной системы БОСС-копрорация. . Основные требования для внедрения информационной системы БОСС-копрорация ( Реферат, 17 стр. )
Назначение и классификация текстовых редакторов. Функции и возможности текстового редактора Word для Windows ( Контрольная работа, 28 стр. )
Назначение и область применения разрабатываемой программы ( Контрольная работа, 32 стр. )
Назначение и основные услуги телекоммуникационных компьютерных сетей ( Контрольная работа, 15 стр. )
Назначение и особенности использования сети Интернет ( Реферат, 15 стр. )
Назначение и функции служб защиты информации ( Реферат, 23 стр. )
Назначение интерфейса командной строки ( Контрольная работа, 10 стр. )
Назначение СУБД MS Access и создание таблиц. . Практическая реализация базы данных «Ночные клубы, дискотеки». ( Контрольная работа, 22 стр. )
Назначение форм СУБД Access. Создание новой формы. Конструирование формы для документа. Печать форм ( Контрольная работа, 11 стр. )
Назначения, виды, поколения и основные характеристики кэш-памяти ( Реферат, 19 стр. )
Назовите основные единицы измерения информации ( Контрольная работа, 14 стр. )
Наиболее известная и наиболее хорошо зарекомендовавшая себя - система "Консультант+" ( Контрольная работа, 13 стр. )
Наименование объекта с максимальным износом оборудования ( Контрольная работа, 26 стр. )
Найти в Гарант+: "Порядок усыновления детей граждан России иностранными гражданами" ( Контрольная работа, 14 стр. )
НАКОПЛЕНИЕ И АНАЛИЗ ИНФОРМАЦИИ ОБ АКТИВНОСТИ ПОЛЬЗОВАТЕЛЕЙ В ИНФОРМАЦИОННЫХ СИСТЕМАХ И ЕЁ ИСПОЛЬЗОВАНИЕ В КАЧЕСТВЕ ДОКАЗАТЕЛЬНОЙ БАЗЫ ( Дипломная работа, 84 стр. )
Написание приложения «Школы России» ( Контрольная работа, 25 стр. )
Написание программы, позволяющей создавать оконные интерфейсы и сохранять их для дальнейшего использования ( Курсовая работа, 44 стр. )
Написание сайта для новостного Интернет агентства ( Курсовая работа, 38 стр. )
Направления автоматизации управленческой деятельности ( Контрольная работа, 17 стр. )

Содержание

1. Введение…………………………………………………………………3

1.1. Понятия процессов и задач в Windows NT…………………..……3

1.2. Проблемы синхронизации процессов и задач ……………………3

1.3. Техническое задание………………………………………………..4

2. Анализ средств синхронизации в Windows NT……………………..5

2.1. Ожидание завершения задачи или процесса………………………5

2.2. Использование событий…………………………………………….6

2.3. Критические секции…………………………………………………9

2.4. Объекты Mutex…………………………………………………..….11

2.5. Семафоры……………………………………………………………12

3. Оценка работы задач при синхронизации………………………….15

4. Разработка многозадачного приложения для Windows NT, исследующего различные виды синхронизации…………………..17

4.1. Структурно-функциональная организация приложения……..…..17

4.2. Описание отдельных модулей………………………………….….17

4.3. Результаты работы программы и их анализ…………………..…..20

5. Приложение. Документация сопровождения программы……..…25

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

1. Введение

1.1. Понятия процессов и задач в Windows NT

В ОС Windows NT существует два понятия, имеющие отношение к мультизадачности. Это процессы и задачи (нити).

Процесс (process) создаётся, когда программа загружается в память для выполнения. Каждому процессу выделяется в монопольное владение 2 Гбайт изолированного адресного пространства, в которое другие процессы не имеют никакого доступа.

Сразу после запуска процесса создаётся одна задача (thread) (иначе её называют нить или поток). Нить – это просто фрагмент кода приложения, который может выполняться автономно и независимо от других задач в рамках одного процесса. При необходимости эта задача может запускать другие задачи, реализуя таким образом мультизадачность в рамках одного процесса. Все задачи имеют доступ к памяти, выделенной запустившему их процессу.

Следовательно, в ОС Microsoft Windows NT могут работать одновременно несколько процессов и в рамках каждого процесса могут параллельно работать несколько задач.

1.2. Проблемы синхронизации процессов и задач

В любой многозадачной системе проблема синхронизации встает, как только система позволяет иметь одновременный доступ к объектам. Вся теория синхронизации была разработана в 60-х–начале 70-х годов Деккером (Dekker), Дейкстрой (Dijkstra) и другими.

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

Здесь возможно очень много вариантов. Например, главная задача создает задачу, которая выполняет какую-либо длительную работу, например подсчет страниц в текстовом документе. Если теперь потребуется отобразить количество страниц на экране, главная задача должна дождаться завершения работы, выполняемой созданной задачей.

Создавая мультизадачное приложение, необходимо тщательно планировать взаимодействие задач, избегая конфликтных ситуаций, когда различные задачи пытаются одновременно использовать один и тот же ресурс. Например, одна задача может выполнять запись в ячейку памяти нового значения, а вторая – чтение из неё. Результат чтения при этом будет зависеть от момента, когда произойдет чтение, - до записи нового значения или после.

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

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

В программном интерфейсе ОС Windows NT предусмотрены различные средства синхронизации задач, как выполняющиеся в рамках одного процесса, так и принадлежащих разным процессам. Это средства организации последовательного использования ресурсов (mutex), критические секции (critical section), семафоры (semaphore), и события (event).

1.3. Техническое задание

Исследовать средства синхронизации задач в мультизадачной ОС Microsoft Windows NT. Продемонстрировать различные способы синхронизации на примере. Для этого необходимо написать приложение, в котором с помощью различных средств синхронизации синхронизируются действия нескольких нитей (задач). Результат работы программы представить в виде временной диаграммы, которая отражает применение средств синхронизации.

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

1. А.В.Фролов, Г.В.Фролов. Программирование для Windows NT. М.,1996.

1. Ю.Тихомиров. Vicual C++ 6. СПб, 1998.

2. М.Хаймен. Borland C++ для “чайников”. Киев, 1995.

3. С.О.Бочков, Д.М.Субботин. Язык программирования СИ для персонального компьютера. М., 1990

Виртуальные ресурсы:

Центр информационных технологий (раздел - сетевые ОС):

http://citforum.ru/operating_systems/sos/contents.shtml

Примечаний нет.

2000-2024 © Copyright «DipMaster-Shop.ru»