|  | Лексикон 3ОС. Объект | 
Определение - характеристика
 Объект - структура данных, представляющая собой полноценный 
  (т.е. полностью функциональный) экземпляр некоторого класса. 
  Каждый такой экземпляр обладает определенным набором присущих ему свойств, доступ 
  к которым возможен только со стороны принадлежащих ему методов. И те, и другие могут 
  быть частично или полностью унаследованы другими 
  объектами. 
  
  Одни объекты могут содержать в себе другие объекты, выступая при этом в роли контейнера 
  объектов. 
  
  В 3ОС под объектом также понимается некая совокупность 
  функционально зависимых экземпляров базового (или эквивалентного ему) класса, состоящая 
  из двух типов модулей: завершенного полностью 
  (удаленный объект) и незавершенного относительно 
  кода (объект-"тень") или данных (объект-"иждивенец") 
  экземпляров класса; во время исполнения представляющих собой единый, рассредоточенный 
  по нескольким адресным пространствам объект. 
  
    Первый из них (УО) является системным референсным 
  объектом и выступает в качестве сервера принадлежащих 
  ему (сосредоточенных в нем) ресурсов. В качестве 
  клиента выступают испытывающие незавершенность 
  (вплоть до момента их первого обращения к УО) ТО и 
  ИО, которые на период исполнения являются полноценными 
  (полностью эквивалентными УО) экземплярами класса. 
 Удаленный объект (УО) - экземпляр произвольного 
  класса, зарегистрированного в фабрике 
  класса, предоставляющий принадлежащие ему ресурсы 
  (код или данные) в совместное с другими объектами пользование. Расположен вне 
  адресного пространства потока, производящего 
  вызов ресурса УО. Владельцем УО является поток-владелец 
  адресного пространства, в котором расположен УО. Вызов принадлежащего УО ресурса 
  может быть осуществлен либо синхронно, либо асинхронно, 
  либо транзакционно. 
  
  Каждый объект, рассматривающийся в качестве УО, обязан иметь уникальный идентификатор. 
Удаленный метод - объявленная и реализованная в теле УО функция, вызов которой организуется посредством механизма удаленного доступа.
 
  Удаленный доступ (УД) - предоставление 
  доступа к данным или методам удаленного объекта 
  для их совместного использования с вызывающим объектом. Реализуется с помощью 
  организации виртуального адресного пространства, совладельцем которого выступает 
  поток-владелец вызывающего объекта. Обеспечивает псевдо-связь методов и данных 
  двух совмещаемых объектов, один из которых является запрашиваемым удаленным 
  объектом, а второй - "точкой вызова". 
  Доступность УО определяется правами доступа к каждому из методов удаленного
  объекта, регламентация которых выполняется самим удаленным объектом.
  При отсутствии УО в оперативной памяти, ОС определяет возможность использования 
  несуществующих на момент запроса УД объектов при наличии в ОС соответствующих 
  им классов и служебной информации о них. 
 
  Точка вызова - объект, имеющий класс 
  эквивалентный классу удаленного вызываемого объекта, но испытывающий 
  незавершенность относительно принадлежащих классу 
  методов (объект-"тень") или данных 
  (объект-"иждивенец") класса. 
  
  "Точка вызова" изолирована собственным пространством кода и данных, в 
  пределах которых осуществляется ее работа. 
Незавершенность объекта - физическое отсутствие конструкций класса: членов (данных) или методов класса (кода).
Теневой объект (ТО, объект-"тень") - экземпляр произвольного класса, испытывающий незавершенность относительно методов работы с собственными данными и инициирующий вызов методов удаленного объекта. Секция VMT ТО остается несуществующей на протяжении всей жизни ТО.
Объект-"иждивенец" (ИО) - экземпляр произвольного класса, испытывающий незавершенность относительно собственных данных и инициирующий вызов данных удаленного объекта. Секция VMT ИО остается несуществующей до первого обращения к УО.
Синхронный вызов - способ вызова удаленного метода, при котором управление выполнившему вызов потоку возвращается после полного завершения вызванного метода. В этом случае выполнение вызывающего потока приостанавливается, вызывающий поток ожидает завершения работы вызванного метода, исполнение потока продолжается только после возвращения ему операционной системой управления.
Асинхронный вызов - способ вызова удаленного метода, при котором управление выполнившему вызов потоку возвращается до истечения кванта времени, отпущенного на выполнение этого потока. В этом случае вызывающий поток может продолжать исполнение сразу после возвращения ему управления от ОС, не дожидаясь завершения работы вызванного метода.
Транзакционный вызов - способ вызова удаленного объекта, при котором происходит групповая передача данных запрашивающему их потоку. Используется исключительно при работе с объектами-"иждивенцами".