WIRTUALIZACJA teoria i praktyka. Oskar Skibski, Piotr Sikora, Mateusz Kruszyński



Podobne dokumenty
Wirtualizacja. Piotr Sikora Tomasz Ziółkowski

Wirtualizacje. Opracowali: Piotr Dąbrowiecki Jakub Gołębiowski Winicjusz Szyszka

U M L. System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux)

Wirtualizacja. Maciej Pawlisz, Konrad Tomala, Paweł Łukasz

Q E M U.

Linux -- u mnie działa!

WIRTUALIZACJA. Kamil Frydel, Julia Romanowska, Maciej Sokołowski. 12 listopada 2007 WIRTUALIZACJA. Kamil Frydel, Julia Romanowska, Maciej Sokołowski

VMware, QEMU, UML. oraz inne wirtualne maszyny. Piotr Findeisen Filip Grządkowski Piotr Kuśka Krzysztof Mroczek

QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta:

Wirtualizacja. Co to właściwie jest? Jak działa? W jaki sposób jej używać? Systemy operacyjne 2007/08

Wirtualizacja. Metody, zastosowania, przykłady

System wspomagania zarządzania wirtualizacją

Przegląd dostępnych hypervisorów. Jakub Wojtasz IT Solutions Architect

Prezentacja emulatora QEMU Zajęcia SO

Wirtualizacja. Paweł Mantur Artur Mączka Tomasz Niedabylski

Systemy Operacyjne Wirtualizacja

Wirtualizacja. czyli trochę co innego niż rzeczy do tej pory omawiane

Konwersja maszyny fizycznej na wirtualną.

Wirtualizacja. Przegla d wybranych technik. Magda Michalska Krzysztof Kulewski Andrzej Pacuk. Systemy operacyjne 2006

Wirtualizacja w praktyce.

VMware. Prezentacja na Systemy Operacyjne

Monitor maszyn wirtualnych

RHEL 5 wpływ wirtualizacji na koszty

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

CyberGuru Wirtualizacja na platformie Hyper-V w pigułce. Prezentuje: Kamil Frankowicz

Wirtualizacja. Systemy operacyjne 9 listopada Aleksander Jankowski Paweł Matysiak Aleksandra Murawska

Czym jest wirtualizacja

Wirtualizacja jako środek zmniejszenia kosztów działalności przedsiębiorstwa w czasach kryzysu

Konwersja maszyny fizycznej na wirtualną

Przepełnienie bufora. SQL Injection Załączenie zewnętrznego kodu XSS. Nabycie uprawnień innego użytkownika/klienta/administratora

Zadanie1. Wykorzystując serwis internetowy Wikipedii wyjaśnij następujące pojęcia: wirtualizacja, VirtualBox, Vmware, KVM, Virtual PC, Hyper-V.

Wirtualizacja: XEN. Marek Marczykowski 16 czerwca 2010

Emulacja maszyny. Program udaje zupełnie inną architekturę. Musi przetłumaczyć instrukcje emulowane na instrukcje platformy, na której działa

Koncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Oracle VM - Przegląd architektury i możliwości

Wirtualizacja. wspomagana sprzętowo - zalety, wady, zagrożenia. Szymon Doroz & Bartosz Janiak & Przemysław Zych

pasja-informatyki.pl

Przegląd technik wirtualizacji i separacji w nowoczesnych systemach rodziny UNIX

ROBERT LIS. Wirtualizacja edukacyjnych zasobów IT. Virtualization of IT education

LPAR - logiczne partycjonowanie systemów

Linux KVM - wparcie dla wirtualizacji w kontekście serwerów ARM

Wirtualizacja wspomagana sprzętowo

Prezentacja systemu RTLinux

Know your tools KVM. Dariusz Puchalak Dariusz_Puchalak < at > ProbosIT.pl

Wirtualizacją nazywamy użycie oprogramowania w celu stworzenia abstrakcji (iluzji) posiadanych zasobów.

Badanie wydajności maszyn wirtualnych

