Семафоры как средство синхронизации процессов

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 22.10.2014
Размер файла 1,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО

ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ФАКУЛЬТЕТ АВТОМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ

КАФЕДРА ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ

Курсовая работа

СЕМАФОРЫ КАК СРЕДСТВО СИНХРОНИЗАЦИИ ПРОЦЕССОВ

Студент

Зарубин Н.С

шифр 010420910,

группа АВТ-209

Руководитель работы

Коршикова Л.А.

Оглавление

1. Семафоры как средство синхронизации процессов

Взаимное исключение на семафоре

Синхронизация на семафоре

Семафор - счетчик ресурсов

2. Теоретические основы планирования и диспетчеризации

3. Исходные данные

4. Результаты

5. Анализ

6. Диспетчеризация

Дисциплина обслуживания с абсолютным приоритетом

Дисциплина обслуживания LIFO

Заключение

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

1. Семафоры как средство синхронизации процессов

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

Для решения задачи синхронизации необходимо, в случае если один процесс находится в критическом участке, исключить возможность вхождения для других процессов в их критические участки. Хотя бы для тех, которые обращаются к тем же самым разделяемым данным. Когда процесс выходит из своего критического участка, то одному из остальных процессов, ожидающих входа в свои критические участки, должно быть разрешено продолжить работу.

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

В теории операционных систем семафор представляет собой неотрицательную целую переменную, над которой возможны два вида операций: P и V.

· P-операция над семафором представляет собой попытку уменьшения значения семафора на 1. Если перед выполнением P-операции значение семафора было больше 0, P-операция выполняется без задержек. Если перед выполнением P-операции значение семафора было 0, процесс, выполняющий P-операцию, переводится в состояние ожидания до тех пор, пока значение семафора не станет большим 0.

· V-операция над семафором представляет собой увеличение значения семафора на 1. Если при этом имеются процессы, задержанные на выполнении P-операции на данном семафоре, один из этих процессов выходит из состояния ожидания и может выполнить свою P-операцию.

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

Взаимное исключение на семафоре

Для реализации взаимного исключения, например, предотвращения возможности одновременного изменения двумя или более процессами общих данных, создается двоичный (с возможными значениями 0 и 1) семафор S. Начальное значение этого семафора - 1. Критические секции кода (секции, которые могут одновременно выполняться только одним процессом) обрамляются "скобками" P(S) (в начале секции) и V(S) (в конце секции). Процесс, входящий в критическую секцию, выполняет операцию P(S) и переводит семафор в 0. Если в критической секции уже находится другой процесс, то значение семафора уже 0, тогда второй процесс, желающий войти в критическую секцию, блокируется в своей P-операции до тех пор, пока процесс, находящийся в критической секции сейчас, не выйдет из нее, выполнив на выходе операцию V(S).

Синхронизация на семафоре

Для обеспечения синхронизации создается двоичный семафор S с начальным значением 0. Значение 0 означает, что событие, еще не наступило. Процесс, сигнализирующий о наступлении события, выполняет операцию V(S), устанавливающую семафор в 1. Процесс, ожидающий наступления события, выполняет операцию P(S). Если к этому моменту событие уже произошло, ожидающий процесс продолжает выполняться, если же событие еще не произошло, процесс переводится в состояние ожидания до тех пор, пока сигнализирующий процесс не выполнит V(S).

В случае, если одного и того же события ожидают несколько процессов, процесс, успешно выполнивший операцию P(S), должен вслед за ней выполнить V(S), чтобы продублировать сигнал о событии для следующего ожидающего процесса.

Семафор - счетчик ресурсов

Если у нас имеется N единиц некоторого ресурса, то для контроля его распределения создается общий семафор S с начальным значением N. Выделение ресурса сопровождается операцией P(S), освобождение - операцией V(S). Значение семафора, таким образом, отражает число свободных единиц ресурса. Если значение семафора 0, то есть, свободных единиц болше не остается, то очередной процесс, запрашивающий единицу ресурса будет переседен в ожидание в операции P(S) до тех пор, пока какой-либо из использующих ресурс процессов не освободит единицу ресурса, выполнив при этом V(S).

