Введение

Однокомпьютерный компьютер, поддерживающий одновременно нескольких локальных пользователей Многоместная, многостанционная или многотерминальная система - это один компьютер, поддерживающий одновременно нескольких независимых локальных пользователей. "Сиденье" состоит из всех аппаратных устройств, назначенных на определенное рабочее место, на котором один пользователь сидит и взаимодействует с компьютером. Он состоит из как минимум одного графического устройства (графическая карта или просто выход (например, порт HDMI/VGA/DisplayPort) и присоединенный монитор/видеопроектор) для выхода и клавиатуры и мыши для входа. Он также может включать в себя видеокамеры, звуковые карты и многое другое.

Мотивация

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

История

В 1970-х годах было очень распространено соединять несколько компьютерных терминалов с одним мейнфреемным компьютером, даже с графическими терминалами. Ранние терминалы были соединены с серийными соединениями типа RS 232, либо напрямую, либо через модемы. С появлением сетей на основе протокола Internet стало возможным для нескольких пользователей входить в хост, используя telnet или для графической среды "сервер" системы X Window. Эти системы сохраняют физически защищенную "корневую консоль" для системного администрирования и прямого доступа к хост-машине. Поддержка нескольких консолей в ПК с интерфейсом X была реализована в 2001 году Мигелем Фрейтасом, используя операционную систему Linux и графическую систему X11 (в то время поддерживаемую XFree86). Это было сделано с использованием патча на сервере отображения для одновременного выполнения нескольких экземпляров X, так что каждый из них захватывает определенные события мыши и клавиатуры и графическое содержимое. Этот метод получил название мультисита или мультитерминала. В 2001 году Thinsoft BeTwin предложил многоместное решение для Windows, используя несколько графических карт и периферийных устройств, подключенных к одному хост-ПК. В 2002 году канадская компания Userful Corporation выпустила Userful Multiplier, многоместное программное решение для Linux, которое позволяет до 10 пользователям одновременно использовать один компьютер. Ранее они работали над подходом на основе ядра к мультистанционному платформенному компьютеру, но отказались от идеи из-за проблемы с поддержкой нескольких видеокарт. Другие решения появились в 2003 году, такие как Светослав Славчев, Айвилс Стосс и Джеймс Симмонс, с подходом evdev и Faketty, модифицирующим ядро Linux и позволяющим более одного пользователя независимо использовать ту же машину. В то время, Linux Console Project также предложил идею использовать несколько независимых консолей, а затем несколько независимых клавиатур и мышей в проекте под названием "Backstreet Ruby". Backstreet Ruby - это патч для ядра Linux. Это обратный порт к Linux 2.4 дерева ядра Ruby. Цель разработчиков Linux Console - улучшить и реорганизовать входные, консольные и фреймбуферные подсистемы в ядре Linux, чтобы они могли работать независимо друг от друга и позволить работать на нескольких рабочих столах. Идея Backstreet Ruby так и не была закончена. В 2005 году команда C3SL (Центр научных вычислений и свободного программного обеспечения) из Федерального университета Парана в Бразилии создала решение, основанное на вложенных серверах отображения, таких как Xnest и Xephyr. С помощью этого решения каждый вложенный сервер дисплея работает на каждом экране хост-сервера дисплея (например, Xorg), а модификация вложенных серверов позволяет каждому из них исключительно приобретать свою мышь и клавиатуру. В 2008 году группа C3SL выпустила программу Multi-Seat Display Manager (MDM) для облегчения процесса установки и конфигурации многоместного коробки. Эта группа, также в 2008 году, разработала живую компакт-диск для тестовых целей. В 2007 году NComputing вышла на рынок с многоместным продуктом на основе Windows, серией X или системой Xtenda, которая использует карту PCI для подключения терминальных устройств, содержащих видео, клавиатуру, мышь и аудио-разъемы, что позволяет добавить от 3 до 6 дополнительных пользовательских мест в ПК. Серия X также предлагала совместимость с Linux. В 2010 году Microsoft начала предлагать Windows MultiPoint Server, позволяя одной машине размещать нескольких пользователей с использованием отдельных графических карт и периферийных устройств. Автоматическое многоместное сиденье с USB-станциями стыковки является особенностью Fedora 17.

Требования к оборудованию

