Сергей Сергей, есть адресное пространство некоего процесса, ну допустим можно оттуда считать данные, но зачем ОС дает возможность писать туда данные ? Почему она не защищает все адресное пространство процесса от какой либо записи? Организовать межпроцессорный обмен можно так же через чтение или какими нибудь буферами общими...
Механизм межпроцессного обмена данными, наряду с буферами и шинами.
Замена кода может понадобиться для горячего обновления, без остановки программ. Но это какой-то трудный путь.
Еще подумалось про кривую компиляцию, некоторая "онлайн" оптимизация программ.
Но это всё чушь какая-то.
Это понятно, но какая необходимость что то менять, в IOS по умолчанию подобное не делается, насколько мне известно, и система и ПО в ней прекрасно работают.
Закрытая ОС, была) https://github.com/apple/darwin-xnu
Жесткий контроль качества. Ось отполирована и оптимизирована.
В системных программистах, кроме тех, кто работает на Эппл нужды нет.
Все работает из коробки.
для расширения функциональности существующего софта.
хрестоматийный пример - какой-нибудь fraps. или punto switcher.
ещё были всякие переводчики, которые в виндовых окнах умели текст переводить, были сторонние оконные менеджеры, добавляющие кнопки в заголовк окна, много всего было.