2. Теоретические основы планирования и диспетчеризации

Функцией службы управления процессом является распределение аппаратных ресурсов центрального процессора.

Можно выделить следующие компоненты этой службы:

· планировщик заданий,

· планировщик задач (планировщик процессов).

Задание представляет собой описание комплекса работ, которые пользователь хочет выполнить на ЭВМ. Этот комплекс может быть представлен в виде последовательности некоторых частных работ, описываемых с помощью шагов задания. Из шагов задания формируются задачи. Для выполнения задач система создает процессы.

Объектами работы планировщика заданий (ПЛАНИРОВЩИКа) являются задания, а планировщик задач управляет процессами.

ПЛАНИРОВЩИК решает - какие задания и в какой последовательности должны поступать на обработку (своего рода «макропланировщик»). Планировщик задач выступает в роли «микропланировщика», распределяющего процессор между процессами.

В случае мультипрограммирования ПЛАНИРОВЩИК выбирает несколько заданий из множества всех представленных и вводит их в систему. Для программного выполнения заданий ПЛАНИРОВЩИК создает процессы и выделяет им необходимые ресурсы (память, внешние устройства). Планировщик процессов должен решить, какому из созданных процессов предоставить процессор, в какой момент и на какое время.

ПЛАНИРОВЩИК обеспечивает определенную дисциплину выбора заданий на обработку. Для принятия такого решения могут учитываться такие характеристики заданий, как приоритет, необходимые ресурсы и т.п. ПЛАНИРОВЩИК не только выделяет необходимые ресурсы для поступающего на обработку задания, но и освобождает ресурсы после выполнения задания.

Дисциплиной обслуживания называют правило, на основе которого из очереди выбирается задание на обслуживание.

Классификация дисциплин обслуживания приведена на рис. 1.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Рис. 1. Классификация дисциплин обслуживания

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

,

где t - время обращения задания;

tЗ - время завершения задания;

tП - время поступления задания.

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

Более универсальной оценкой, позволяющей сравнивать между собой задания любой длины, является взвешенное время обращения

,

где W - взвешенное время обращения;

T - действительное время выполнения задания (трудоемкость).

Для случая M заданий можно провести оценку по среднему взвешенному времени обращения

,

где - средневзвешенное время обращения;

- взвешенное время обращения i-го задания;

M - количество заданий.

3. Исходные данные

Методическое указание = 947.

V = 16

H = 12

q = 5

M = 10

Набор заданий представлен в Табл.1:

Табл.1. Набор заданий

Номер задачи п/п

X

K

V(ОП)

H(ВП)

Т

tп

1

46

6

7

4

20

6

2

739

5

5

0

30

11

3

590

4

3

2

60

15

4

547

8

4

6

40

23

5

246

5

5

0

30

28

6

139

9

1

3

50

37

7

390

5

5

0

30

42

8

147

1

3

4

90

43

9

446

3

4

1

10

46

10

539

7

9

1

30

53

4. Результаты

Составим таблицу работы планировщика для дисциплины FIFO.

Табл.2.Работа планировщика для дисциплины FIFO

Время

Событие

V

H

K

6

9

8

0

11

4

8

0

15

1

6

1

23

1

6

1

25

1

6

1

26

Зад2,Зад3

1

6

2

28

1

6

3

37

,Зад2,Зад3

0

3

3

42

0

3

3

43

0

3

3

46

0

3

3

52

0

3

3

53

Зад6

0

3

4

83

Зад6

0

3

4

99

Зад5,Зад6

3

1

4

129

3

1

3

193

3

1

4

242

1

0

4

246

0

1

3

251

0

1

2

262

,Зад9

0

1

3

279

4

7

4

286

8

8

3

294

4

7

2

299

4

7

1

359

13

8

2

407

(по завершению)

16

12

1

На рис.2. Показана временная диаграмма для дисциплины обслуживания FIFO.

Рис.2. Временная диаграмма дисциплины обслуживания FIFO

Ниже приведены расчёты взвешенного времени обращения для каждой задачи и средневзвешенного времени обращения для дисциплины FIFO в целом:

Максимальный коэффициент мультипрограммирования равен 4.

Составим таблицу работы планировщика для дисциплины SJF.

Табл.3.Работа планировщика для дисциплины SJF

Время

Событие

V

H

K

6

9

8

0

11

4

8

0

15

1

6

1

23

1

6

1

25

1

6

1

26

Зад2,Зад3

1

6

2

28

1

6

3

37

,Зад2,Зад3

0

3

3

42

0

3

3

43

0

3

3

46

0

3

3

52

0

3

3

53

Зад6

0

3

4

83

Зад6

1

2

4

88

Зад6

1

2

3

98

Зад6,Зад9

0

2

4

118

0

2

4

131

4

3

5

221

4

3

4

253

1

0

4

257

4

2

3

283

4

2

2

306

На процессоре: Зад4, Зад7, Зад8

0

1

3

311

На процессоре: Зад4, Зад8

0

1

2

401

На процессоре: Зад4, Зад8,Зад10

13

8

3

404

(по завершению)

На процессоре: Зад8,Зад10

16

12

1

На рис.3. Показана временная диаграмма для дисциплины обслуживания SJF.

Рис.3. Временная диаграмма дисциплины обслуживания SJF

Ниже приведены расчёты взвешенного времени обращения для каждой задачи и средневзвешенного времени обращения для дисциплины SJF в целом:

Максимальный коэффициент мультипрограммирования равен 5.

5. Анализ

При анализе диаграмм обеих дисциплин было выявлено, что время завершения работы планировщика различается незначительно (FIFO - 407, SJF - 404). Средневзвешенное время обращения у дисциплины SJF меньше, чем у дисциплины FIFO. Это объясняется тем, что заданий с малой трудоемкостью в системе меньше, нежели с большой, и быстрое их выполнение может несколько повысить производительность системы.

6. Диспетчеризация

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

На рис.4. Показана временная диаграмма для дисциплины обслуживания FIFO.

Рис.4. Временная диаграмма дисциплины обслуживания FIFO

Диспетчер использует метод разделения времени в сочетании с приоритетами. ДО - следующие:

Дисциплина обслуживания с абсолютным приоритетом

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

мена выполняющегося задания происходит в следующих случаях:

· процесс завершен или произошла ошибка;

· процесс перешел в состояние ожидания;

· в очереди появился процесс с большим приоритетом

Достоинства:

· Учитывает приоритетность задач

· Не теряется контроль над системой (в любой момент можно запустить системную задачу с наивысшим приоритетом).

Недостатки:

· Вероятность бесконечного откладывания обслуживания низкоприоритетных задач

· Очень сложная реализация, поскольку сложно определить момент для пересчета приоритетов

Схема дисциплины обслуживания с абсолютными приоритетами представлена на рис 5.

Рис.5. Схема дисциплины обслуживания с абсолютными приоритетами;

Табл.4. Набор заданий

Номер задачи п/п

X

K

V(ОП)

H(ВП)

Т

tп

Пр

1

46

6

7

4

20

6

9

2

739

5

5

0

30

11

5

3

590

4

3

2

60

15

2

4

547

8

4

6

40

23

4

5

246

5

5

0

30

28

6

6

139

9

1

3

50

37

3

7

390

5

5

0

30

42

7

8

147

1

3

4

90

43

1

9

446

3

4

1

10

46

10

10

539

7

9

1

30

53

8

Для определения приоритетов заданий воспользовались алгоритмом Джонсона, который рекомендует пропускать сначала более трудоемкие задачи, для большей загрузки процессора (1 - наибольший приоритет).

Таблица 5. Трассировка диспетчеризации для ДО АП

Номер цикла

Событие

Квант цикла

