Описание тега mutual-exclusion
Взаимное исключение означает, что процессы всегда должны выполнять критические разделы в промежутки времени, которые не перекрываются. Требование взаимного исключения - одно из самых основных в операционной системе; без этого ОС не может безопасно делиться ресурсами.
3
ответа
Какой лучший механизм блокировки ядра Linux для конкретного сценария
Мне нужно решить проблему блокировки для этого сценария: Многопроцессорная система. Все процессоры используют общий (программный) ресурс. Доступ только для чтения к ресурсу очень распространен. (Обработка входящих сетевых пакетов) Доступ на запись н…
31 май '09 в 15:15
1
ответ
Гибридное решение алгоритма потребительского производителя
Я пытаюсь показать, что следующее решение проблемы производителя / потребителя не работает, показывая, что, когда потребитель находится в начале M1, есть случай, когда он не сможет удалить из очереди конечный элемент время и / или есть случай, когда…
16 апр '13 в 17:21
0
ответов
Алгоритм взаимного исключения Дейкстры
Я пытаюсь реализовать алгоритм взаимного исключения Дейкстры в C с OpenMP, алгоритм выглядит следующим образом: {1}: Тем не менее, с моим кодом только Po будет вводить en, оставляя критический раздел, но я не знаю почему. Кто-нибудь может мне помочь…
17 апр '18 в 03:06
1
ответ
Почему семафоры должны быть атомными?
Я изучаю семафоры: sem_wait и sem_signal. Ресурсы говорят, что семафоры должны быть атомарными для реализации взаимного исключения. Я не могу понять, почему они должны быть атомарными?! что будет, если их нет?!
18 ноя '14 в 02:01
1
ответ
ОС: Соответствует ли следующий алгоритм условиям для адекватного развития процессов?
"Дан следующий алгоритм для двух процессов, 0 и 1: Process (i) REPEAT WHILE Interest [j] = 1 DO; START Interest [i]:=1; Critical Section; Interest [i]:=0; Non-critical Section; END где i=0,1; j=1-i;,% представляет собой вектор общих переменных разме…
30 мар '17 в 23:04
1
ответ
Почему это решение Mutex неверно?
Есть 2 процесса P1 и P2, которые могут войти в критическую секцию. Требования к решению Mutex: Зона мьютекса - (критическая секция), которая может содержать только один процесс максимум. Нет взаимной блокировки - процесс вне критической секции не мо…
23 апр '16 в 11:33
8
ответов
Разница между монитором и замком?
Какая разница между монитором и замком? Если блокировка - это просто реализация взаимного исключения, то является ли монитор просто способом использования времени ожидания между выполнениями методов? Хорошее объяснение было бы очень полезно, спасибо…
23 май '09 в 18:59
2
ответа
Разница между взаимным исключением и синхронизацией?
В чем разница между двумя? Этот вопрос пришел мне в голову, потому что я обнаружил, что Мониторы и замки обеспечивают взаимное исключение Семафоры и условные переменные обеспечивают синхронизацию Это правда? Также во время поиска я нашел эту статью …
11 апр '12 в 06:24
1
ответ
Два вопроса о распределенных системах: масштабируемость и взаимное исключение
Первый вопрос: масштабируемость В контексте распределенных систем, что именно можно назвать масштабируемостью? Я предполагаю, что это способность системы использовать столько распределенных устройств, сколько нужно, без необходимости изменять код. Э…
10 янв '16 в 22:08
6
ответов
Что эквивалентно выражению C# lock в PHP?
Для обеспечения параллелизма и обеспечения целостности данных, как бы вы получили блокировку взаимного исключения для данного объекта? Нужно ли использовать блокировку в базе данных или в файле, или PHP поддерживает что-то подобное?
08 фев '10 в 15:20
0
ответов
Два скрипта python пишут с взаимоисключающим txt файлом и ждут друг друга - без многопоточности
У меня есть два скрипта, запущенных в python на той же машине, что и бесконечные циклы, они постоянно отслеживают некоторые значения. Они общаются через file.txt B добавляет сообщения в файл file.txt, чтобы они накапливались. Когда A проверяет file.…
03 апр '14 в 20:18
1
ответ
Вызов освобождения перед приобретением потоком
Я пишу небольшую программу из нескольких потоков и использую семафор для обеспечения взаимного исключения. Но у меня в голове возникает проблема. Что будет, если Semaphore.release называется раньше Semaphore.acquire? у меня работает нормально. это п…
14 янв '14 в 06:06
2
ответа
Взаимное исключение, не затрагивая оба процесса
У меня есть уникальная проблема. Два процесса (P0 и P1) пытаются получить доступ к одному файлу. P0 записывает информацию в файл, а P1 читает информацию. Между двумя существует состояние гонки, в котором P1 читает, прежде чем P0 закончит запись. Я р…
30 июл '10 в 17:15
1
ответ
Алгоритм голодания в операционной системе
Существует ли алгоритм взаимного исключения с переменными общего флага, как у Петерсона, который не предотвращает голодание?
30 апр '18 в 15:27
5
ответов
Как обеспечить выполнение кода проекта библиотеки Android только в одном из установленных приложений, которые его интегрируют?
Я занимаюсь разработкой библиотечного проекта, который будет интегрирован в некоторые популярные приложения для Android, которые можно увидеть в Google Play. Предположим, что у пользователя может быть установлено два или более приложений, и каждое м…
15 июн '12 в 14:12
1
ответ
Как разобрать требуемый взаимоисключающий аргумент в Python C-api
Как можно разобрать группу обязательных, но взаимоисключающих аргументов, используя Python C-api? Например, дано определение функции static PyObject* my_func(PyObject *self, PyObject *args, PyObject *kwargs) { double a; // first argument, required d…
18 янв '19 в 10:29
3
ответа
Взаимное исключение в Joomla
Я создал расширение для Joomla, используя: $id=$database->insertid(); Я только что рассказал, что если два пользователя, вошедшие на сайт, будут совмещать друг с другом, выполнят две записи в базе данных, и тогда это утверждение вернет в обоих сл…
23 янв '13 в 13:12
1
ответ
Понимание критической области
Я читал в Интернете несколько примеров, касающихся критической области, протокола входа и выхода, и мне было трудно разобраться. http://pages.cs.wisc.edu/~dusseau/Classes/CS537-S01/SampleQuizzes/sol2.html class BankAccount { private int turn = 0; pr…
27 фев '14 в 15:15
3
ответа
Параллельный доступ к группам объектов
Я пытаюсь разработать приложение, которое состоит из пула потоков, используя алгоритм кражи работы для одновременного выполнения задач. Эти задачи получить доступ к предопределенному набору объектов; должен "атомарно" получить права на чтение / запи…
01 авг '11 в 22:10
6
ответов
Статические переменные и потоки (C)
Я знаю, что объявление статической переменной внутри функции в C означает, что эта переменная сохраняет свое состояние между вызовами функций. В контексте потоков это приведет к тому, что переменная сохранит свое состояние в нескольких потоках или б…
07 апр '13 в 00:59