Границы. Процессы и домены приложений

Этот раздел относится к технологии прежних версий, которая сохраняется для обеспечения обратной совместимости с существующими приложениями и не рекомендуется для разработки новых приложений. Сейчас распределенные приложения следует создавать с помощью  Windows Communication Foundation (WCF).

Современные операционные системы и среды выполнения должны защищать отдельные приложения от сбоев других приложений. Этот механизм защиты реализуется с помощью процессов и доменов приложений.

Процессы

Операционные системы Windows защищают приложения друг от друга за счет выполнения каждого из приложения в собственном процессе. Если в приложении происходит сбой, это отражается только на его процессе; выполнение приложений в других процессах продолжается. Разумеется, поскольку адреса памяти в рамках одного процесса не имеют смысла в других процессах, вызывать функции одного процесса из другого процесса достаточно сложно. Упаковка вызова с его аргументами в одном процессе и их распаковка в другом процессе для успешного осуществления межпроцессного вызова называются маршалингом.

Домены приложений

В управляемой среде домены приложений (или логические процессы) и контексты обеспечивают изоляцию и безопасность с меньшими затратами и более широкими возможностями масштабирования, чем процессы операционной системы. Это, в том числе, обусловлено и тем, что управляемый код обеспечивает типобезопасность с возможностями проверки. Каждое управляемое приложение выполняется в домене приложения, который может запускаться другим приложением или основной средой. Система удаленного взаимодействия .NET обеспечивает удобную и хорошо защищенную инфраструктуру для взаимодействия между доменами приложений.

См. также

Основные понятия

Границы. Процессы и домены приложений

Другие ресурсы

Обеспечение поддержки удаленного взаимодействия объектами