kоэфф. мульт.)

Квант задания

1

Стартовал супервизор. Поступило задание 2, его приоритет pr=5

14

1

14

2

Поступило задание 3, т.к. его pr=2 =>то оно будет выполняться первым.

1

2

0,5

3

Поступило задание 1(pr = 9). Обслуживание задания 3(pr = 2), 2(pr=5), 1(pr=9).

2

3

0,66

4

Поступило задание 6(pr = 3) и т.к. его pr=3 => Обслуживание задания 3(pr = 2), 6(pr = 3), 2(pr=5), 1(pr=9). Задание 2 выполнено до конца.

25

4

6,25

5

Поступило задание 5(pr=6). Обслуживаются задания 3(pr = 2), 6(pr = 3), 5(pr=6), 1(pr=9). Задание 1 выполнено до конца.

30

4

7,5

6

Обслуживание задания 3(pr = 2), 6(pr = 3), 5(pr=6).

46

3

15,33

7

Поступило задание 4 (pr=4). Обслуживание задания 3(pr = 2), 6(pr = 3), 4(pr=4), 5(pr=6). Задания 5 выполнено до конца.

64

4

16

8

Поступило задание 7 (pr=7). Обслуживание задания 3(pr = 2), 6(pr = 3), 4(pr=4), 7(pr=7). Задание 6 выполнено до конца.

47

4

11,75

9

Обслуживание задания 3(pr = 2), 4(pr=4), 7(pr=7). Задание 3 выполнено до конца.

4

3

1,33

10

Обслуживание задания 4(pr=4), 7(pr=7).

5

2

2,5

11

Поступило задание 9(pr=10). Обслуживание задания 4(pr=4), 7(pr=7), 9(pr=10).

11

3

3,66

12

Поступило задание 8(pr=1). Обслуживание задания 8(pr=1), 4(pr=4), 7(pr=7), 9(pr=10). Задание 4 выполнено до конца.

17

4

4,25

13

Обслуживание задания 8(pr=1), 7(pr=7), 9(pr=10). Задание 9 выполнено до конца.

7

3

2,33

14

Обслуживание задания 8(pr=1), 7(pr=7). Задание 7 выполнено до конца.

8

2

4

15

Обслуживание задания 8(pr=1).

5

1

5

16

Поступило задание 10(pr=8). Обслуживание задания 8(pr=1), 10(pr=8). Задание 10 выполнено до конца.

60

2

30

17

Обслуживание задания 8(pr=1). Задание 8 выполнено до конца.

48

1

48

Дисциплина обслуживания LIFO

Общий принцип функционирования бесприоритетных ДО таков: дисциплина обслуживания выбирает заявки из очереди без учета их важности, по принципу последовательности их поступления.

В данном случае используется ДO LIFO (LAST INPUT - FIRST OUTPUT), т.е последним пришел - первым обслужился. На этом принципе и основывается построение оптимизированной таблицы задач в данном случае. Так как у системы нет информации о приоритетах, то tобсл. почти постоянно.

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

Рис. 6 Схема алгоритма - LIFO

Таблица 6. Трассировка диспетчеризации для ДО LIFO

Номер цикла

Событие

Квант цикла

kоэфф. мульт.)

Квант задания

1

Стартовал супервизор. Поступило задание 2

14

1

14

2

Поступило задание 3=> оно будет выполняться первым.

1

2

0,5

3

Поступило задание 1. Обслуживание задания 1, 3, 2.

2

3

0,66

4

Поступило задание 6. Обслуживание задания 6, 1, 3, 2. Задание 2 выполнено до конца.

25

4

6,25

5

Поступило задание 5. Обслуживаются задания 5, 6, 1, 3. Задание 1 выполнено до конца.

30

4

7,5

6

Обслуживание задания 5, 6, 3.

46

3

15,33

7

Поступило задание 4. Обслуживание задания 4, 5, 6, 3. Задания 5 выполнено до конца.

64

4

16

8

