Τι είναι μια εικονική μηχανή - Τύποι και πλεονεκτήματα

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





Η ιδέα μιας εικονικής μηχανής παρουσιάστηκε γύρω στο 1960. Είναι η εξέλιξη της τεχνικής κατανομής χρόνου. Στη μέθοδο κοινής χρήσης χρόνου, κάθε πρόγραμμα έχει πλήρη πρόσβαση σε όλους τους πόρους του υπολογιστή, αλλά κάθε φορά, θα εκτελεστεί μόνο ένα πρόγραμμα. Το σύστημα εναλλάσσει τα προγράμματα σε χρονικά διαστήματα, ενώ αποθηκεύει και επαναφέρει τις καταστάσεις του προγράμματος κάθε φορά. Με τη χρήση της μεθόδου κατανομής χρόνου, πολλοί χρήστες μπορούν να χρησιμοποιούν ταυτόχρονα το σύστημα υπολογιστή. Τα ερευνητικά κέντρα της IBM ανέπτυξαν τη μέθοδο κατανομής χρόνου ως εικονικές μηχανές. Το CP-67 ήταν το πρώτο διαθέσιμο αρχιτεκτονική εικονικής μηχανής . Αναπτύχθηκαν συστήματα με πολλαπλές εικονικές μηχανές σε έναν κεντρικό υπολογιστή και μία εικονική μηχανή σε πολλούς κεντρικούς υπολογιστές.

Πριν ξεκινήσετε οποιοδήποτε νέο υλικό τεχνολογία , δοκιμάστηκε πρώτα στον εξομοιωτή για να εντοπίσει, να αναδημιουργήσει και να επιδιορθώσει τα ελαττώματα στο σχεδιασμό και να αντιμετωπίσει τα απαραίτητα βήματα. Παρομοίως, πριν από την εισαγωγή οποιουδήποτε νέου λογισμικού, προσομοιώνεται ο έλεγχος τυχόν σφαλμάτων και ο εντοπισμός σφαλμάτων. Για να γίνει αυτό, ένα σύστημα που μπορεί να λειτουργήσει ως υποκατάστατο του κύριου περιβάλλοντος για την κατασκευή νέας τεχνολογίας. Εδώ εμφανίζονται οι εικονικές μηχανές. Λειτουργεί ως εξομοίωση του συστήματος υπολογιστή παρέχοντας την πλήρη λειτουργικότητα του φυσικού συστήματος.




Τι είναι μια εικονική μηχανή;

Με την εισαγωγή νέων τεχνολογιών και νεότερων ερευνητικών μοντέλων, ξεκινούν πολλά προϊόντα υλικού και λογισμικού. Πολλά από τα λογισμικά εξαρτώνται από την πλατφόρμα, επομένως είναι μερικές φορές δύσκολο να εντοπιστούν σφαλμάτων ή να ελεγχθούν λόγω των περιορισμένων πόρων υλικού.

Ένα VM (εικονική μηχανή) είναι μια εξομοίωση ενός συστήματος υπολογιστή, όπου αυτά τα μηχανήματα χρησιμοποιούν αρχιτεκτονικές υπολογιστών για να παρέχουν τη λειτουργικότητα ενός φυσικού υπολογιστή. Η φυσική συσκευή στην οποία λειτουργούν οι εικονικές μηχανές είναι γνωστή ως Host, ενώ οι εικονικές μηχανές είναι γνωστές ως Guest. Ένας μοναδικός οικοδεσπότης μπορεί να έχει πολλαπλούς αριθμούς επισκεπτών.



Τύποι εικονικής μηχανής

Η εικονική μηχανή λειτουργεί σαν υπολογιστής και είναι sandbox από το υπόλοιπο σύστημα κεντρικού υπολογιστή. Το λογισμικό εντός του επισκέπτη δεν μπορεί να κάνει αλλαγές στο λογισμικό του συστήματος κεντρικού υπολογιστή. Έτσι, τα αρχεία ιών μπορούν να δοκιμαστούν χρησιμοποιώντας μια εικονική μηχανή χωρίς να επηρεάζεται το κύριο σύστημα υπολογιστή. Το λογισμικό υπολογιστή που δημιουργεί και τρέχει την εικονική μηχανή είναι γνωστό ως Hypervisor. Με βάση τις λειτουργίες τους υπάρχουν δύο διαφορετικοί τύποι εικονικών μηχανών - εικονικές μηχανές συστήματος και εικονικές μηχανές επεξεργασίας.

