Построение рабочей станции для низколатентного взаимодействия с в нешним миром. Квинтэссенция многолетних поисков. http://caxapa.ru/316553.html
http://caxapa.ru/317225.html
Цель - для "эмулятора всего" -> обеспечить round trip UDP менее 50 мкс.
Про венды забываем. 10+ мс.
Linux такое даст, особенно с RT патчем.
Вроде бы напрашивается отдельная машина, но:
* место
* деньги
* удобнее все было бы иметь в одном влаконе.
Решение есть - гипервизоры.
Hypervisor
http://en.wikipedia.org/wiki/Hypervisor
2-х типов
Type 1 (or native, bare metal) hypervisors run directly on the host's hardware to control the hardware and to manage guest operating systems. A
guest operating system thus runs on another level above the hypervisor. This model represents the classic implementation of virtual machine architectures; the original hypervisor was CP/CMS, developed at IBM in the 1960s, ancestor of IBM's z/VM. A modern equivalent of this is the Citrix XenServer, VMware ESX/ESXi, and Microsoft Hyper-V hypervisor.
Type 2 (or hosted) hypervisors run within a conventional operating system environment. With the hypervisor layer as a distinct second software
level, guest operating systems run at the third level above the hardware. KVM and VirtualBox are examples of Type 2 hypervisors.
Сравнение "виртуализаторов"
http://en.wikipedi …tform_virtual_machines
Из свободных самый крутой
Xen
http://en.wikipedia.org/wiki/Xen
но не факт, что все новые технологии там хорошо поддержаны.
IMHO, лучший выбор
Parallels® Workstation 6 Extreme, хоть он и не дешев 12600р
http://www.paralle …ucts/extreme/discover/
Есть упрощенные вариант за $50, но "толстый" лучше соотвествует целевой задаче.
Все "хорошие" гипервизоры крутятся вокуг Intel VT-x, VT-x2, VT-d (у AMD есть полные аналоги). Например, Intel сетевые карты с поддержкой
виртуализации видны как 64 сетевухи, и в них прописываются правила фильтрации пакетов. Так что для каждой виртуальной машины видна своя собственная, нифига не зашаренная карта (шаринг только по суммарному траифику)
С процами все просто - их по одному или по несколько назначают на виртуальные машины, и прописывают на уровне железа маршрутизацию прерываний :)
В итоге потери производительности малы, да и тормозить особо нечему - процы-то реально работают независимо с общей памятью :)
Хорошие сетевые адептеры от Intel
* Серв. сетевой адаптер Ethernet 1Гбит/сек. Intel "ET Dual Port Server Adapter" E1G42ET (chip 82576) (PCI-E x4) (oem) 5кр
* Intel E1G44ET2BLK Gigabit ET2 Quad Port Server Adapter Серверный сетевой адаптер, PCI-E, 4 x RJ45, 10/100/1000Mbps [E1G44ET2] 12кр
* Intel I340 (E1G44HT) Сетевой адаптер, PCI-Ex4, 4xRJ45, 10/100/1000Mbps [E1G44HT] 9540 р. - это самый современный и навороченный
Видюха, про поддержку которой говорится в Parallels Workstation
http://www.nvidia. …ct-quadro-2000-ru.html
SLI Multi-OS
PCI-E Quadro 2000 1024Mb, 128bit,GDDR5,2xDP, 1xDVI,в комплекте переходники DVI - D-Sub /DP - DVI RTL 14614 р.
[Я вот только не понял - это одну карту можно зашарить на 2 системы или можно воткнуть по видюхе, и каждая система увидит свою. Вроде как второе...]
Реалтаймовость там обеспечится потому, что в гипервизоре тормозить нечему.
NI Real-Time Hypervisor for Windows - эти именно так решили проблему RT для своих приборчиков. Значит, направление верное.
http://sine.ni.com …w/p/lang/en/nid/207302
RTS Real-Time Embedded Hypervisor - это что-то хардкорное, но непонятна цена...
http://www.real-ti …e_hypervisor/index.php
Что интересно, держит все включая RTEMS на x86
Разбираемся с RT Linux.
Real-Time Linux Wiki
https://rt.wiki.kernel.org/
https://rt.wiki.ke …MPT_RT_Patch_79df.html
Обзор патча
http://lwn.net/Articles/146861/
Red Hat Enterprise MRG Realtime - классика жанра
http://www.redhat. …products/mrg/realtime/
О цене они как-то скромно умолчали.
SUSE Linux Enterprise Real Time Extension
http://www.suse.co …s/realtime/how-to-buy/
One year subscriptions start at $2500 MSRP. Не вижу смысла для RH демпинговать :) Это не наш выбор.
Но GPL сделал свое дело :)
Scientific Linux (SL)
http://www.scientificlinux.org/
Scientific Linux CERN
http://linux.web.c ….ch/linux/scientific6/
Scientific Linux CERN 6 is a Linux distribution build within the framework of Scientific Linux which in turn is rebuilt from the freely available Red Hat Enterprise Linux 6 (Server) product sources under terms and conditions of the Red Hat EULA. Scientific Linux CERN is built to integrate into the CERN computing environment but it is not a site-specific product: all CERN site customizations are optional and can be deactivated for external users.
Репозиторий пакетов
http://glitesoft.c …mrg/slc6X/x86_64/RPMS/
Вот тут написано нечто интересное
http://serverfault …me-patch/268085#268085
While I own a few RHEL MRG licenses, I've started using the FREE realtime recompile of Red Hat MRG from Scientific Linux to convert my CentOS 5 servers to realtime. You can view the Scientific Linux MRG distribution at:
http://glitesoft.c …mrg/slc5X/x86_64/RPMS/
Далее расказано как прикрутить патчи Red Hat MRG к этому научному лялиху. Доку по MRG пожно выкачать с сайта редхата
http://docs.redhat …ed_Hat_Enterprise_MRG/
Debian тоже не остается в стороне
Realtime Linux for Debian
http://pengutronix …inux-rt/debian_en.html
Тут можно качать бинарники
http://debian.pengutronix.de/
OSADL Project: Realtime Linux
https://www.osadl. …-realtime-linux.0.html
OSADL Project: "Latest stable" RT-Preempt realtime Linux kernel - народ тестирует и выносит решение
https://www.osadl. …-realtime-linux.0.html
Сказано, как тестировать и что получается
https://www.osadl. …ernel.kernel-rt.0.html
В общем, RT линух на x86_64 не кажется чем-то неподъемным.
И хотя Parallels Workstation твердит, что только ксеоны кошерны, мы пойдем другим путем, и AMD наш рулевой :)
Описание компонентов сервака ->
У указанных проциков технологии виртуализации "круче некуда", так что будут работатЬ, как миленкие.
Собственно, рисеч по виртуализованной среде разработки в общем можно считать завершенным. :)