Операционная система V (иногда пишется как V-System ) — это прекратившая поддержку микроядерная распределённая операционная система , которая разрабатывалась преподавателями и студентами Группы распределённых систем Стэнфордского университета с 1981 по 1988 год под руководством профессоров Дэвида Черитона и Кейта А. Ланца. [1] V была преемницей операционной системы Thoth и ядра Verex , разработанных Черитоном в 1970-х годах. [2] [3] Несмотря на схожие названия и близкие даты разработки, она не связана с UNIX System V.
Ключевыми концепциями в V являются многопоточность и синхронная передача сообщений . Первоначальная терминология V использует процесс для того, что теперь обычно называется потоком , и команду для того, что теперь обычно называется процессом, состоящим из нескольких потоков, разделяющих адресное пространство. Связь между потоками в V использует синхронную передачу сообщений с короткими сообщениями фиксированной длины, которые могут включать права доступа для получателя для чтения или записи части адресного пространства отправителя перед ответом. Один и тот же интерфейс передачи сообщений используется как между потоками внутри одного процесса, так и между потоками разных процессов внутри одной машины и между потоками на разных машинах, соединенных локальным Ethernet . [4] Поток, получающий сообщение, не обязан отвечать на него перед получением других сообщений; это отличает модель от rendezvous в Аде .
Один из распространенных шаблонов использования функции обмена сообщениями заключается в том, что клиенты отправляют сообщения на сервер с запросом на какую-либо форму обслуживания. Со стороны клиента это очень похоже на удаленный вызов процедуры (RPC). Удобство автоматического генератора заглушек отсутствует, но в отличие от этого клиент может передать один параметр по ссылке, что невозможно в других реализациях RPC. Со стороны сервера модель больше отличается от RPC, поскольку по умолчанию все клиентские запросы мультиплексируются в один серверный поток. Однако сервер может явно разветвлять потоки для параллельной обработки клиентских запросов; если это сделано, серверная модель также очень похожа на RPC.
V никогда не была самоцелью для группы из Стэнфорда; скорее, она использовалась как средство для множества различных исследовательских проектов в области распределенных операционных систем и сетей. Подобно другим операционным системам того времени (таким как Sprite ), V была полной системой, которая в основном была самохостинговой. Многие студенты запускали V как единственную операционную систему на своих бездисковых рабочих станциях SUN или рабочих станциях MicroVAX . Компиляции можно было выполнять либо на V, либо на машинах VAX Unix , которые обеспечивали файловый сервис в более стабильной среде, чем постоянно меняющаяся исследовательская система.
V действительно оказал некоторое заметное влияние. После первоначальной реализации на одном компьютере был разработан Versatile Message Transaction Protocol (VMTP) для расширения семантики системного вызова send-receive-reply по локальной сети . [5] [6] Протокол включал поддержку многоадресной рассылки, разработанную Стивом Дирингом в качестве аспиранта в группе. Уровень протокола Интернета для поддержки этого превратился в стандарт многоадресной рассылки IP . [1] [7]
V-System использовалась для исследования графического пользовательского интерфейса (GUI). Virtual Graphics Terminal Service (VGTS) предоставляла модульную оконную систему как для локальных, так и для удаленных приложений. [8] Малоизвестная W Window System получила свое название, потому что впервые была размещена на операционной системе V, а более известная X Window System, в свою очередь, получила свое название, потому что ее первая версия была частично основана на W. [9]
V также породил еще одну чисто микроядерную разработку в Apple Computer, известную как Vanguard , которая добавила ряд улучшений к базовой системе. [10] Позднее Vanguard исчезла в результате реорганизации.
Телевизионный измерительный прибор Tektronix VM700 был разработан в сетевой среде V в конце 1980-х годов и работал под управлением слегка модифицированной версии операционной системы V; это устройство производилось и продавалось в течение многих лет .
Операционная система Ridge Operating System (ROS) компании Ridge Computers была коммерческой системой, основанной на V-System Стэнфорда. [11]
Ниже приведен список команд рабочей станции , поддерживаемых интерфейсом командной строки операционной системы V версии 6.0 . [12]