Στους υπολογιστές, ένα περιβάλλον επιφάνειας εργασίας (DE) είναι μια υλοποίηση της μεταφοράς της επιφάνειας εργασίας που αποτελείται από μια δέσμη προγραμμάτων που εκτελούνται σε ένα λειτουργικό σύστημα υπολογιστή που μοιράζονται μια κοινή γραφική διεπαφή χρήστη (GUI), που μερικές φορές περιγράφεται ως γραφικό κέλυφος. Περιβάλλοντα επιφάνειας εργασίας εμφανίστηκαν κυρίως σε προσωπικούς υπολογιστές μέχρι την άνοδο των κινητών υπολογιστών. Τα γραφικά περιβάλλοντα εργασίας βοηθούν τον χρήστη να έχει εύκολη πρόσβαση και επεξεργασία αρχείων, ενώ συνήθως δεν παρέχουν πρόσβαση σε όλες τις δυνατότητες που βρίσκονται στο υποκείμενο λειτουργικό σύστημα. Αντ' αυτού, η παραδοσιακή διεπαφή γραμμής εντολών (CLI) εξακολουθεί να χρησιμοποιείται όταν απαιτείται πλήρης έλεγχος του λειτουργικού συστήματος.
Ένα περιβάλλον επιφάνειας εργασίας αποτελείται συνήθως από εικονίδια, παράθυρα, γραμμές εργαλείων, φακέλους, ταπετσαρίες και γραφικά στοιχεία γραφείου (βλ. Στοιχεία γραφικών διεπαφών χρήστη και WIMP). Ένα GUI μπορεί επίσης να παρέχει λειτουργίες μεταφοράς και απόθεσης και άλλες δυνατότητες που καθιστούν τη μεταφορά της επιφάνειας εργασίας πιο ολοκληρωμένη. Ένα περιβάλλον επιφάνειας εργασίας στοχεύει να είναι ένας διαισθητικός τρόπος για να αλληλεπιδρά ο χρήστης με τον υπολογιστή χρησιμοποιώντας έννοιες παρόμοιες με αυτές που χρησιμοποιούνται κατά την αλληλεπίδραση με τον φυσικό κόσμο, όπως κουμπιά και παράθυρα.
Ενώ ο όρος περιβάλλον επιφάνειας εργασίας περιγράφει αρχικά ένα στυλ διεπαφών χρήστη που ακολουθούν τη μεταφορά της επιφάνειας εργασίας, έχει επίσης περιγράψει τα προγράμματα που πραγματοποιούν την ίδια τη μεταφορά. [1] Αυτή η χρήση έχει διαδοθεί από έργα όπως το Common Desktop Environment, το K Desktop Environment και το GNOME.
Σε ένα σύστημα που προσφέρει περιβάλλον επιφάνειας εργασίας, ένας διαχειριστής παραθύρων σε συνδυασμό με εφαρμογές που γράφονται χρησιμοποιώντας μια εργαλειοθήκη widget είναι γενικά υπεύθυνοι για τα περισσότερα από αυτά που βλέπει ο χρήστης. Ο διαχειριστής παραθύρων υποστηρίζει τις αλληλεπιδράσεις των χρηστών με το περιβάλλον, ενώ η εργαλειοθήκη παρέχει στους προγραμματιστές μια βιβλιοθήκη λογισμικού για εφαρμογές με ενιαία εμφάνιση και συμπεριφορά.
Ένα σύστημα παραθύρων κάποιου είδους γενικά διασυνδέεται απευθείας με το υποκείμενο λειτουργικό σύστημα και τις βιβλιοθήκες. Αυτό παρέχει υποστήριξη για γραφικό υλικό, συσκευές κατάδειξης και πληκτρολόγια. Ο διαχειριστής παραθύρων γενικά εκτελείται πάνω από αυτό το σύστημα παραθύρων. Παρόλο που το σύστημα παραθύρων μπορεί να παρέχει κάποια λειτουργικότητα διαχείρισης παραθύρων, αυτή η λειτουργικότητα εξακολουθεί να θεωρείται μέρος του διαχειριστή παραθύρων, κάτι που τυχαίνει να παρέχεται από το σύστημα παραθύρων.
Οι εφαρμογές που δημιουργούνται έχοντας κατά νου έναν συγκεκριμένο διαχειριστή παραθύρων κάνουν συνήθως χρήση μιας εργαλειοθήκης παραθύρων, που παρέχεται γενικά με το λειτουργικό σύστημα ή τον διαχειριστή παραθύρων. Μια εργαλειοθήκη παραθύρων δίνει στις εφαρμογές πρόσβαση σε widget που επιτρέπουν στον χρήστη να αλληλεπιδρά γραφικά με την εφαρμογή με συνεπή τρόπο.
Το πρώτο περιβάλλον επιφάνειας εργασίας δημιουργήθηκε από τη Xerox και πωλήθηκε με το Xerox Alto τη δεκαετία του 1970. Το Alto θεωρήθηκε γενικά από τη Xerox ως προσωπικό υπολογιστή γραφείου. απέτυχε στην αγορά λόγω κακού μάρκετινγκ και πολύ υψηλής τιμής.[2] Με τη Lisa, η Apple εισήγαγε ένα περιβάλλον επιφάνειας εργασίας σε έναν προσιτό προσωπικό υπολογιστή, το οποίο επίσης απέτυχε στην αγορά.
Η μεταφορά της επιφάνειας εργασίας έγινε δημοφιλής στους εμπορικούς προσωπικούς υπολογιστές από τον αρχικό Macintosh της Apple το 1984 και έγινε πιο δημοφιλής από τα Windows της Microsoft από τη δεκαετία του 1990. Ως τις 2014[update] , τα πιο δημοφιλή περιβάλλοντα επιφάνειας εργασίας είναι απόγονοι αυτών των προηγούμενων περιβαλλόντων, συμπεριλαμβανομένου του κελύφους των Windows που χρησιμοποιούνται στα Microsoft Windows και του περιβάλλοντος Aqua που χρησιμοποιείται στο macOS. Σε σύγκριση με τα περιβάλλοντα επιφάνειας εργασίας με βάση το X που διατίθενται για λειτουργικά συστήματα τύπου Unix όπως το Linux και το FreeBSD, τα ιδιόκτητα περιβάλλοντα επιφάνειας εργασίας που περιλαμβάνονται στα Windows και το macOS έχουν σχετικά σταθερές διατάξεις και στατικές λειτουργίες, με εξαιρετικά ενσωματωμένα «απρόσκοπτα» σχέδια που στοχεύουν στην παροχή ως επί το πλείστον συνεπείς εμπειρίες πελατών σε όλες τις εγκαταστάσεις.
Τα Microsoft Windows κυριαρχούν στην αγορά μεταξύ των προσωπικών υπολογιστών με περιβάλλον επιφάνειας εργασίας. Οι υπολογιστές που χρησιμοποιούν λειτουργικά συστήματα τύπου Unix όπως macOS, Chrome OS, Linux, BSD ή Solaris είναι πολύ λιγότερο συνηθισμένοι.[3] Ωστόσο, από το 2015 υπάρχει μια αυξανόμενη αγορά για υπολογιστές Linux χαμηλού κόστους που χρησιμοποιούν το σύστημα X Window ή το Wayland με μεγάλη ποικιλία επιτραπέζιων περιβάλλοντων. Μεταξύ των πιο δημοφιλών από αυτά είναι τα Chromebook και Chromebox της Google, το NUC της Intel, το Raspberry Pi κ.λπ.
Σε tablet και smartphone, η κατάσταση είναι η αντίθετη, με τα λειτουργικά συστήματα τύπου Unix να κυριαρχούν στην αγορά, συμπεριλαμβανομένων των iOS (που προέρχονται από BSD), Android, Tizen, Sailfish και Ubuntu (όλα προέρχονται από Linux). Το Windows Phone της Microsoft, τα Windows RT και τα Windows 10 χρησιμοποιούνται σε πολύ μικρότερο αριθμό tablet και smartphone. Ωστόσο, η πλειοψηφία των λειτουργικών συστημάτων τύπου Unix που κυριαρχούν στις φορητές συσκευές δεν χρησιμοποιούν τα περιβάλλοντα επιφάνειας εργασίας X11 που χρησιμοποιούνται από άλλα λειτουργικά συστήματα που μοιάζουν με Unix, στηριζόμενα σε διεπαφές που βασίζονται σε άλλες τεχνολογίες.
Σε συστήματα που εκτελούν το σύστημα X Window (συνήθως συστήματα οικογένειας Unix όπως Linux, τα BSD και επίσημες διανομές UNIX), τα περιβάλλοντα επιφάνειας εργασίας είναι πολύ πιο δυναμικά και προσαρμόσιμα για να καλύψουν τις ανάγκες των χρηστών. Σε αυτό το πλαίσιο, ένα περιβάλλον επιφάνειας εργασίας αποτελείται συνήθως από πολλά ξεχωριστά στοιχεία, συμπεριλαμβανομένου ενός διαχειριστή παραθύρων (όπως Mutter ή KWin ), ενός διαχειριστή αρχείων (όπως Αρχεία ή Δελφίνι), ένα σύνολο γραφικών θεμάτων, μαζί με εργαλειοθήκες (όπως GTK+ και Qt) και βιβλιοθήκες για τη διαχείριση της επιφάνειας εργασίας. Όλες αυτές οι μεμονωμένες ενότητες μπορούν να ανταλλαχθούν και να διαμορφωθούν ανεξάρτητα για να ταιριάζουν στους χρήστες, αλλά τα περισσότερα περιβάλλοντα επιφάνειας εργασίας παρέχουν μια προεπιλεγμένη διαμόρφωση που λειτουργεί με ελάχιστη ρύθμιση χρήστη.
Ορισμένοι διαχειριστές παραθύρων — όπως IceWM, Fluxbox, Openbox, ROX Desktop και Window Maker — περιέχουν σχετικά αραιά στοιχεία περιβάλλοντος εργασίας, ενώ άλλοι, όπως evilwm και wmii δεν παρέχουν αυτά τα στοιχεία. Δεν έχουν όλοι οι κωδικοί προγράμματος που αποτελούν μέρος ενός περιβάλλοντος επιφάνειας εργασίας εφέ που είναι άμεσα ορατά στον χρήστη. Ορισμένα από αυτά μπορεί να είναι κώδικας χαμηλού επιπέδου. Το KDE, για παράδειγμα, παρέχει τις λεγόμενες υποτελείς KIO που δίνουν στον χρήστη πρόσβαση σε ένα ευρύ φάσμα εικονικών συσκευών. Αυτοί οι σκλάβοι εισόδου/εξόδου δεν είναι διαθέσιμοι εκτός του περιβάλλοντος του KDE.
Το 1996 ανακοινώθηκε το KDE και ακολούθησε το 1997 η ανακοίνωση του GNOME . Το Xfce είναι ένα μικρότερο έργο που ιδρύθηκε επίσης το 1996 [4] και εστιάζει στην ταχύτητα και την αρθρωτότητα, όπως ακριβώς και το LXDE που ξεκίνησε το 2006. Μια σύγκριση των περιβάλλοντων επιφάνειας εργασίας X Window System καταδεικνύει τις διαφορές μεταξύ των περιβαλλόντων. Το GNOME και το KDE θεωρούνταν συνήθως ως κυρίαρχες λύσεις και αυτές εξακολουθούν να εγκαθίστανται συχνά από προεπιλογή σε συστήματα Linux. Καθένα από αυτά προσφέρει:
Αν και προσπαθούν για γενικά παρόμοιους στόχους, το GNOME και το KDE διαφέρουν στην προσέγγισή τους στην εργονομία των χρηστών. Το KDE ενθαρρύνει τις εφαρμογές να ενσωματωθούν και να συνεργαστούν, είναι εξαιρετικά προσαρμόσιμο και περιέχει πολλά σύνθετα χαρακτηριστικά, όλα προσπαθώντας να καθορίσουν λογικές προεπιλογές. Το GNOME από την άλλη είναι πιο προδιαγραφικό και εστιάζει στις λεπτότερες λεπτομέρειες των βασικών εργασιών και τη συνολική απλοποίηση. Κατά συνέπεια, το καθένα προσελκύει διαφορετική κοινότητα χρηστών και προγραμματιστών. Από τεχνική άποψη, υπάρχουν πολυάριθμες τεχνολογίες κοινές σε όλα τα περιβάλλοντα επιφάνειας εργασίας που μοιάζουν με Unix, προφανώς το Σύστημα X Window. Κατά συνέπεια, το έργο freedesktop.org καθιερώθηκε ως μια άτυπη ζώνη συνεργασίας με στόχο να μειωθεί η διπλή προσπάθεια.
Καθώς το GNOME και το KDE επικεντρώνονται σε υπολογιστές υψηλής απόδοσης, οι χρήστες λιγότερο ισχυρών ή παλαιότερων υπολογιστών προτιμούν συχνά εναλλακτικά περιβάλλοντα επιφάνειας εργασίας ειδικά σχεδιασμένα για συστήματα χαμηλών επιδόσεων. Τα πιο συχνά χρησιμοποιούμενα ελαφριά περιβάλλοντα επιφάνειας εργασίας περιλαμβάνουν LXDE και Xfce. Και τα δύο χρησιμοποιούν το GTK+, το οποίο είναι το ίδιο υποκείμενο εργαλείο που χρησιμοποιεί το GNOME. Το περιβάλλον επιφάνειας εργασίας MATE, μία διακλάδωση του GNOME 2, είναι συγκρίσιμο με το Xfce στη χρήση των κύκλων RAM και επεξεργαστή, αλλά συχνά θεωρείται περισσότερο ως εναλλακτική λύση σε άλλα ελαφριά περιβάλλοντα επιφάνειας εργασίας.
Για λίγο, το GNOME και το KDE απολάμβαναν την κατάσταση των πιο δημοφιλών περιβάλλοντων επιφάνειας εργασίας Linux, ενώ αργότερα, άλλα περιβάλλοντα επιφάνειας εργασίας αυξήθηκαν σε δημοτικότητα. Τον Απρίλιο του 2011, το GNOME παρουσίασε μια νέα έννοια διεπαφής με την έκδοση 3, ενώ μια δημοφιλής διανομή Linux Ubuntu παρουσίασε το δικό του νέο περιβάλλον επιφάνειας εργασίας, το Unity. Ορισμένοι χρήστες προτίμησαν να διατηρήσουν την παραδοσιακή έννοια διεπαφής του GNOME 2, με αποτέλεσμα τη δημιουργία του MATE ως διακλάδωση του GNOME 2. [12]
Το πιο συνηθισμένο περιβάλλον επιφάνειας εργασίας σε προσωπικούς υπολογιστές είναι το Windows Shell στα Microsoft Windows . Η Microsoft έχει κάνει σημαντικές προσπάθειες για να κάνει το κέλυφος των Windows οπτικά ευχάριστο. Ως αποτέλεσμα, η Microsoft εισήγαγε υποστήριξη θεμάτων στα Windows 98, τα διάφορα οπτικά στυλ των Windows XP, το εμπορικό σήμα Aero στα Windows Vista, τη γλώσσα σχεδιασμού της Microsoft (με κωδική ονομασία "Metro") στα Windows 8 και το Fluent Design System και το Windows Spotlight στο Windows 10. Το κέλυφος των Windows μπορεί να επεκταθεί μέσω επεκτάσεων Shell .
Τα βασικά περιβάλλοντα επιφάνειας εργασίας για λειτουργικά συστήματα τύπου Unix χρησιμοποιούν το σύστημα Window X και περιλαμβάνουν KDE, GNOME, Xfce, LXDE και Aqua, οποιοδήποτε από τα οποία μπορεί να επιλεγεί από τους χρήστες και δεν συνδέεται αποκλειστικά με το λειτουργικό σύστημα που χρησιμοποιείται.
Υπάρχουν επίσης πολλά άλλα περιβάλλοντα επιφάνειας εργασίας, συμπεριλαμβανομένων (αλλά χωρίς περιορισμό) CDE, EDE, GEM, IRIX Interactive Desktop, Sun's Java Desktop System, Jesktop, Mezzo, Project Looking Glass, ROX Desktop, UDE, Xito, XFast. Επιπλέον, υπάρχει το FVWM-Crystal, το οποίο αποτελείται από μια ισχυρή διαμόρφωση για τον διαχειριστή παραθύρων FVWM, ένα θέμα και περισσότερες προσθήκες, σχηματίζοντας συνολικά ένα "κιτ κατασκευής" για τη δημιουργία περιβάλλοντος επιφάνειας εργασίας.
Οι διαχειριστές παραθύρων X που προορίζονται να χρησιμοποιηθούν αυτόνομα-χωρίς άλλο περιβάλλον επιφάνειας εργασίας-περιλαμβάνουν επίσης στοιχεία που θυμίζουν εκείνα που βρίσκονται σε τυπικά περιβάλλοντα επιφάνειας εργασίας, με πιο επιφανές το Enlightment. Άλλα παραδείγματα περιλαμβάνουν το OpenBox, το Fluxbox, το WindowLab, το Fvwm, καθώς και το Window Maker και το AfterStep, τα οποία διαθέτουν αμφότερα την εμφάνιση και αίσθηση του NeXTSTEP GUI. Ωστόσο, οι νεότερες εκδόσεις ορισμένων λειτουργικών συστημάτων κάνουν αυτόματη ρύθμιση παραμέτρων.
Η προσέγγιση της Amiga στο περιβάλλον επιφάνειας εργασίας ήταν αξιοσημείωτη: το αρχικό περιβάλλον εργασίας Workbench στο AmigaOS εξελίχθηκε με την πάροδο του χρόνου για να δημιουργήσει μια ολόκληρη οικογένεια απογόνων και εναλλακτικές λύσεις επιτραπέζιων υπολογιστών. Ορισμένες από αυτές τις απόγονοι είναι η Scalos, [13] το Ambient επιφάνεια εργασίας του MorphOS, και η Wanderer επιφάνεια εργασίας του AROS OS ανοικτού κώδικα. Το WindowLab περιέχει επίσης χαρακτηριστικά που θυμίζουν το Amiga UI. Το λογισμικό Directory Opus τρίτου μέρους, το οποίο ήταν αρχικά απλώς ένα πρόγραμμα διαχείρισης αρχείων πλοήγησης, εξελίχθηκε και έγινε πλήρης αντικατάσταση επιφάνειας εργασίας Amiga που ονομάζεται Directory Opus Magellan.
Το OS/2 (και παράγωγα όπως το eComStation και το ArcaOS ) χρησιμοποιούν το Shell Workplace. Οι παλαιότερες εκδόσεις του OS/2 χρησιμοποιούσαν το Presentation Manager.
Το έργο BumpTop ήταν ένα πειραματικό περιβάλλον επιφάνειας εργασίας. Ο κύριος στόχος του είναι να αντικαταστήσει το πρότυπο 2D με μια εφαρμογή "πραγματικού κόσμου" 3D, όπου τα έγγραφα μπορούν να χειριστούν ελεύθερα σε έναν εικονικό πίνακα.