1). Εικονικές μηχανές συστήματος


Αυτοί οι τύποι VM παρέχουν πλήρη εικονικοποίηση. Λειτουργώντας ως υποκατάστατο του πραγματικού μηχανήματος, αυτά θα παρέχουν λειτουργίες για την εκτέλεση ενός συνόλου λειτουργικό σύστημα . Οι πόροι υλικού διαμοιράζονται και διαχειρίζονται, σχηματίζοντας πολλά περιβάλλοντα στο σύστημα κεντρικού υπολογιστή. Αυτά τα περιβάλλοντα είναι απομονωμένα το ένα από το άλλο αλλά υπάρχουν στον ίδιο φυσικό ξενιστή. Έτσι, αυτά παρέχουν κατανομή χρόνου μεταξύ πολλών λειτουργικών συστημάτων μεμονωμένης εργασίας.

Για να επιτρέπεται η κοινή χρήση μνήμης μεταξύ διαφορετικών εικονικών μηχανών σε έναν υπολογιστή λειτουργικό σύστημα , μπορούν να εφαρμοστούν συστήματα υπερπροσφοράς μνήμης. Οι σελίδες μνήμης με πανομοιότυπο περιεχόμενο μπορούν να κοινοποιούνται σε πολλές εικονικές μηχανές που υπάρχουν στον ίδιο φυσικό κεντρικό υπολογιστή. Αυτό είναι εξαιρετικά χρήσιμο για σελίδες μόνο για ανάγνωση.

2). Επεξεργασία εικονικών μηχανών (VM)

Αυτά τα VM είναι επίσης γνωστά ως εικονικές μηχανές εφαρμογών, περιβάλλοντα διαχειριζόμενου χρόνου εκτέλεσης. Αυτός ο τύπος VM λειτουργεί ως κανονική εφαρμογή στο λειτουργικό σύστημα του κεντρικού υπολογιστή, υποστηρίζοντας μία μόνο διαδικασία. Δημιουργείται με την έναρξη της διαδικασίας και καταστρέφεται όταν τελειώσει η διαδικασία. Χρησιμοποιείται για την παροχή ανεξάρτητης πλατφόρμας προγραμματισμός περιβάλλον στη διαδικασία, επιτρέποντάς του να εκτελεί με τον ίδιο τρόπο σε οποιαδήποτε άλλη πλατφόρμα.

Διαδικασία-εικονική μηχανή

Διαδικασία-εικονική μηχανή

Αυτά υλοποιούνται με τη χρήση διερμηνέων και παρέχει αφαιρέσεις υψηλού επιπέδου. Αυτά χρησιμοποιούνται ευρέως για προγραμματισμό Java που χρησιμοποιεί εικονική μηχανή Java για την εκτέλεση προγραμμάτων. Υπάρχει μια ειδική περίπτωση μιας διαδικασίας VM που αφαιρεί τον μηχανισμό επικοινωνίας ενός συμπλέγματος υπολογιστών. Αυτά περιέχουν μία διαδικασία ανά φυσικό μηχάνημα στο σύμπλεγμα. Αυτά βοηθούν τον προγραμματιστή να επικεντρωθεί στον αλγόριθμο αντί της διαδικασίας επικοινωνίας που παρέχεται από τη διασύνδεση και εικονική μηχανή στο λειτουργικό σύστημα . Η εφαρμογή που εκτελείται σε αυτά τα VM έχει πρόσβαση σε όλες τις υπηρεσίες του λειτουργικού συστήματος. Παράλληλη εικονική μηχανή, η διεπαφή μετάδοσης μηνυμάτων είναι παραδείγματα αυτών των εικονικών μηχανών (VM).

