====== Словарь BlackBox. Понятие хоста. ====== \\ Эталон BlackBox содержит подсистему Host. Давайте разберёмся, что это такое. И для начала неплохо бы просто перевести это слово на русский язык. Во-первых, посмотрим на [[http://translate.academic.ru/?q=host&f=en&t=ru&stype=1|перевод]] слова //host//: [həʋst] n\\ * 1. хозяин (по отношению к гостю) * 2. хозяин гостиницы; трактирщик; содержатель постоялого двора. * ... * 6. вчт. * 1) главный компьютер, центральный процессор\\ * 2) = host computer Во-вторых, заглянем в [[http://www.etymonline.com/index.php?term=host|этимологию]] слова //host//: * host (n.1) "person who receives guests" Итак, Host - это "хозяин, принимающий гостей". Для наглядности, схема: {{ :host-guest.png?nolink |}} Хозяин и гость - неразрывно связанные понятия. Где гость - там и хозяин и наоборот. В общем, разобрались, можно доставать Чёрный Ящик. И тут-то нас поджидает сюрприз. В документации по BlackBox ничего не сказано про подсистему //Host//, кроме того, что она содержит "Private code of BlackBox". Поди разбери, что означает private в данном контексте - скорее всего, "закрытый". Правда, иногда встречаются упоминания того факта, что отдельные модули этой подсистемы содержат некие "Windows-specific" вещи. А в целом, картина неясная. Но мы не привыкли отступать. В книге Куно Пфистера "Component Software" (кто хочет, может её отыскать в интернете или даже купить, а я буду просто ссылаться на этот труд) есть целая глава, посвящённая компонентному каркасу BlackBox. И вот что он пишет (перевод мой): "Как предполагает его название, BlackBox построен на принципах чёрных ящиков (абстракций) и повторного использования в смысле объектной композиции (абстрактный интерфейс чёрного ящика полностью скрывает конкретную реализацию). Все части BlackBox, исключая только некоторые, являются платформо-независимыми. Модули имеют переносимые (//portable//) интерфейсы. Даже внешний вид документов абстрагирован. Платформенные особенности остаются доступными, но компоненты должны избегать их использования, если желают оставаться полностью платформо-независимыми.". Подсистема Host, как пишет Пфистер, содержит особенности платформы. В ИТ-отрасли слово "хост" (будем использовать транслитерацию //host// на русский, просто потому что технического термина, аналогичного //host//, в русском языке не появилось) часто используется в аспекте виртуализации операционных систем. Хост-системой здесь называют операционку, изначально установленную на компьютер. А гостевой ОС называют систему, запущенную в гостевой (по отношению к хосту) виртуальной машине. Ссылки давать не буду, поиск в интернете не отменяли - источников масса. В общем, если рубануть определение сплеча, то хост - это некий программный сервисный слой на железе (кстати, необязательно на железе - может, и на чём-то другом), обеспечивающий работу гостевых компонентов. Для сети это определение тоже подходит, потому что компьютер-узел в сети является хостом, предоставляющим некий сервис для гостей-браузеров или другого сетевого ПО. Вот как это выглядит для нашего каркаса: {{ :bb-guest.png?nolink |}} ---- Кузьмицкий И.А.\\ г. Ярославль, 2013 г.