Podstawowe zagadnienia

Wstęp do wirtualizacji

Przegląd technik wirtualizacji i separacji w nowoczesnych systemach rodziny UNIX

Materiały pomocnicze do laboratorium z Architektury Komputerów II.

Backup & Recovery 10 Home

Licencjonowanie pytania i odpowiedzi

Wirtualizacja Systemy operacyjne

"Klasyczna" struktura systemu operacyjnego:

Szymon Acedański, Piotr Hofman, Łukasz Rekucki MIMUW, 2006

Wirtualizacja systemów

SYSTEMY OPERACYJNE. kik.pcz.czest.pl/so. (C) KIK PCz Materiały pomocnicze 1 PROWADZI: PODSTAWOWA LITERATURA: ZAJĘCIA: STRONA

Capgemini IT Wirtualizacja fundamentem chmury technologie wirtualizacji jako podstawy funkcjonowania chmury

SYSTEMY OPERACYJNE WYKŁAD 1 INTEGRACJA ZE SPRZĘTEM

Nowe produkty w ofercie Red Hat

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

WIRTUALIZACJA SERWERÓW I STACJI ROBOCZYCH- NA PRZYKŁADZIE WYBRANEGO OPROGRAMOWA- NIA WIRTUALNE ŚRODOWISKO LABORATORYJNE DLA STUDENTÓW

MANAGER 2010 PROFESSIONALP VS. VIRTUALIZATION WIRTUALIZACJA OBSŁUGIWANE ANAGER 2010 C MANAGER 2010 CORPORATE: Funkcja. Korzyści.

Platformy wirtualizacyjne

Zastosowanie emulatorów w rozbudowie systemów wbudowanych

Grzegorz Jaśkiewicz Dariusz Stefański

WIRTUALIZACJA SYSTEMÓW KOMPUTEROWYCH JAKO ŚRODEK ZAPEWNIENIA NIEZAWODNOŚCI

HARD DISK MANAGER 11 / PEŁNA LISTA FUNKCJI. HDM 11 Professional. HDM 2011 Suite. Funkcje. Partycjonowanie dysku

HARD DISK MANAGER PORÓWNANIE EDYCJI

Wymagania systemowe Dla przedsiębiorstw i średnich firm

Wstęp do Informatyki. Klasyfikacja oprogramowania

Tekla Structures 20 Instalacja

Architektura chmur i wirtualizacja. Wykład 4 Wirtualizacja

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

Włodzimierz Dymaczewski 10/05/2010. Forum IT. Zarządzanie realnymi problemami środowisk wirtualnych IBM Corporation

1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7?

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

Konfiguracja i kompilacja jądra Linux. Based on Free Electrons

Systemy macierzowe. www. qsantechnology. com

INSTRUKCJA I WSKAZÓWKI

BACKUP & RECOVERY 10 HOME PL

RedHat Enterprise Virtualization

Zespół Szkół Technicznych w Suwałkach. Pracownia Systemów Komputerowych. Ćwiczenie Nr 13 ARCHITEKTURA SYSTEMU WINDOWS. Opracował Sławomir Zieliński

Wirtualizacja Hyper-V: sposoby wykorzystania i najnowsze wyniki badań

Wirtualizacja zasobów IPv6 w projekcie IIP

WIRTUALNE ŚRODOWISKO BADAWCZE REALIZUJĄCE ZADANIA SIECI KOMPUTEROWEJ

Firma Informatyczna ASDER. Prezentacja. Centrum zarządzania. Przemysław Kroczak ASDER

WWQ. Wakacyjne Warsztaty QNAP. Zaczynamy o 11:00. Prowadzący: Łukasz Milic Certyfikowany Trener QNAP

Wykorzystanie usług chmurowych dla sterowania robotem mobilnym na przykładzie Amazon EC2

Zaawansowane funkcje systemów plików. Ewa Przybyłowicz

Tomasz Greszata - Koszalin

Warstwy systemu Windows 2000

Tworzenie maszyny wirtualnej

Licencjonowanie w środowiskach wirtualnych

