Penguin in the window: για τις δυνατότητες και τις προοπτικές του WSL2

Γεια σου Χαμπρ!

Ενώ είμαστε ακόμα σε πλήρη εξέλιξη καλοκαιρινές εκπτώσεις, θα θέλαμε να σας προσκαλέσουμε να συζητήσουμε ένα από τα μεγαλύτερα θέματα που εργαζόμαστε τον τελευταίο καιρό - την αλληλεπίδραση Windows και Linux, που σχετίζεται, ειδικότερα, με την ανάπτυξη του συστήματος WSL. Το WSL 2 είναι καθ' οδόν και ακολουθεί μια γρήγορη επισκόπηση του τι πρόκειται να ακολουθήσει σε αυτό το υποσύστημα, καθώς και μια πρόβλεψη για μελλοντική ενοποίηση μεταξύ Windows και Linux.

Penguin in the window: για τις δυνατότητες και τις προοπτικές του WSL2

Τον Μάιο του τρέχοντος έτους, η Microsoft ανακοίνωσε ότι το WSL2, η πιο πρόσφατη έκδοση του υποσυστήματος των Windows στο Linux, θα λειτουργούσε σε έναν πλήρη πυρήνα Linux ενσωματωμένο.
Αυτή είναι η πρώτη φορά που η Microsoft συμπεριέλαβε τον πυρήνα Linux ως στοιχείο στα Windows. Η Microsoft εισάγει επίσης μια γραμμή εντολών στα Windows που θα επεκτείνει τις δυνατότητες του PowerShell και του WSL.

Τόσο ο πυρήνας Linux για WSL2, που δημιουργήθηκε από τη Microsoft, όσο και η νέα γραμμή εντολών των Windows ενδιαφέρουν πρωτίστως τους προγραμματιστές.

«Αυτή είναι η πιο δυνατή κίνηση στο παιχνίδι ενάντια στο AWS», λέει ο Joshua Schwartz, διευθυντής προγραμμάτων ψηφιοποίησης στη συμβουλευτική εταιρεία AT Kearney.

Το μέλλον της Microsoft δεν συνδέεται με την αγορά των υπολογιστών, αν και θα συνεχίσει να διατηρεί σταθερά τη θέση της σε αυτό το τμήμα. Θα είναι πολύ πιο σημαντικό να αποκτήσουμε βάση στην αγορά του cloud, ένα από τα στοιχεία της οποίας στο μέλλον μπορεί να είναι οι επιτραπέζιοι υπολογιστές.

Τι κάνει το WSL2;

Το WSL2 είναι το πιο πρόσφατο πλαίσιο υποσυστήματος των Windows για Linux. Σας επιτρέπει να βελτιώσετε ριζικά την απόδοση του συστήματος αρχείων και παρέχει πλήρη συμβατότητα με κλήσεις συστήματος.

Ένα από τα κύρια αιτήματα από την κοινότητα WSL αφορούσε τη βελτίωση της λειτουργικότητας. Το WSL2 εκτελεί πολλά περισσότερα εργαλεία Linux από το WSL, ιδίως το Docker και το FUSE.
Το WSL2 χειρίζεται λειτουργίες έντασης αρχείων, ιδιαίτερα git clone, npm εγκατάσταση, apt update και apt upgrade. Η πραγματική αύξηση της ταχύτητας εξαρτάται από τη συγκεκριμένη εφαρμογή και τον τρόπο αλληλεπίδρασης με το σύστημα αρχείων.

Οι πρώτες δοκιμές έδειξαν ότι το WSL2 είναι περίπου 20 φορές πιο γρήγορο από το WSL1 στην αποσυσκευασία της πίσσας από το φερμουάρ. Κατά τη χρήση του git clone, της εγκατάστασης npm και του cmake σε διάφορα έργα, το σύστημα έδειξε δύο έως πέντε φορές αύξηση στην απόδοση.

Θα βοηθήσει αυτό να κερδίσει την εμπιστοσύνη των προγραμματιστών;

Ουσιαστικά, η Microsoft επιδιώκει να κερδίσει την αναγνώριση και την εμπιστοσύνη στην κοινότητα των προγραμματιστών αναπτύσσοντας τη δική της έκδοση του πυρήνα Linux για την υποστήριξη των διεργασιών WSL2, δήλωσε ο Cody Swann, Διευθύνων Σύμβουλος της Gunner Technology.

«Εκτός από την αυστηρή ανάπτυξη για Windows, η δημιουργία όλων των άλλων εφαρμογών - cloud, mobile, web εφαρμογών - σε υπολογιστή ήταν εξαιρετικά άβολη, γι' αυτό ο προγραμματιστής έπρεπε με κάποιο τρόπο να εκκινήσει μια διανομή Linux παράλληλα με το λειτουργικό σύστημα Windows. Η Microsoft το αναγνώρισε αυτό και βρήκε μια λύση», καταλήγει.