Поступило задание 7 . Обслуживание задания 7, 4, 6, 3. Задание 6 выполнено до конца.

47

4

11,75

9

Обслуживание задания 7, 4, 3. Задание 3 выполнено до конца.

4

3

1,33

10

Обслуживание задания 7, 4.

5

2

2,5

11

Поступило задание 9. Обслуживание задания 9, 7, 4.

9

3

3

12

Поступило задание 8. Обслуживание задания 8, 9, 7, 4. Задание 4 выполнено до конца.

17

4

4,25

13

Обслуживание задания 8, 9, 7. Задание 9 выполнено до конца.

7

3

2,33

14

Обслуживание задания 8, 7. Задание 7 выполнено до конца.

8

2

4

15

Обслуживание задания 8.

5

1

5

16

Поступило задание 10. Обслуживание задания 10, 8. Задание 10 выполнено до конца.

60

2

30

17

Обслуживание задания 8. Задание 8 выполнено до конца.

48

1

48

Заключение

· Закреплены знания об общей организации ОС, её внутренней структуре, разновидностях, о планировании и диспетчеризации заданий в многопользовательской ЭВМ;

· подробно изучены: планирование верхнего уровня с использованием алгоритмов FIFO и SJF, диспетчеризация с бесприоритетной дисциплиной обслуживания FB и диспетчеризация с приоритетной дисциплиной обслуживания абсолютный приоритет.

· построены временные диаграммы мультипрограммной работы алгоритмов FIFO и SJF, проведено сравнение двух случаев по средневзвешенному времени обращения, вследствие чего было выяснено, что алгоритм SJF для данной выборки задач, заданного вариантом, показал себя лучше, чем алгоритм FIFO.

· были изучены два алгоритма диспетчеризации: ДО с абсолютным приоритетом, особенностью которого является то, что на выполнение выбирается процесс, имеющий наивысший приоритет; бесприоритетная ДО LIFO , где задачи выполняются в зависимости от момента поступления в систему, чем позже, тем быстрее процесс выберется на выполнение.

диспетчеризация операционный синхронизация семафор

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

1. Л.А. Коршикова. Операционные системы как системы управления вычислительными ресурсами: Учебное пособие. - Новосибирск: НГТУ, 2001. - 63 с.

2. Коршикова Л.А. Основы операционных систем. Учебное пособие.- Новосибирск.: НГТУ, 2008. - 356 с.

3. Коршикова Л.А. Лабораторный практикум по дисциплине "Операционные системы": Методическое пособие. - Новосибирск.

4. Таненбаум Э. Современные операционные системы. 4-ое изд. - СПб.:Питер, 2006, - 1040с.

Размещено на Allbest.ru

...

