Я хотел бы получить максимальную производительность в обеих ОС и возможность переключаться между ними без перезагрузки. У меня много памяти (32 ГБ) и места на диске.
Два простых варианта:
- Двойная загрузка - это не позволяет мгновенного или почти мгновенного переключения между операционными системами
- Использовать виртуальную машину (например, VirtualBox) - это значительно снижает производительность размещенной ОС, особенно для графики
Было бы неплохо (скажем, с помощью сочетания клавиш или другим подобным способом) переключаться между двумя ОС, одна из которых горячая, а другая «горячая в режиме ожидания».
Ответы:
Существует два дополнительных способа запуска Windows и Linux, которые вы не упомянули в своем вопросе:
источник
Я считаю, что решение с наименьшими накладными расходами будет использовать Linux в качестве основной ОС и использовать KVM (виртуальную машину на основе ядра, а не KVM-переключатель, хотя это также можно использовать) для виртуализации Windows. Вы можете добиться того, что в настоящее время производительность приближается к работе на голом железе, и вы даже можете пройти через вторичный графический процессор к виртуальной машине или иметь один выделенный графический процессор и использовать интегрированный графический процессор для хоста. Вы также можете использовать Looking Glass для гораздо более гибкого решения, чем использование spice (это то, что по умолчанию используется диспетчером Virt, и оно практически не отличается от использования удаленного рабочего стола.) Https://forum.level1techs.com/t/looking-glass -guides-помощь-и-поддержка / 122387
Единственная сложность - аппаратная совместимость. Существует множество изысков, таких как необходимость в процессоре и материнской плате, совместимых с Intel VT-D или аналогом AMD, необходимость в достаточно новом графическом процессоре с UBI VBIOS (или получении VBIOS от производителя), через которые проходят чипы ввода-вывода. который помогает с выделением периферии для виртуальной машины и т. д.
Я бы порекомендовал прочитать этот пост в блоге, чтобы понять, что вам нужно сделать, чтобы настроить его. Это определенно не так просто, как использование virtualbox или VMWare, но если вы настроите его с помощью virt-manager, вы можете пропустить множество ручных шагов, через которые прошел этот парень. Есть также намного больше информации обо всем этом на вики Arch в KVM, QEMU и VFIO. https://heiko-sieger.info/running-windows-10-on-linux-using-kvm-with-vga-passthrough/
С 2600k вам нужно будет перейти на версию не-K и проверить, поддерживает ли ваша материнская плата также VT-D. У меня была такая же проблема с 3700k и несовместимой материнской платой, и мне пришлось поменять их обе, но в итоге я заработал немного денег на покупках и продажах на ebay.
Чтобы пояснить некоторые термины, которые я использовал, вот несколько коротких описаний.
Virt-manager (или Virtual Machine Manager) - это приложение с графическим интерфейсом для управления виртуальными машинами с помощью KVM. Вы можете думать об этом как о том, чтобы сделать ваш опыт намного ближе к тому, что было бы, если бы вы использовали VMWare или VirtualBox. Он дает вам мастер для настройки виртуальной машины, позволяет менять оборудование, через которое вы проходите, показывает графики использования ресурсов и позволяет вам управлять питанием. Более подробная информация и скриншоты доступны на сайте здесь: https://virt-manager.org/
Spice предоставляет вам удаленный доступ к вашей виртуальной машине. Это очень похоже на использование удаленного рабочего стола, как при использовании, так и в плане производительности, но по умолчанию используется virt manager. Я хотел бы быть более конкретным с моим описанием, но я не использовал его много, и даже веб-сайт довольно расплывчат в отношении того, что конкретно. https://spice-space.org/
Зазеркалье является альтернативой использованию чего-то вроде Spice, но с очень низкой задержкой. Он копирует буфер кадров из вашего графического процессора в системную память, а затем выплевывает его на экран. Он все еще находится на ранней стадии разработки, но работает очень хорошо и гораздо больше подходит для приложений, требующих более гибкого решения. Полное руководство по настройке доступно на веб-сайте проекта: https://looking-glass.hostfission.com/quickstart.
Другой альтернативой Spice и Looking Glass является просто подключение дисплея к одному из выходов пропущенного через GPU. Это более отзывчиво, но потребует другого дисплея или переключения входов на том же дисплее.
источник
Как уже упоминалось во всех других ответах на этот вопрос, виртуализация - это путь. Один из способов минимизировать потери производительности - запустить Windows в качестве основной ОС и виртуализировать легкий дистрибутив Linux. С макушки головы вы можете попробовать:
Выбрав легкий дистрибутив, вы сможете снизить производительность настолько, чтобы настроить систему, которая вас устраивает.
источник
Приложения Unix / Linux GUI, использующие технологический стек X11 (большинство из них), по своей природе способны отображаться на удаленном компьютере (включая сценарий виртуальной машины, подключенной к сети, и ее хоста).
Вы можете установить сервер дисплея X11 (есть несколько бесплатных и несвободных опций) на ваш компьютер с Windows, запустить вашу систему Linux (или даже несколько систем Linux) на виртуальной машине, и добиться, чтобы графическая нагрузка на графику происходила в Windows сервер X11. Приложения с графическим интерфейсом в системе Linux будут подключаться к серверу дисплея X11 через локальную сеть (здесь это не так, как это настроить, так как есть много разных способов сделать это. Указатели: переменная среды DISPLAY, ssh с пересылкой X11, XDMCP).
источник
Я сделал это в условиях высокой производительности и достиг почти достаточной производительности для приложений, которые мы запускали. Это не столько «вот как это сделать», но два примера того, как я это сделал, достиг адекватной производительности и решил проблему.
Для науки о данных и разработки программного обеспечения
На моих нынешних рабочих станциях (ноутбук и рабочая станция) Windows 10 и Ubuntu установлены параллельно на двух отдельных разделах. После загрузки компьютера я могу выбрать Windows или Ubuntu и загрузить любую из операционных систем. В Ubuntu я использую VirtualBox для загрузки собственного раздела Windows и запуска его, как и любой другой виртуальной машины ( см. Здесь ).
Все работает: перетаскивание, общий буфер обмена и обмен файлами. Я постоянно запускаю большие многопоточные таблицы Excel (не стреляйте - я их не создавал!) На своей виртуальной машине, и все это просто ужасно.
Для геофизических, геологических и инженерных работ
Несколько лет назад я построил аналогичную установку с использованием CentOS и Windows 7. Это было сделано для того, чтобы мои коллеги могли запускать дорогостоящие, требовательные к производительности геофизические симуляции в Linux, и в то же время иметь доступ к аналогичным программам для 2D и 3D картографирования в Windows. 7 (вместе с Outlook и остальной частью пакета Microsoft). Мы опробовали VirtualBox, но, потратив деньги, в конечном итоге решили проблему, используя VMware Workstation и GPU pass-through (стоимость была тривиальной по сравнению с зарплатами и лицензированием программного обеспечения). Для наших приложений мы достигли производительности, близкой к собственной производительности в Windows, и все были очень довольны настройкой.
Это были довольно мясистые машины для своего времени (около 2010 года): Quadro 4000, двухъядерный четырехъядерный Xeon и 32 ГБ памяти. Самая трудная часть сборки этих установок (насколько я помню) была связана с аппаратным RAID-контроллером. Я обслуживал около десятка машин, используя эту настройку, и у нас никогда не было ни одной проблемы в течение всего срока действия проекта, для которого эти машины были приобретены (~ 2 года). Это был фантастический результат для нас, потому что, если бы одна машина, скажем, неделю вышла из строя, это потеряло бы нас дороже, чем сама рабочая станция!
Заключение
Вы можете добиться очень хорошей производительности, используя опцию двойной загрузки, описанную выше. Я делал это, используя VirtualBox и VMware разных случаев, используя комбинацию в дистрибутивах Linux (Mint, Ubuntu и CentOS) и версиях Windows (7, 10), и всегда достигал адекватной производительности для своих нужд.
Другое преимущество этой настройки заключается в том, что вы можете уничтожить любой раздел и оставить Windows или Linux позади, если а) ваши обстоятельства изменились, или б) эта установка не соответствует вашим потребностям. Если производительность не снижается, у вас также есть запасной выход из простой загрузки непосредственно в операционную систему, где вам нужно немного больше производительности.
Наконец, записка о лицензировании: При загрузке Windows , изначально это будет увидеть различные аппаратные и допросит о лицензиях. Это меньшая проблема с Windows 10, которая будет раздражать вас, когда вы будете работать вместе. Я не могу вспомнить, как мы решили это для тех геофизических рабочих станций; Я помню, что у нас была корпоративная лицензия и, возможно, некоторая помощь от представителя Microsoft.
Эпилог: Remote X и VirtualGL
Я также настроил рабочие станции с использованием VirtualGL и кластера GPU для высокопроизводительных симуляций нефти. Я даже делал это в AWS, но я не рекомендую это по ряду причин: стоимость, производительность и удобство.
источник
Я не знаю ни одного способа сделать это, у которого нет больших предостережений, связанных с этим.
Если бы это был Chromebook, вы могли бы использовать Crouton для достижения чего-то подобного. но то, что он делает - это разделяет ядро между Chrome OS и другим дистрибутивом, номинально Ubuntu. Поскольку в Windows и Linux используются разные ядра, такой подход невозможен. Они не будут хорошо играть вместе.
Для загрузки операционной системы ядро должно иметь низкоуровневый доступ к оборудованию, и одновременное выполнение двух разных ядер (Windows и Linux) будет непросто, если вообще невозможно.
Некоторая виртуализация, вероятно, является вашим единственным выходом, если вы настаиваете на использовании одного компьютера. Я не использую Mac, но из того, что я видел, Parallels довольно прост - вы можете «переключаться» между операционными системами с помощью горячей клавиши. Я использовал VMWare как в Windows, так и в Linux и был удивлен производительностью размещенной (гостевой) операционной системы, она очень близка к нативной (хотя, разумеется, я не тестировал графически интенсивные рабочие нагрузки). VirtualBox с открытым исходным кодом и бесплатный, он работает нормально, но VMWare работает намного лучше. Я думаю, что есть ограниченная бесплатная версия.
Если вы настаиваете на том, чтобы у обеих операционных систем была собственная производительность, то для этого достаточно двойной загрузки. Если у вас быстрый SSD (скажем, Samsung 960 или аналогичный), перезагрузка не займет много времени.
источник
Аппаратная виртуализация слишком проблематична. Хотя это хорошо для 90% вещей, остальные 10% иногда блокируют вас и заканчивают тем, что вы отбрасываете всю концепцию.
Кто-то упомянул об этом в одном из комментариев, но я думаю, что параллельные машины, использующие KVM-переключатель, являются наиболее эффективным способом сделать то, что вы просите.
Я уже пару лет работаю на двух компьютерах с Linux и Windows. У меня два 32-дюймовых монитора сидят рядом друг с другом: один подключен к машине Linux, другой подключен к машине Windows.
У меня есть подвижный регулируемый стол для клавиатуры / мыши, который позволяет мне стоять или сидеть и центрироваться перед одним (или обоими) мониторами с помощью клавиатуры / мыши.
Ключевым моментом является то, что KVM-переключатель позволяет немедленно переключаться между управлением коробкой Linux или управлением коробкой Windows.
Вы также можете пойти еще дальше и приобрести Synergy, что полностью устраняет необходимость в KVM-переключателе, используя программное обеспечение для переключения мыши и клавиатуры между компьютерами.
Больше не нужно раздражать двойную загрузку, накладные расходы или несовместимости KVM / VirtualBox / VMWare, и вы по-прежнему чувствуете, что это один компьютер.
источник
В зависимости от того, чего вы пытаетесь достичь, вы можете попробовать Wine.
С https://www.winehq.org/ :
Это позволило бы вам запускать Linux и (некоторые) приложения Windows параллельно в Linux.
Список приложений Windows, которые, как известно, работают с Wine, можно найти по адресу https://appdb.winehq.org/ .
Лично я использую его для запуска некоторых игр в Linux, использующих DirectX, который не имеет версии для Linux. Известно, что такие приложения, как Microsoft Office, работают с ним.
источник
Технически вы можете включить спящий режим в обеих системах и вывести систему из спящего режима после перевода в спящий режим другой системы. Это будет быстрее и удобнее, чем фактическая перезагрузка. Я делаю это на моей нынешней машине.
Кажется, до сих пор не возникало никаких проблем, поскольку Linux использует специальную область подкачки для хранения образа гибернации, в то время как Windows использует системный раздел.
источник
Вы хотите coLinux . Он почти идеально соответствует вашим требованиям - ядро Linux работает как особый привилегированный процесс под Windows, без влияния на производительность ядра (хотя периферийные устройства все еще виртуализированы, а графика проходит по протоколу X11). Но , к сожалению, проект больше не разрабатывается ... и с тех пор другие подходы (VirtualBox и т. Д.) Созрели и предлагают гораздо лучший пользовательский опыт.
источник
У всего есть плюсы и минусы. Вот те, которые работают для меня по состоянию на май 2018 года:
VirtualBox : это работает. В настоящее время. Каждый день. Я использую хост Windows и Ubuntu VM. Все отлично, включая поддержку нескольких мониторов и работу в сети (я использую мостовой режим, поэтому каждая виртуальная машина просто отображается в сети отдельно от хоста). Я не фанат решений, контролируемых "большими парнями", но, честно говоря, Oracle правильно сделала этот продукт (по крайней мере, на данный момент).
Запустите несколько компьютеров, это отличный способ! Синергия может даже позволить вам навести на них мышь и клавиатуру. DDM USB KVM тоже хороши, но они дороги!
Двойная загрузка: я запускаю четырех или более загрузок на большинстве моих компьютеров. Вам нужно будет узнать о GPT и устаревших разделах MBT и о том, как каждая из ваших ОС управляет ими. Refind делает потрясающую работу, помогая вам сделать все правильно, особенно если у вас есть полу-современное оборудование. Несмотря на то, что я всегда настраивал загрузку Windows-Ubuntu (-Mac) на всех своих компьютерах, на практике я никогда не перезагружался на другую ОС. Это слишком разрушительно. Вместо этого всегда заканчивайте тем, что посвятили каждый компьютер определенному набору задач в одной ОС.
Запустите X-сервер в Windows и извлеките окна Linux из сетевой виртуальной машины. Это можно сделать; Некоторое время я успешно запускал x2go. Но посмотрите следующий пункт, почему бы мне не пойти по этому пути.
Использовать виртуальную машину в любой (любой) сети: я пытался разрабатывать на основе виртуальной машины AWS, виртуальных машин vSphere и любых других комбинаций, и вы всегда откажетесь от этого в течение короткого времени, потому что вы являетесь рабом сети. проблемы, с которыми вы НЕ хотите иметь дело в середине своего развития. Даже не думайте об этом, даже если у вас безумно потрясающие сетевые ресурсы.
В заключение я должен отметить, что я всегда развиваюсь на выделенной машине Ubuntu, когда это возможно. Решения VirtualBox спасли мою задницу в корпоративной Америке. Идите с образом виртуальной машины в вашем кармане, установите VirtualBox на свою дрянную новую Windows lappie, иди!
источник
В дополнение к другим решениям, предлагаемым здесь, существует также подход кросс-виртуализации, который я однажды попробовал:
/home
иDocuments and Settings
) отдельно от системного разделаЭто по-прежнему означает, что у вас будут накладные расходы на виртуализацию для одной из двух ОС. Но вы можете выбрать при загрузке, какой из них будет хостом, а какой - гостем.
Данные передаются через сеть (например, путем установки Samba на компьютер с Linux).
Вам необходимо будет выполнить настройку каждой ОС дважды (установка на хост и на виртуальную машину) - технически у вас есть четыре компьютера, если вы не используете ярлык, описанный ниже.
Поскольку Linux (по крайней мере, различные версии Ubuntu) легко адаптируется к изменяющемуся оборудованию (до такой степени, что я мог разорвать диск со своего старого ноутбука, установить его на новом и иметь только сетевые адаптеры для перенастройки), вы могли бы также Linux VM загружает систему из необработанного раздела. Таким образом, изменения, внесенные в хост Linux, также будут отражены в ВМ и наоборот, единственными исключениями являются настройки, привязанные к конкретному аппаратному устройству.
Лицензирование Windows может быть предостережением здесь. (В то время я работал на Windows 2000, где все было проще.) Что касается Windows, вы используете ее на двух разных аппаратных конфигурациях (процессор, диск, сетевой адаптер). Хотя я не уверен в юридических последствиях, но процедура активации продукта может потребовать от вас получения двух лицензий. (Если вы можете заставить Windows работать с необработанным разделом на виртуальной машине, она, вероятно, обнаружит изменение оборудования и потребует повторной активации каждый раз, когда вы переключаетесь между конфигурацией хоста и гостя.)
источник
Я делаю это (хотя я переключаюсь между macOS и Windows), имея Windows на виртуальной машине в облаке, а не на моем Mac. Ранее я использовал Boot Camp для двойной загрузки, а затем локально размещенную виртуальную машину с использованием VMware Fusion, но я обнаружил, что облачный Windows и подключение к удаленному рабочему столу наиболее удобны при переключении.
(Я просто могу использовать CMD-TAB для мгновенного переключения рабочих столов.)
Я надеялся, что этот опыт полезен для вас.
источник
Забудьте о виртуальных машинах, Wine и двойной загрузке. Я настоятельно рекомендую просто иметь две машины, одну безголовую Windows и удаленный рабочий стол из Linux, используя что-то вроде Remmina .
Это довольно легко с помощью общего буфера обмена и домашних папок. Это может быть непрактичным для тех, кому нужен только ноутбук, но это отличный вариант, если вы можете просто сидеть за столом. Они не должны быть новыми машинами; просто станьте старше около 2012 года, вы можете лежать вокруг.
источник
Некоторые нестандартные предложения, которые могут соответствовать определенным нишевым сценариям использования:
Если вы бегаете без головы, Линус бежит почти везде и удивительно легок. Я уже запускал его как службу Windows и смог подключиться к нему через ssh-клиент или X-сервер, работающий в Windows (так что все графические интерфейсы Linux просто отображаются).
В том же духе вы можете приклеить Raspberry Pi к задней панели ноутбука, подключить его к USB-порту и запустить оба компьютера одновременно. Опять же, вам нужно использовать Windows-машину для доступа к Linux-машине, но с этим решением вы все равно можете запустить без доступа к X / ssh-доступу, но вы также можете использовать удаленный рабочий стол (RDP) в PI и использовать его реализацию X, что должно дать вам лучший опыт работы с Linux (когда я проверял в последний раз, бесплатные X-серверы для Windows были медленными, сложными в настройке и подверженными ошибкам)
Ни один из них не даст вам высокоскоростную полноэкранную рабочую станцию Linux, но для определенных ситуаций они находят интересные решения.
И я просто пошутил насчет клейкой ленты ...
в основном.
источник
Хотя я бы порекомендовал ВМ (плавные режимы VirtualBox и VMWare действительно полезны для лучшей интеграции), есть еще одна возможность:
Существуют X-серверы для Windows, такие как Xming, и мощные решения для удаленных рабочих столов, такие как xpra .
Используя один из них, вы можете запустить Linux на виртуальной машине (или даже такое решение, как AndLinux, которое запускает ядро Linux на Windows) и отображать приложения на собственном Display Server или с помощью инструмента удаленного рабочего стола.
Таким образом, вы можете получить больше собственных окон и, в зависимости от виртуальной машины, более высокую производительность для приложений пользовательского интерфейса.
источник
Используйте систему GNU / Linux по вашему выбору на вашем хосте, а затем решение PaaS. Той, которая возможна для тебя, будет « Тень ».
Он в основном работает как приложение на вашем хосте, но на самом деле это компьютер в облаке. Вы просто можете легко переключиться на приложение, точно так же, как и на любое другое приложение.
https://youtu.be/vVOKBaIxXVA?t=6
источник