Είναι απίθανο η εισαγωγή ενός προσαρμοσμένου πυρήνα Linux να έχει σοβαρό αντίκτυπο στο σύστημα από τη σκοπιά του μέσου χρήστη. Ωστόσο, αυτό ανοίγει ευκαιρίες για στενότερη αλληλεπίδραση μεταξύ των υπηρεσιών της Microsoft και του λειτουργικού συστήματος Linux.
Αυτή η κίνηση από την πλευρά της Microsoft είναι πράγματι πολύ έξυπνη, καθώς βοηθά στη διείσδυση βαθύτερα στην κοινότητα των προγραμματιστών, καθώς και στην ενεργή χρήση των προϊόντων που αναπτύσσει κάποιος άλλος - δηλαδή σύνδεση σε ανοιχτό κώδικα, λέει ο Swann.

Καλώς ήρθατε στη Νέα Microsoft

Η τάση για τη δημιουργία και τη διατήρηση ενός πυρήνα Linux «ειδικά για Windows» αντικατοπτρίζει την ισχυρή κατεύθυνση ανοιχτού κώδικα που προωθείται από τον CEO Satya Nadella. Η Microsoft δεν είναι πια η ίδια όπως ήταν επί Γκέιτς και Μπάλμερ, όταν τα πάντα κρατούνταν πίσω από έναν αποκλειστικό φράχτη και κανείς δεν σκεφτόταν τη διαλειτουργικότητα.

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

Σύμφωνα με τον Charles King, κύριο αναλυτή στο Pund-IT, τα δύο κύρια πλεονεκτήματα της Microsoft είναι η αποτελεσματικότητα και η ασφάλεια.

«Χρησιμοποιώντας ενεργά τις δικές της σοβαρές εξελίξεις - πόρους και εργαλεία - η εταιρεία μπορεί να εγγυηθεί στους πελάτες ότι ο πυρήνας θα είναι πλήρως ενημερωμένος και εξοπλισμένος με τις πιο πρόσφατες ενημερώσεις κώδικα και επιδιορθώσεις για να διασφαλίσει πλήρη ασφάλεια», προσθέτει.

Επωφελούνται και οι προγραμματιστές

Τα δυαδικά αρχεία Linux εκτελούν πολλές λειτουργίες χρησιμοποιώντας κλήσεις συστήματος, όπως πρόσβαση σε αρχεία, αίτημα μνήμης και δημιουργία διεργασιών. Το WSL1 βασίζεται σε ένα επίπεδο μετάφρασης για να ερμηνεύει πολλές από αυτές τις κλήσεις συστήματος και να τους επιτρέπει να αλληλεπιδρούν με τον πυρήνα των Windows NT.

Το πιο δύσκολο πράγμα είναι να υλοποιήσετε όλες τις κλήσεις συστήματος. Δεδομένου ότι αυτό δεν έγινε στο WSL1, ορισμένες εφαρμογές δεν μπορούσαν να λειτουργήσουν εκεί. Το WSL2 εισάγει πολλές νέες εφαρμογές που λειτουργούν καλά σε αυτό το περιβάλλον.

Η νέα αρχιτεκτονική επιτρέπει στη Microsoft να φέρει τις πιο πρόσφατες βελτιστοποιήσεις στον πυρήνα του Linux πολύ πιο γρήγορα από ό,τι με το WSL1. Η Microsoft μπορεί να ενημερώσει τον πυρήνα WSL2 αντί να εφαρμόσει ξανά όλους τους περιορισμούς.

Εργαλείο πλήρως ανοιχτού κώδικα

Η ανάπτυξη του δικού της πυρήνα Linux από τη Microsoft ήταν το αποκορύφωμα της πολυετούς δουλειάς του Linux Systems Group, καθώς και πολλών άλλων ομάδων σε ολόκληρη τη Microsoft, δήλωσε ο Jack Hammons, διευθυντής προγράμματος στο Linux Systems Group, Microsoft.

Ο πυρήνας που παρέχεται για το WSL2 θα είναι εντελώς ανοιχτού κώδικα και η Microsoft θα δημοσιεύσει οδηγίες για το πώς να δημιουργήσετε έναν τέτοιο πυρήνα στο GitHub. Η εταιρεία θα συνεργαστεί με προγραμματιστές που είναι πρόθυμοι να βοηθήσουν το έργο και να οδηγήσουν τις αλλαγές από κάτω προς τα πάνω.