OCENA ZABEZPIECZEŃ. Obraz środowiska wirtualnego

Szkolenie autoryzowane. MS Administracja i obsługa Windows 7. Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje

WZÓR UMOWY. Zawarta w Białymstoku, w dniu.. pomiędzy:

Wirtualizacja zasobów informatycznych w pracowni komputerowej

Struktury systemów operacyjnych

Transkrypt:

WIRTUALIZACJA teoria i praktyka Oskar Skibski, Piotr Sikora, Mateusz Kruszyński

Plan prezentacji Wstęp co to jest? po co to jest? Rodzaje wirtualizacji emulacja pełna emulacja API wirtualizacja Problemy w architekturze x86 Sprzętowe wspomaganie wirtualizacji w architekturze x86 Intel VT-x i VT-i AMD-V

Plan prezentacji cd. Realizacja wirtualizacji Wine User Mode Linux Xen QEMU VMware VirtualBox Virtual PC Przedstawienie wybranych programów w akcji

Wirtualizacja Co to jest? "a technique for hiding the physical characteristics of computing resources from the way in which other systems, applications, or end users interact with those resources" różne postacie: wirtualna pamięć, wątki, VM

Wirtualizacja Po co to jest? Używanie programów z innego systemu operacyjnego (linux na windowsie, gry commodore 64) Symulowanie wielu komputerów przez jeden komputer fizyczny Symulowanie jednego komputera przez wiele słabszych komputerów Odpalanie programów niebezpiecznych dla komputera Symulowanie innego niż rzeczywisty stanu zasobów (np. mała pamięć) Testowanie kompatybilności

Rodzaje wirtualizacji Emulacja pełna Emulacja API Wirtualizacja

Rodzaje wirtualizacji Emulacja pełna Emulacja całego komputera - wirtualny system operacyjny, wirtualna pamięć Komputer wykonuje w pętli wszystko co robiłby system operacyjny emulowany Każda operacja jest emulowana, bo przez warstwę wirtualną przechodzi do jądra systemu

Rodzaje wirtualizacji Emulacja pełna Zalety: Duża przenośność Pełna kontrola systemu głównego nad systemem emulowanym (zrzuty) Wady: Brak zależności od tego co jest uruchamiane Bardzo wolne Słaby kontakt z emulowaną maszyną (wielka niewiadoma)

Rodzaje wirtualizacji Emulacja API Podmiana instrukcji sięgających poza własne środowisko Część programów nie działa, ciężko o kompatybilność Doczepienie bibliotek danego systemu operacyjnego Przykład: Wine

Rodzaje wirtualizacji Emulacja API Zalety: Wady: Dużo szybszy niż emulacja pełna Brak potrzeby instalowania systemu operacyjnego Zupełnie nieprzenośne - bezużyteczne dla innych instalowanych systemów

Rodzaje wirtualizacji Wirtualizacja Drugi system działający równolegle z pierwszym Tłumaczenie niewielkiej liczby instrukcji Takie same systemy oparte na tym samym standardzie

Rodzaje wirtualizacji Wirtualizacja Zalety: Wady: Szybsza niż emulacja pełna Bardziej wszechstronne od emulacji API Brak przenośności na inne systemy Brak możliwości instalowania innych systemów innej architektury niż architektura hosta

Problemy w architekturze x86 Trochę formalizmu Kryterium Popka - Goldberga Odpowiedniość program działający na maszynie wirtualnej musi zachowywać się w dokładnie taki sam sposób, jak na rzeczywistym sprzęcie Kontrola zasobów wirtualna maszyna musi w pełni kontrolować wszystkie zasoby, które są wirtualizowane Wydajność większa część instrukcji musi być wykonywana bez udziału maszyny wirtualnej źródło: Wikipedia

Problemy w architekturze x86 W systemie operacyjnym wyróżniamy trzy zbiory instrukcji dostępnych na danej architekturze: Instrukcje uprzywilejowane Instrukcja wrażliwe ze względu na kontrolę Instrukcje wrażliwe ze względu na wykonanie Twierdzenie: Dla każdego standardowego komputera trzeciej generacji wirtualna maszyna może zostać skonstruowana, jeśli zbiór instrukcji wrażliwych jest podzbiorem zbioru instrukcji uprzywilejowanych. W x86 tak nie jest! http://www.floobydust.com/virtualization/lawton_1999.txt

Problemy w architekturze x86 Inne problemy Aliasowanie poziomów przywilejów Kompresja przestrzeni adresowej Zmiana trybu pracy procesu (użytkownik - kernel) Wirtualizacja przerwań Dostęp do ukrytego stanu Kompresja poziomów przywilejów Częste dostępy do uprzywilejowanych zasobów

Wspomaganie sprzętowe Intel VT-x oraz VT-i - architektura VT-x VMX root operation i VMX non-root operation Virtual Machine Control Structure VT-i guest-state oraz host-state dodatkowy bit - PSR.vm Rozszerzenia Processor Abstraction Layer PAL service

Wspomaganie sprzętowe Intel VT-x oraz VT-i rozwiązania problemów Rozróżnienie poziomu przywilejów 0 dla guesta i hosta Przeładowanie (VT-x) lub rozszerzenie (VT-i) przestrzeni adresowej Kontrola przerwań Ukryty stan procesora w VCMS Ulepszona obsługa wyjątków

Wspomaganie sprzętowe AMD-V host mode i guest mode VMCB vmrun VMCALL Migracja VM (64Bit)

Wine Wine = Wine is not emulator Implementacje bibliotek.dll pod Linuxa Dwa komponenty: do.exe i Winelib Zalety: Nie wymaga posiadania Windowsa Wady: Niepełny zbiór.dlli Tylko Linux

User Mode Linux Zwykły proces Wirtualny system Zintegrowany z Linuxem (2.6.0) 2 tryby działania: Tracing Thread Separate Kernel Adress Space

User Mode Linux Zalety: Debugowanie jąder Honeypot Wirtualne serwery Prosty w obsłudze Szybko działa... Wady...ale wolniej od np. Xena

Xen Parawirtualizacja Obsługiwane architektury : x86, AMD64 Systemy hosta: Linux, NetBSD, Solaris Systemy guesta: j.w. + inne BSD, Windows XP i Server, Plan 9 Zalety: Wydajny Wady: Wymaga modyfikacji w systemach guestów

QEMU Pełny emulator 2 tryby emulacji: User Mode i cały system Emuluje: IA-32 (x86) PCs, AMD64 PCs, MIPS R4000, Sun's SPARC sun4m, Sun's SPARC sun4u, ARM (Integrator/CP i Versatile/PB), SH4 SHIX, PowerPC (PReP i Power Macintosh), ETRAX CRIS.

QEMU Zalety: Copy-On-Write Obsługa wielu architektur Snapshoty Wady: Słabo wspiera Windows Nie kompiluje się z GCC 4.x

VMware VMWorkstation Wielokrotne snapshoty Teamy wirtualnych maszyn Wirtualne dyski twarde.vmdk, wirtualne CD.iso Sieć przez NAT Klonowanie systemów Komercyjny

Virtual Box Open source Snapshoty Zapisywanie stanu Sieciowość: NAT, HIF, wewnętrzna Guest Additions (np. seamless mouse) Możliwość współdzielenia obszarów dysku pomiędzy hostem a guestem

Virtual Box Obrazy dysków twardych O stałym rozmiarze, rozszerzalne, różnicowe, fizyczne W trybie normalnym, niezmiennym i write-through Obsługuje też *.vmdk (na razie tylko write-through) iscsi Interfejsy: VirtualBox, VBoxManage, VBoxSDL, zdalny VRDP

Microsoft Virtual PC Większość funkcjonalności jak VirtualBox Darmowy Drag'n'drop Dyski Undo Virtual PC dla PowerPC Utrudnienia dla Linuxa http://vpc.visualwin.com/

Podsumowanie (dyskusja)