30506

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

Доклад

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

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

Русский

2013-08-24

56.12 KB

5 чел.

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

Доска

Ответ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


 

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

69418. Алгоритм і його властивості. Схеми алгоритмів 20.57 KB
  Термін алгоритм виник задовго до появи комп’ютерів і походить від імені давнього філософа й математика з Хорезму що жив у IX ст. Саме він у своїх трактатах описав правила алгоритми додавання віднімання множення та ділення багатозначних чисел якими користуємося сьогодні.
69419. Графічне подання різних видів обчислювальних процесів 21.85 KB
  Схематично лінійний алгоритм зображується так: Початок b c у = а bс y Кінець Початок b c у = а bс y Кінець Введення значень b c Обчислення значень у Друкування значення у Розгалужений алгоритм описує процес обчислення такого виразу: Схематично розгалужений алгоритм...
69420. Шпальта: введення та редагування тексту. Вікно діалогу “Колонки” 147.35 KB
  Word дає змогу створювати документи двома способами: або з допомогою шаблону Обычный (Normal.dot), або з допомогою шаблону, який укаже користувач. На початковій стадії оволодіння технологією роботи з Word користувач, звичайно, створює документи, які задовольняє шаблон...
69421. Вставка в текст спеціальних символів. Створення і вставка автотексту. Вставка в документ Word діаграм 49.84 KB
  Для вставлення тих символів, аналогів яких нема на клавіатурі потрібно вибрати пункт меню Вставка, Символ. У таблиці символів вибираємо потрібний символ і натискаємо Вставить. Над таблицею символів розташована таблиця шрифтів.
69422. Друк документів в Word. Стилі документів 99.29 KB
  Для отримання твердої копії можна скористатись кнопкою піктографічного меню яка забезпечує швидкий спосіб друкування але має суттєвий недолік друкується увесь документ або виконати команду File Файл Print Печать.
69423. Робота з об’єктами в текстовому редакторі Word. Форматування об’єктів 113.32 KB
  У Word передбачені опції для форматування різноманітних елементів документа символів абзаців сторінок і розділів. При форматуванні символа будьякі типи форматування будуть застосовуватися до всіх символів виділеної частини тексту чи до всіх символів що будуть введені після...
69424. Сортування і фільтрація даних в Excel 181.22 KB
  Сортування може відбуватися за двома напрямками: за збільшенням значення ключової ознаки; за зменшенням значення ключової ознаки. Сортування даних по одній графі Наприклад необхідно впорядкувати список студентів за алфавітом.
69425. Послуги комп’ютерних мереж. Світова глобальна комп’ютерна мережа Internet 30.77 KB
  Internet утворює немовби ядро яке забезпечує взаємодію інформаційних мереж що належать різним установам у всьому світі. Таким чином Internet можна розглядати як деякий глобальний інформаційний простір.
69426. Загальна схема ПЗ. Операційні системи 17.36 KB
  Команди всіх операційних систем призначені для створення знищення копіювання переміщення файлів тощо. Операційна система стежить щоб ці помилки не були фатальними ні для файлів користувача ні для комп’ютерної системи вцілому.