Οι προγραμματιστές της Microsoft δημιούργησαν το WSL2 χρησιμοποιώντας τα συστήματα συνεχούς ενοποίησης και συνεχούς παράδοσης της εταιρείας. Αυτό το λογισμικό θα εξυπηρετείται μέσω του συστήματος ενημέρωσης των Windows και θα είναι απολύτως διαφανές στον χρήστη. Ο πυρήνας θα παραμείνει ενημερωμένος και θα περιλαμβάνει όλες τις δυνατότητες του πιο πρόσφατου σταθερού κλάδου του Linux.

Για να διασφαλίσει τη διαθεσιμότητα της πηγής, η εταιρεία αντικατοπτρίζει τα αποθετήρια τοπικά, παρακολουθεί συνεχώς τα περιεχόμενα της λίστας αλληλογραφίας ασφαλείας Linux και συνεργάζεται με πολλές εταιρείες που υποστηρίζουν βάσεις δεδομένων σε εταιρικά εικονικά περιβάλλοντα (CVE). Αυτό διασφαλίζει ότι ο πυρήνας Linux της Microsoft είναι ενημερωμένος με τις πιο πρόσφατες ενημερώσεις και εξαλείφει τυχόν αναδυόμενες απειλές.

Οι αλλαγές από κάτω προς τα πάνω γίνονται υποχρεωτικές

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

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

Όταν οι βασικές πηγές WSL είναι διαθέσιμες, θα αποτελούνται από συνδέσμους σε ένα σύνολο ενημερώσεων κώδικα και ένα μακροχρόνιο σταθερό μέρος των πηγών. Η Microsoft αναμένει ότι αυτή η λίστα θα συρρικνωθεί με την πάροδο του χρόνου καθώς οι ενημερώσεις κώδικα διανέμονται ανάντη και προστίθενται νέες τοπικές ενημερώσεις κώδικα για την υποστήριξη νέων λειτουργιών WSL.

Πιο ευχάριστος σχεδιασμός παραθύρων

Η Microsoft ανακοίνωσε επίσης την επερχόμενη χειμερινή έκδοση του Windows Terminal, μιας νέας εφαρμογής για χρήστες που εργάζονται με εργαλεία γραμμής εντολών και κελύφη, όπως Command Prompt, PowerShell και WSL.

Penguin in the window: για τις δυνατότητες και τις προοπτικές του WSL2

Τερματικό Windows

Το Windows Terminal 1.0 προσφέρει πολλές ρυθμίσεις και επιλογές διαμόρφωσης που σας δίνουν περισσότερο έλεγχο στην εμφάνιση του παραθύρου του τερματικού, καθώς και στα κελύφη/προφίλ που θα πρέπει να ανοίγουν ως νέες καρτέλες.

Οι ρυθμίσεις θα αποθηκευτούν σε ένα δομημένο αρχείο κειμένου, διευκολύνοντας τη διαμόρφωση και το σχεδιασμό του παραθύρου του τερματικού σύμφωνα με τις προτιμήσεις σας.

Η Microsoft δεν βελτιώνει πλέον την υπάρχουσα κονσόλα των Windows και δημιουργεί μια νέα από την αρχή, αποφασίζοντας να ακολουθήσει μια νέα προσέγγιση. Το Windows Terminal εγκαθίσταται και εκτελείται παράλληλα με την υπάρχουσα εφαρμογή Windows Console που βγαίνει από το κουτί.

Πώς λειτουργεί;

Όταν ένας χρήστης των Windows 10 εκκινεί απευθείας το Cmd/PowerShell/etc, ενεργοποιείται η διαδικασία που συνδέεται με την κανονική παρουσία της Κονσόλας. Η μηχανή διαμόρφωσης του νέου τερματικού επιτρέπει στους χρήστες των Windows να δημιουργούν πολλαπλά προφίλ για όλα τα κελύφη/εφαρμογές/εργαλεία που επιθυμούν, είτε σε συνδέσεις PowerShell, Command Prompt, Ubuntu ή ακόμα και SSH σε συσκευές Azure ή IoT.

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

Τα κύρια πλεονεκτήματα της νέας διεπαφής εντολών των Windows είναι πολλές καρτέλες και όμορφο κείμενο. Η υποστήριξη για πολλαπλές καρτέλες θεωρήθηκε το πιο ζητούμενο αίτημα για ανάπτυξη τερματικού. Το όμορφο κείμενο λαμβάνεται χάρη στη μηχανή απόδοσης που βασίζεται στο DirectWrite/DirectX, εξοπλισμένη με επιτάχυνση GPU.

Ο κινητήρας εμφανίζει εικονίδια κειμένου, γλύφους και ειδικούς χαρακτήρες που βρίσκονται σε γραμματοσειρές, συμπεριλαμβανομένων κινεζικών, ιαπωνικών και κορεατικών ιδεογραμμάτων (CJK), emoji, συμβόλων γραμμής ισχύος, εικονιδίων και δεσμών προγραμματισμού. Επιπλέον, αυτός ο κινητήρας αποδίδει το κείμενο πολύ πιο γρήγορα από το GDI που χρησιμοποιήθηκε προηγουμένως στην κονσόλα.

Η συμβατότητα προς τα πίσω παραμένει σε πλήρη τάξη, αν και μπορείτε να δοκιμάσετε το Windows Terminal αν θέλετε.

Χρονολογία: πώς θα συμβεί

Η Microsoft θα παρέχει το Windows Terminal μέσω του Microsoft Store στα Windows 10 και θα το ενημερώνει τακτικά. Με αυτόν τον τρόπο, οι χρήστες θα είναι πάντα ενημερωμένοι με τις πιο πρόσφατες εκδόσεις και τις πιο πρόσφατες βελτιώσεις – ουσιαστικά χωρίς επιπλέον προσπάθεια.

Η Microsoft σχεδιάζει να κυκλοφορήσει ένα νέο τερματικό τον ερχόμενο χειμώνα. Μόλις η Microsoft κυκλοφορήσει το Windows Terminal 1.0, οι προγραμματιστές θα συνεχίσουν να εργάζονται σε πολλές από τις δυνατότητες που έχουν ήδη καθυστερήσει.

Τερματικό Windows και Πηγαίος κώδικας της Κονσόλας των Windows ήδη αναρτημένο στο GitHub.

Τι μπορεί να μας περιμένει στο μέλλον;

Η πιθανότητα η Microsoft να χρησιμοποιήσει τον δικό της πυρήνα Linux για άλλους σκοπούς, για παράδειγμα, για να αναπτύξει τη δική της διανομή Linux, φαίνεται κάπως υποθετική σήμερα.

Το αποτέλεσμα πιθανότατα εξαρτάται από το αν η Microsoft θα καταφέρει να βρει σημαντική ζήτηση για ένα τέτοιο προϊόν και ποιες εμπορικές ευκαιρίες θα μπορούσαν να ανοίξουν τέτοιες εξελίξεις, λέει ο Charles King.

Πιστεύει ότι η εστίαση της εταιρείας για το άμεσο μέλλον θα είναι να κάνει τα Windows και το Linux όλο και πιο συμβατά και συμπληρωματικά μεταξύ τους.

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

Όταν η Apple επανεφηύρε το Mac OS το 2000, το λειτουργικό σύστημα βασίστηκε στο BSD Unix, το οποίο μοιάζει περισσότερο με το Linux παρά με το DOS. Σήμερα, μια νέα έκδοση των Microsoft Windows δημιουργείται με βάση το Linux.

Ίσως μια νέα πόρτα ανοίγει για εμάς;

Ο πυρήνας Linux της Microsoft θα μπορούσε να ανοίξει το δρόμο για μεγαλύτερη διαλειτουργικότητα μεταξύ των υπηρεσιών Windows και του λειτουργικού συστήματος Linux. Στην ουσία, αυτές οι εξελίξεις της Microsoft δείχνουν ότι η ίδια η Microsoft έχει ήδη καταλάβει: σήμερα δεν έχουν απομείνει σχεδόν κανένας πελάτης που να προτιμά να υπάρχει σε έναν κόσμο όπου τα πάντα είναι Windows.

Είναι πολύ πιο λογικό να χρησιμοποιούνται ετερογενείς τεχνολογίες και συστήματα που ανταποκρίνονται καλύτερα στις επιχειρηματικές απαιτήσεις και σε συγκεκριμένες πρακτικές καταστάσεις.

Το μεγαλύτερο στρατηγικό ερώτημα είναι, ποιες νέες στρατηγικές ευκαιρίες ανοίγει αυτή η κίνηση για την ίδια την πλατφόρμα της Microsoft;

Το Azure, το οικοσύστημα cloud της Microsoft, παρέχει ήδη τεράστια υποστήριξη για το Linux. Προηγουμένως, τα Windows υποστήριζαν καλά το Linux χρησιμοποιώντας εικονικές μηχανές.

Οι θεμελιώδεις αλλαγές που λαμβάνουν χώρα σήμερα οφείλονται στο γεγονός ότι τώρα οι διεργασίες Linux θα εκτελούνται εγγενώς στον πυρήνα των Windows, πράγμα που σημαίνει ότι η εργασία με Linux από τα Windows θα είναι πολύ πιο γρήγορη από ό,τι σε εικονικές μηχανές. Είναι πιθανό ότι ως αποτέλεσμα, το Azure θα εμπλουτιστεί με ένα ολόκληρο στρώμα μηχανικών που χρησιμοποιούν Linux σε βιομηχανική κλίμακα.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο