Репликант (BeOS)
Репликант (англ. replicant) — термин операционной системы BeOS и её семейства — программа, работающая вне оконного интерфейса, непосредственно на рабочем столе; то, что в других операционных системах называется виджетом. Помимо рабочего стола, другие объекты могут принимать репликанты без ущерба для их работоспособности. Для того, чтобы объект мог принимать репликанты, он должен зарегистрировать себя как контейнер (англ. container). В частности, программа Container, иллюстрирующая возможность принимать репликанты, поставлялась с BeOS 4.5 в качестве демонстрационной программы. Работа с репликантомПрограмма, ответственная за работу репликантов в BeOS — это менеджер файлов Tracker. Если в Tracker`е включена опция Show replicants, он будет рисовать пиктограмму, напоминающую ладонь, в углу окон программ, которые могут работать как репликанты, и в углу самих репликантов. Эта пиктограмма называется Replicant handle. Буксировка этой пиктограммы из окна программы на рабочий стол или в другой контейнер создаёт новый репликант, буксировка пиктограммы существующего репликанта перемещает его, буксировка пиктограммы из репликанта в Trash (мусорную корзину) - удалит этот репликант. С точки зрения программистаВ момент начала буксировки пиктограммы (Replicant handle) из окна программы работа этой программы полностью прекращается. Состояние программы архивируется в специальный системный объект (BMessage), который потом пересылается туда, куда была брошена пиктограмма. Если у пункта назначения есть возможности контейнера, системный объект BMessage корректно распознаётся, разархивируется и запускается, вследствие чего образуются два (поначалу абсолютно идентичных) экземпляра программы. В дальнейшем эти экземпляры могут вести себя по-разному. Из этого следует, что
С точки зрения пользователяПрименение репликантов в BeOS широко и разнообразно. Многие развлекательные программы поддерживают работоспособность в качестве репликантов; в частности, Интернет-мессенджер Gim-ICQ, Интернет-браузер NetPositive, проигрыватель SoundPlay и др..
|