The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"В OpenBSD предложен новый системный вызов unveil() для изоля..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "В OpenBSD предложен новый системный вызов unveil() для изоля..." +/
Сообщение от PereresusNeVlezaetBuggy (ok), 30-Июл-18, 19:42 
> Вообще-то это называется "API" и "information hiding". Приложение должно знать то, что
> оно само делает. Как именно работают используемые им сервисы, оно знать
> и не должно. В том числе и куда они лезут -
> это уровень системы.

Это было бы information hiding, если бы таковые форки, открытие файловых дескрипторов и прочая, и прочая не влияли бы на работу приложения. Но ведь они влияют! В любой момент, получается, могут оказаться открыты только что закрытые файловые дескрипторы; обработчик сигнала может оказаться затёрт, или наоборот, оказаться вызванным в неожиданном окружении; состояние глобальной переменной может измениться; неожиданно окажется взятой какая-то блокировка (ручкой машет дед Лок), и ещё много вызывающих сбои ситуаций.

Позиция «если вы вызовете эту функцию, то может произойти всё, что угодно, а если не вызовете — тем более, ваше приложение не может ни на что рассчитывать» удобна только для того, кто такое API реализует, но не для разработчика приложения, который не может более гарантировать пользователю корректную работу своей программы при одних и тех же настройках программы и под одной и той же ОС. Как следствие, головная боль появляется у пользователя/админа, что как бы противоречит исходной задаче, решаемой ИТ — делать пользователям хорошо.

Так что далеко не всякая абстракция является качественной, увы.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
В OpenBSD предложен новый системный вызов unveil() для изоля..., opennews, 29-Июл-18, 09:04  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру