Wybór między maszyną wirtualną lub konfiguracją podwójnego rozruchu


26

Chciałbym skonfigurować komputer, aby przez większość czasu działał na Ubuntu, ale muszę też uruchomić XP dla określonych aplikacji i testów. W przeszłości po prostu konfigurowałem maszynę z podwójnym uruchomieniem, a następnie ponownie uruchamiałem i uruchamiał się w systemie Windows XP w razie potrzeby.

Ponieważ jednak maszyna ma wiele rdzeni i znaczną pamięć, myślę, że mogę korzystać z hiperwizorów Virtual Box, Xen lub VMWare. Zastanawiam się nad tym, aby Ubuntu stało się maszyną wirtualną „hosta” i mieć XP jako maszynę wirtualną gościa. Byłoby to szczególnie przydatne do testowania / debugowania / programowania, ponieważ możliwe jest jednoczesne uruchamianie aplikacji w obu systemach operacyjnych. Nigdy wcześniej nie konfigurowałem maszyny wirtualnej i myślę, że zadając poniższe pytania mogę uniknąć prób i błędów.

Zasadniczo muszę zdecydować, czy konfiguracja podwójnego rozruchu lub maszyny wirtualnej jest bardziej odpowiednia do tego, co chcę zrobić.

Oto moje pytania:

  1. Nie zawsze muszę mieć uruchomione XP. Czy hiperwizory pozwalają mi wyłączyć maszynę wirtualną gościa, aby maszyna wirtualna hosta mogła natychmiast wykorzystać całą pamięć i zasoby procesora? Czy kiedy przywołuję maszynę wirtualną gościa, łatwo jest ustalić, ile pamięci i innych zasobów jest przez nią wykorzystywanych? Idealnie byłoby wcześniej skonfigurować to z wyprzedzeniem, a następnie włączyć / wyłączyć maszynę wirtualną gościa bez zastanowienia się nad tym.

  2. Czy jest możliwe, czy wskazane, aby system operacyjny hosta był 64-bitowy, a system gościa 32-bitowy? Alternatywnie, jeśli obie maszyny wirtualne są 32-bitowe i mam 8 GB pamięci RAM, czy hiperwizor może zapewnić każdej maszynie wirtualnej 4G pamięci RAM, gdy działają one jednocześnie?

  3. Które hiperwizory są najlepsze dla takich konfiguracji, jak opisałem?


VMware jest lepszy, jeśli używasz XP jako hosta. Virtual Box jest lepszy, jeśli używasz Ubuntu jako hosta.
Ciekawy uczeń

Odpowiedzi:


17

Z mojego doświadczenia warto uruchamiać rzadziej używany system operacyjny na maszynie wirtualnej. Pozwala to uniknąć restartów i umożliwia łatwą wymianę danych między obydwoma światami. Zasadniczo powinniśmy mieć system operacyjny, z którym pracujemy najbardziej, jako system hosta, aby uruchomić system gościa, z którego nie korzystamy tak często.

Ze swojej strony mogę mówić tylko w imieniu Virtual Box, ponieważ mam bardzo małe doświadczenie z innymi rozwiązaniami. Jednak Virtual Box jest stabilny, bezpłatny i dostępny na różnych platformach. Polecam to.

Wady i zalety maszyny wirtualnej zostały podsumowane w tej odpowiedzi , więc nie będę ich tutaj powtarzał.

Jeszcze jedna rzecz: jeśli tworzysz oprogramowanie, fajnie jest mieć błąd, który oszaleje tylko na maszynie wirtualnej.

Aby odpowiedzieć na pytania:

  1. Tak, możesz po prostu zamknąć system operacyjny gościa, aby wszystkie zasoby z powrotem znalazły się na hoście. Możesz nawet zapisać stan maszyny, aby kontynuować pracę po ponownym przebudzeniu.

  2. Architektura tak naprawdę nie ma znaczenia. Na moim 64-bitowym hoście korzystam zarówno z komputerów 64-bitowych, jak i 32-bitowych. Czują to samo. Jeśli twój procesor oferuje wirtualizację (najprawdopodobniej tak jest), możesz nawet uruchomić 64-bitowych gości na 32-bitowym hoście.

  3. Zależy to od bardzo specyficznych potrzeb, w przypadku których jedno lub drugie rozwiązanie może być w tej chwili lepsze - nie możemy tak naprawdę zalecić wszystkich aspektów. Takie rzeczy prawdopodobnie również zmienią się z czasem.

Wypróbuj, nie jest to tak skomplikowane, a obsługa Virtual Box jest doskonała.

Oto przykład użycia pamięci z maszyn Virtual Box:

wprowadź opis zdjęcia tutaj

Lewa strona jest

  • Ubuntu 11.10 64-bit na dwurdzeniowym procesorze AMD, 2 użytkowników zalogowało się z wykorzystaniem pamięci 2.3 GiB przez różne aplikacje.
  • Działa jedna 32-bitowa pamięć RAM 4 GiB systemu Windows XP.
  • Drugi działający w systemie Windows XP 32-bitowy 1 GiB RAM.

Maszyna 1 GiB VM jest wysyłana do zamknięcia na pozycji 1 , a maszyna 4 GiB VM jest wysyłana do zamknięcia na pozycji 2 .

Dalsze zwiększanie wielkości pamięci maszyn wirtualnych doprowadziło do intensywnego korzystania z wymiany, dzięki czemu system prawie nie reagował. Uruchamianie 2 maszyn wirtualnych z 4 GiB każda nie było dozwolone w moim systemie (8 GiB). Jedna z maszyn została następnie wyłączona z menedżera Virtual Box.


Dzięki! Wydaje się, że istnieją pewne różnice w odpowiedziach na pytanie, czy można mieć (na przykład) 8 GB fizycznej pamięci RAM i jednocześnie przydzielić 4 GB każdej z dwóch 32-bitowych maszyn wirtualnych. Co o tym powiesz?
Angelo

@Angelo: możesz swobodnie przypisać dowolną ilość pamięci RAM do maszyny, ale potrzebujesz trochę pamięci RAM, aby host mógł obsługiwać maszynę wirtualną. Virtual Box nie pozwala na przypisanie więcej niż 88% pamięci RAM do maszyny.
Takkat

dzięki, tak. Rozumiem, że dla wirtualnej skrzynki musi być jakiś narzut. Pytam o to, czy mogę uzyskać dużą ilość fizycznej pamięci RAM (na przykład 8 GB lub 16 GB), a następnie przydzielić maksymalną możliwą (4 GB) każdemu 32-bitowemu komputerowi podczas jednoczesnego działania. To brzmi jak z drugiej odpowiedzi, że 32-bitowe maszyny wirtualne są ograniczone do udostępniania pierwszych 4 GB pamięci fizycznej (moje pytanie może nie być jasne). Czy tak jest w przypadku?
Angelo

@Angelo: moje testy (patrz edycja) wskazują, że - pod warunkiem, że masz wystarczającą ilość pamięci RAM - powinieneś być w stanie uruchomić wiele 32-bitowych maszyn przy użyciu 4 GiB w tym samym czasie.
Takkat

5

Dzięki Virtualbox możesz nawet dodać łącze do maszyny wirtualnej XP na pulpicie lub między aplikacją, aby uruchomić ją w krótkim czasie, a także możesz łatwo przełączać się między gościem a hostem.

Zamykając gościa, host natychmiast odzyskuje zasoby, ponieważ maszyny wirtualne są w twoim systemie jak aplikacja. Nawet jeśli uruchomisz maszynę wirtualną, jeśli nie wykorzysta ona wszystkich zaprojektowanych dla niej pamięci RAM, zostanie dynamicznie przekazana hostowi. Przykład: jeśli masz w sumie 8 GB pamięci RAM, to ustawiasz ilość 4 GB pamięci RAM na gościa, ale używa on tylko 2 GB pamięci RAM w swoich procesach, host będzie mógł uzyskać dostęp do 6 GB pamięci RAM.

W rzeczywistości ustawienie pamięci i innych zasobów na maszynie wirtualnej jest bardzo łatwe i zostaną zapamiętane przy każdym uruchomieniu maszyny wirtualnej.

Nie ma problemu z uruchomieniem 32-bitowego gościa na 64-bitowym hoście, robię to codziennie.

Możesz nawet uruchomić 32-bitowego gościa na 32-bitowym hoście, co absolutnie nie stanowi problemu.

Alternatywnie, jeśli obie maszyny wirtualne są 32-bitowe i mam 8 GB pamięci RAM, czy hiperwizor może zapewnić każdej maszynie wirtualnej 4G pamięci RAM, gdy działają one jednocześnie?

Naprawdę nie zrozumiałem tego pytania, ale jeśli masz w sumie 8 GB pamięci RAM, możesz poświęcić tylko połowę (4 GB) swoim maszynom wirtualnym, jeśli chcesz uruchomić wiele maszyn wirtualnych w tym samym czasie podziel 4 GB na liczbę maszyn wirtualnych, które chcesz uruchomić.

Ponieważ jesteś pierwszym timerem, mogę zaproponować korzystanie z VM Virtualbox, co jest dobre również dla zaawansowanych użytkowników, abyś mógł z niego korzystać. Jest on dostępny w oficjalnym repozytorium przez terminal:

sudo apt-get install virtualbox

lub po prostu sprawdź to w Centrum oprogramowania Ubuntu.

Przychodzi do ciebie z bardzo przyjaznym interfejsem i łatwymi krok po kroku kreatorami do robienia rzeczy.