Αρχιτεκτονική

Το λογισμικό χρόνου εκτέλεσης είναι το λογισμικό εικονικοποίησης που εφαρμόζει το Process VM. Εφαρμόζεται σε επίπεδο API της αρχιτεκτονικής του υπολογιστή πάνω από το συνδυασμένο επίπεδο λειτουργικού συστήματος και υλικού. Αυτό προσομοιώνει τις οδηγίες σε επίπεδο χρήστη, καθώς και κλήσεις λειτουργικού συστήματος ή βιβλιοθήκης. Για την εικονική μηχανή του συστήματος, το λογισμικό εικονικοποίησης ονομάζεται Virtual Machine Monitor (VMM). Αυτό το λογισμικό υπάρχει μεταξύ της συσκευής υλικού του κεντρικού υπολογιστή και του λογισμικού επισκέπτη. Το VMM εξομοιώνει το υλικό ISA που επιτρέπει στο λογισμικό επισκέπτη να εκτελεί διαφορετικό ISA.

Πλεονεκτήματα

Μερικά από τα πλεονεκτήματα των εικονικών μηχανών είναι τα εξής:

  • Οι εικονικές μηχανές παρέχουν συμβατότητα λογισμικού με το λογισμικό που εκτελείται σε αυτό. Έτσι, όλο το λογισμικό που είναι γραμμένο για τον εικονικοποιημένο κεντρικό υπολογιστή θα εκτελείται επίσης στην εικονική μηχανή.
  • Παρέχει απομόνωση μεταξύ διαφορετικών τύπων λειτουργικών συστημάτων και διαδικασιών. Έτσι, το λειτουργικό σύστημα του επεξεργαστή που εκτελείται σε μια εικονική μηχανή δεν μπορεί να τροποποιήσει τις διαδικασίες των άλλων εικονικών μηχανών και του συστήματος κεντρικού υπολογιστή.
  • Αυτά παρέχουν ενθυλάκωση και λογισμικό που υπάρχει σε μια εικονική μηχανή μπορεί να τροποποιηθεί και να ελεγχθεί.
  • Για τον κεντρικό υπολογιστή πολλαπλών λειτουργιών, αυτά παρέχουν διάφορες δυνατότητες, όπως χωρίς διπλή εκκίνηση, μεταφορά αρχείων μεταξύ εικονικών μηχανών, σφάλμα σε ένα λειτουργικό σύστημα δεν επηρεάζει το άλλο λειτουργικό σύστημα που υπάρχει στον κεντρικό υπολογιστή, το freash OS μπορεί να προστεθεί εύκολα.
  • Αυτά παρέχουν καλή διαχείριση λογισμικού, όπως αυτά μπορούν να εκτελέσουν μια πλήρη στοίβα λογισμικού του κεντρικού υπολογιστή, να εκτελέσουν παλαιό λειτουργικό σύστημα κ.λπ.
  • Εδώ είναι δυνατή η κοινή χρήση πόρων υλικού με ανεξάρτητες στοίβες λογισμικού και για την εξισορρόπηση του φορτίου, οι εικονικές μηχανές μπορούν να μεταφερθούν στους διαφορετικούς υπολογιστές.

Έτσι, τα σύγχρονα υπολογιστικά συστήματα γίνονται πιο περίπλοκα, τα οποία περιέχουν διάφορα στενά αλληλεπιδρώντα στοιχεία λογισμικού και υλικού. Εδώ, η εικονικοποίηση λειτουργεί ως τεχνολογία διασύνδεσης. Οι εικονικές μηχανές δημιουργούν ασύμβατα υποσυστήματα για να συνεργαστούν. Παρέχει επίσης πιο ευέλικτη και αποτελεσματική χρήση πόρων υλικού σε πολλά λειτουργικά συστήματα. Αυτά παρέχουν διαλειτουργικότητα μεταξύ υλικού, λογισμικού συστήματος και εφαρμογών. Ποιες είναι οι διαφορές μεταξύ της Διαδικασίας Εικονική μηχανή και εικονική μηχανή συστήματος;