30506

Процессы и потоки. Объекты межпроцессной синхронизации. Понятие гонок и взаимной блокировки

Доклад

Математика и математический анализ

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

Русский

2013-08-24

56.12 KB

3 чел.

38. Процессы и потоки. Объекты межпроцессной синхронизации. Понятие гонок и взаимной блокировки

Доска

Ответ

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

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

Потоки выполнения отличаются от традиционных процессов многозадачной операционной системы тем, что:

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

Методы межпроцессной синхронизации:

  1. Файл
  2. Сигнал

Фактически, сигнал — это асинхронное уведомление процесса о каком-либо событии. Когда сигнал послан процессу, операционная система прерывает выполнение процесса. Если процесс установил собственный обработчик сигнала, операционная система запускает этот обработчик, передав ему информацию о сигнале. Если процесс не установил обработчик, то выполняется обработчик по умолчанию.

  1. Сокет
  2. Канал
  3. Именованный канал
  4. Семафор

Семафор — объект, позволяющий войти в заданный участок кода не более чем n потокам. Определение введено Эдсгером Дейкстрой.

Семафоры используются при передаче данных через разделяемую память.

  1. Разделяемая память

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

  1. Обмен сообщениями
  2. Проецируемый в память файл

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

  1. Очередь сообщений
  2. Почтовый ящик

Состояние гонки (англ. race condition) — ошибка проектирования многопоточной системы или приложения, при которой работа системы или приложения зависит от того, в каком порядке выполняются части кода.

Взаимная блокировка (англ. deadlock) — ситуация в многозадачной среде или СУБД, при которой несколько процессов находятся в состоянии бесконечного ожидания ресурсов, занятых самими этими процессами.


 

А также другие работы, которые могут Вас заинтересовать

17143. Створення таблиць і робота з ними. Створення схеми даних у базі 36.27 KB
  Лекція №18 Тема: Створення таблиць і робота з ними. Створення схеми даних у базі. План Структура таблиці. Режим конструктора Режим таблиці Режим майстра таблиць Редагування таблиці. Створення схеми даних у базі. Створення структури таб
17145. Процес створення структури БД в MS ACCESS. Конструювання таблиць бази даних у середовищі MS ACCESS, їх зв’язування та заповнення даними 1.85 MB
  ЛАБОРАТОРНА РОБОТА №1 Тема: Процес створення структури БД в MS ACCESS. Конструювання таблиць бази даних у середовищі MS ACCESS їх зв’язування та заповнення даними. Мета: Вивчити основні засоби роботи з базами даних в MS ACCESS. Набути практичних навичок створення таблиць бази дан...
17146. Конструювання форм і робота з ними 88.48 KB
  Лекція №19 Тема: Конструювання форм і робота з ними. План Елементи керування формою. Авто форми. Структура форми. Створення форм. З одного боку форми дозволяють користувачам вводити дані в таблиці бази даних без безпосереднього доступу до самих...
17148. Формування запитів у СУБД MS Access 40.2 KB
  Лекція №20 Тема: Формування запитів у СУБД MS Access. План Види запитів. Створення простих запитів за допомогою Майстра. Створення запитів за допомогою Конструктора. Запит на створення таблиці. Запит на модифікацію даних. Перехресний запит.
17150. Конструювання звітів у СУБД MS Access 57.51 KB
  Лекція №21 Тема: Конструювання звітів у СУБД MS Access. План Види звітів. Створення звіту за допомогою Конструктора. Розробка багатабличного звіту в режимі Мастер отчетов. Розробка багатабличного звіту в режимі Конструктор. Для формування вих
17151. Процесори презентацій. Види і типи презентацій. MS Power Point 31.92 KB
  Лекція №22 Тема: Процесори презентацій. Види і типи презентацій. MS Power Point. План Види і типи презентацій. Призначення PowerPoint. Призначення окремих режимів перегляду слайдів. Основні способи створення презентації. Демонстрація презентації. Вид