Z przyjemnością wesprzemy twoją konfigurację VM, jeśli jej potrzebujesz.


Dzięki! Jeśli dobrze rozumiem, mówisz, że jeśli mam wiele 32-bitowych maszyn wirtualnych, są one ograniczone do korzystania z części tego samego 4 GB pamięci fizycznej?
Angelo

Tak, prawda, ale tylko jeśli chcesz je uruchomić jednocześnie. Jeśli planujesz je uruchamiać pojedynczo, mogą mieć całą moc 4 GB.
neonboy

2

Odpowiedzi: A1: Tak, VirtualBox pozwoli emulować KAŻDY rodzaj komputera, który chcesz (o ile spełnia on specyfikację sprzętową), Możesz nawet emulować maszynę 64-bitową na komputerze 32-bitowym. Więc za każdym razem, gdy uruchomisz maszynę wirtualną, zajmie ona ustawioną ilość pamięci i przestrzeń VD, o której mówiłeś podczas uruchamiania. Nawet jeśli maszyna wirtualna nie wykorzysta całej podanej pamięci Pamięć wciąż pozostaje pusta, której nie może użyć maszyna hosta. Więc jeśli masz wystarczająco mocną moc obliczeniową, możesz nawet emulować INNE karty procesorów itp., Choć nie ma to większego sensu i nie możesz tak łatwo monitorować. I z grubsza ze względu na efektywność Virtualbox, (oprócz pamięci) sprawdza przy pierwszym uruchomieniu (i za każdym razem po określeniu), dla jakich sterowników i rzeczy, które musi mieć podczas rozruchu,

A2: Tak i bardzo łatwo, choć jeśli masz dwie maszyny wirtualne, z których każda zajmuje połowę Twojej pamięci, nadal będziesz musiał mieć około 50-100 MB pamięci RAM dla wirtualnej skrzynki i hosta, aby używać ich w tle. A więc około 3,75 GB na każde ...

A3: Kiedy mówisz, że hiperwizory masz na myśli Host OS lub VMWare vs. VirtualBox, ponieważ bezpośrednia odpowiedź brzmi: VMWare jest nieaktualny, a VirtualBox jest stabilny. Musisz więc zdecydować się na awarię i błędy, ale szybki VMWare lub Wydajny i stabilny, ale nadal zajmuje trochę pamięci podczas uruchamiania VirtualBox ... Wolę VirtualBox, ale wiele innych z niezbyt zdolnym sprzętem, takich jak VMWare. ... Ty decydujesz, chociaż sugeruję używanie Ubuntu z Openbox, jeśli chcesz, aby minimalne procesy działały za każdym razem, gdy robisz podwójne maszyny wirtualne ...


Dzięki! Wygląda na to, że virtualBox lub OpenBox mogą być biletem na mocny sprzęt. Czy ktoś wie o Xen?
Angelo

Xen jest dobry, ale Vbox jest znacznie łatwiejszy w użyciu i zapewnia doskonałą kompatybilność z Windows XP.
neonboy

@TenorB, czy masz na myśli jeden z produktów open source VMWare, czy produkty komercyjne (VMWare Workstation / Fusion)?
Angelo

@Angelo Open source
TenorB

@Angelo VirtualBox i VMware to dwa różne produkty.
haziz

2

Maszyna wirtualna będzie działać poprawnie, chyba że będziesz musiał wykonywać intensywne zadania graficzne na gościu. Odkryłem, że Virtual Box jest bardzo łatwy w konfiguracji do tego, co próbujesz zrobić. W razie potrzeby możesz załadować i rozładować gościa. Możesz łatwo skonfigurować użycie pamięci i dostosować ilość pamięci przydzielonej gościowi. Najlepiej jest, jeśli używasz hosta 64-bitowego z więcej niż około 3 GB pamięci na hoście. Jeśli używasz XP jako gościa, najprawdopodobniej będzie to 32-bitowy gość, który działa świetnie.

Wszyscy trzej menedżerowie VM są świetni. Xen jest konfigurowany głównie za pomocą wiersza polecenia. Jest naprawdę potężny, ale może być nieco zniechęcający. VMware nie jest oprogramowaniem typu open source, jeśli ma to dla Ciebie znaczenie. Virtual Box działa świetnie i jest prosty w konfiguracji. Niektóre funkcje wymagają zastrzeżonego pakietu dodatków, ale zwykle nie są obowiązkowe.

Jedyną rzeczą, o której chciałbym ostrzec, jest początkowy rozmiar dysku. Naprawdę trudno jest zmienić rozmiar partycji wirtualnej po początkowej konfiguracji. Polecam, aby był nieco większy niż myślisz, że potrzebujesz.

Krótko mówiąc, maszyny wirtualne mogą być świetne. Jest to zdecydowanie wygodniejsze niż podwójny rozruch.

Powodzenia!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.