Каждому пользователю понадобится монитор, клавиатура и мышь, подключенные к хост-машине. Например, для создания четырехглавой (четырехпользователей) системы потребуется четыре монитора, четыре клавиатуры, четыре мыши и два двойных выхода или одна четырехсторонняя видеокарта. USB-клавиатуры и мыши обычно рекомендуются вместо PS / 2 соединений, так как они могут быть подключены к USB-разъему. Дополнительные устройства и периферийные устройства, такие как камеры, флеш-накопители, считыватели карт и сенсорные экраны, также могут быть установлены на каждом сиденье. Альтернатива нескольким физическим видеокартам и соединениям - DisplayLink через USB.

Линукс

Многоместность в современных системах Linux обеспечивается системой systemd logind и конфигурируется через команду loginctl или через переменные ID SEAT или ID AUTOSEAT udev. Некоторые специализированные USB-узлы при подключении автоматически создают сиденье без необходимости его настройки.

Microsoft Windows

Для операционных систем Windows 2000, XP и Vista существует несколько коммерческих продуктов для реализации многоместных конфигураций для двух или более мест. 24 февраля 2010 года была анонсирована операционная система, разработанная специально для многоместных установок под названием Windows MultiPoint Server. Он использует технологии удаленного рабочего стола (терминальные службы) в Windows Server 2008 R2 для обеспечения многоместной функциональности. Эта функциональность была включена в собственную Windows Server с Windows Server 2016 в новой роли сервера под названием MultiPoint Services, но эта роль сервера была удалена в Windows Server 2019 из-за прекращения разработки сервиса Microsoft в 2018 году.

Настройка на основе виртуализации

Вместо того, чтобы полагаться на поддержку операционной системы для многоместной конфигурации, гипервизор может быть сконфигурирован для запуска нескольких виртуальных машин, каждая из которых сконфигурирована для взаимодействия с одним подключенным местом методами виртуализации ввода-вывода. Входные устройства могут быть подключены к виртуальным машинам через USB Redirection, а целые графические процессоры могут быть подключены через Intel VT d. Были продемонстрированы системы на основе виртуализации с двумя и семью местами с Unraid в качестве хост-операционной системы. Каждое место имеет исключительный контроль над одной из гостевых операционных систем Windows, работающих на хосте. Для каждого гостя есть специальная высококлассная видеокарта, которая используется в полной мере с помощью VT d, что делает систему способной одновременно проводить требовательные видеоигры в полном качестве на всех сидениях.

Крупнейшее в мире многоместное компьютерное развертывание

В феврале 2009 года Министерство образования Бразилии обязалось развернуть 350 000 многоместных вычислительных станций на базе Linux в более чем 45 000 сельских и городских школах по всей стране. Компаниями, выбранными для реализации этого проекта, были канадская компания по разработке многоместного программного обеспечения для Linux Userful Corporation и ее бразильский IT-партнер ThinNetworks.

Проект Paraná Digital

Один из успешных случаев Multiterminal происходит в проекте Paraná Digital. Она создает многотерминальные лаборатории в 2000 государственных школах штата Парана (Бразилия). Более 1,5 миллиона пользователей получат выгоду от 40 000 терминалов, когда проект будет завершен. В лабораториях есть четыре головных мультитерминала, работающих на Debian. Стоимость всего оборудования на 50% ниже обычной цены, а программное обеспечение абсолютно бесплатно. Разработчиком проекта является C3SL (Центр научных вычислений и свободного программного обеспечения).

Исследования Университета штата Мичиган в Танзании

С 2008 года студенты-электрики и компьютерщики из Мичиганского государственного университета установили многотерминальные системы с доступом в интернет в трех школах в Мто-ва-Мбу, Танзания. Целью проекта является изучение влияния наличия компьютерных систем с доступом в Интернет в образовательной системе, которая не может позволить себе другие образовательные ресурсы, такие как книги. Компьютерные системы работают на Ubuntu 8.04 32 бит и используют открытый исходный код Multiseat Display Manager, созданный C3SL. Исследование в конечном итоге будет использовано для представления правительственным чиновникам стран третьего мира в попытке продемонстрировать положительное влияние наличия экономически эффективных вычислительных систем в школах. Проект спонсируется Джорджем и Вики Роком и Dow Chemical Company.