Подобные документы

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

    доклад [26,7 K], добавлен 27.12.2013

  • Понятие процесса и потока, характеристика их свойств и особенности создания. Требования к алгоритмам синхронизации, суть взаимного исключения на примере монитора и семафора. Методика изучения элективного курса "Процессы в операционной системе Windows".

    дипломная работа [1,7 M], добавлен 03.06.2012

  • Взаимодействие процессов и потоков в операционной системе, основные алгоритмы и механизмы синхронизации. Разработка школьного курса по изучению процессов в операционной системе Windows для 10-11 классов. Методические рекомендации по курсу для учителей.

    дипломная работа [3,2 M], добавлен 29.06.2012

  • Функции программного интерфейса операционной системы Windows, предназначенные для работы с семафорами. Средства синхронизации Win32 АРI, основанные на использовании объектов исполнительной системы с дескрипторами. Проблемы при использовании семафоров.

    реферат [67,4 K], добавлен 06.10.2010

  • Структура, специфика и архитектура многопроцессорных систем; классификация Флинна. Организация взаимного исключения для синхронизации доступа к разделяемым ресурсам. Запрещение прерываний; семафоры с драйверами устройств. Кластеры распределения нагрузки.

    курсовая работа [455,9 K], добавлен 07.06.2014

  • Алгоритмы планирования мультипрограммных операционных систем. Оценка возможности выполнения двух процессов в реальном времени. Организация доступа к критической секции с использованием передачи сообщений. Обнаружение блокировок в вычислительной системе.

    курсовая работа [858,7 K], добавлен 24.03.2015

  • История разработки многозадачной операционной системы POSIX-стандарта - FreeBSD; описание ее виртуальной памяти, файловой системы, уровня защиты. Описание основных средств синхронизации процессов - сигналов и семафоров. Способы блокировки файлов.

    презентация [584,2 K], добавлен 02.06.2011

  • Классификация компьютерной памяти. Использование оперативной, статической и динамической оперативной памяти. Принцип работы DDR SDRAM. Форматирование магнитных дисков. Основная проблема синхронизации. Теория вычислительных процессов. Адресация памяти.

    курсовая работа [1,5 M], добавлен 28.05.2016

  • Понятие и основополагающие функции операционных систем, их типовая структура и принцип действия. Краткая история становления и развития операционных систем Windows, их разновидности и общая характеристика, основные требования к аппаратным средствам.

    презентация [3,8 M], добавлен 12.07.2011

  • Управление процессами - часть операционной системы, влияющая на функционирование вычислительной машины. Контекст дескриптор процесса и алгоритм его планирования. Средства синхронизации и взаимодействия процессов. Критическая секция, тупики и нити.

    лекция [166,6 K], добавлен 05.02.2009

  • Создание средств представления процессов и механизмов управления на уровне диспетчеризации, разработка алгоритма и написание программы, имитирующую работу простейшей операционной системы. Формирование дескриптора, ввод информации, интерфейс программы.

    лабораторная работа [1,1 M], добавлен 09.07.2010

  • Использование мультипроцессорных архитектур. Однопоточные и многопоточные процессы. Проблемы, связанные с потоками. Локальные данные потока thread-local storage. Семантика системных вызовов, функции синхронизации. Тупики deadlocks и их предотвращение.

    лекция [1,7 M], добавлен 24.01.2014

  • Основные понятия о процессах. Взаимное исключение критических интервалов. Общий подход к построению механизмов синхронизации с использованием концепции критических участков. Основные преимущества алгоритма Декера. Графическое решение задачи о стрелках.

    курсовая работа [1,3 M], добавлен 16.12.2014

  • Исследование принципа действия поэлементной синхронизации с добавлением и вычитанием импульсов. Характеристика кодирования в системах ПДС, классификации кодов, построения кодера и декодера циклического кода. Расчет параметров системы с ОС и ожиданием.

    курсовая работа [2,8 M], добавлен 08.12.2011

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

    презентация [1,6 M], добавлен 24.01.2014

  • Основные функции и процессы подсистемы управления процессами. Диспетчеризация процессов (потоков). Алгоритмы планирования выполнения потоков. Назначение и разновидности приоритетов в операционных системах. Функции подсистемы управления основной памятью.

    презентация [117,7 K], добавлен 20.12.2013

  • Уровни и главные параметры планирования. Алгоритмы first-come, first served, round robin, shoetest-job-first. Принципы назначения приоритетов. Многоуровневые очереди, мultilevel queue. Схема миграции процессов в очередях планирования с обратной связью.

    курсовая работа [93,8 K], добавлен 05.07.2013

  • Программные средства и системы для создания, автоматизирования технологических процессов. Разработка технологического процесса в системе "Вертикаль". Создание 3D моделей операционных заготовок в системе "Catia", технологической оснастки в "Solid Works".

    дипломная работа [6,1 M], добавлен 25.06.2012

  • Разработка приложения, автоматизирующего процесс синхронизации файлов между сменным носителем и каталогом на другом диске. Классы для работы с файловой системой. Интерфейс программы и способы взаимодействия пользователя с ним. Создание новой синхропары.

    курсовая работа [632,0 K], добавлен 21.10.2015

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

    курсовая работа [167,0 K], добавлен 05.12.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.