Loading AI tools
З Вікіпедії, вільної енциклопедії
Ф'ютекс (англ. futex, скорочення від англ. fast userspace mutex) — у програмуванні спосіб реалізації семафорів і м'ютексів POSIX у Linux. Вперше введені в ядро з версії 2.5.7 (development); вироблена стабільна семантика з 2.5.40; включаються в стабільні версії серії 2.6.x (stable).
Розроблено Уберті Франке (Hubertus Franke) (з дослідницького центру IBM імені Томаса Ватсона), співробітниками технологічного центру IBM з Linux Меттью Кирквудом (Matthew Kirkwood) і Рості Расселом, а також розробником в компанії Red Hat Інго Молнаром (Ingo Molnar).
Ф'ютекс являє собою вирівняне ціле в загальній пам'яті (для декількох процесорів). Це ціле може бути збільшене або зменшене на одиницю за одну асемблерну інструкцію. Процеси, «зав'язані» на цей ф'ютекс, чекають, коли це значення стане позитивним. Всі операції з ф'ютексами практично повністю проводяться в просторі користувача, відповідні функції ядра задіюються лише в обмеженому наборі спірних випадків. Це дозволяє підвищити ефективність використання синхронізуючих примітивів, оскільки більшість операцій не використовують арбітраж, а значить і уникнути використання відносно дорогих системних викликів (англ. system calls).
Подібним чином оптимізовані об'єкти CRITICAL_SECTION у Win32 API, а також FAST_MUTEX в ядрі Windows.[1]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.