Kernel vs Operating System
Λειτουργικό σύστημα είναι το λογισμικό συστήματος που διαχειρίζεται τον υπολογιστή. Τα καθήκοντά του περιλαμβάνουν τη διαχείριση των πόρων του υπολογιστή και την αντιμετώπιση των αναγκών επικοινωνίας τους. Ο πυρήνας είναι το κύριο μέρος ενός λειτουργικού συστήματος που πραγματοποιεί κυρίως άμεση επικοινωνία με τους πόρους υλικού. Χωρίς τον πυρήνα, ένα λειτουργικό σύστημα δεν μπορεί να λειτουργήσει. Επειδή όμως ο πυρήνας ενός λειτουργικού συστήματος είναι θαμμένος με πολλά άλλα στοιχεία, οι περισσότεροι χρήστες δεν γνωρίζουν την ύπαρξη ενός πυρήνα.
Τι είναι το λειτουργικό σύστημα;
Ένα λειτουργικό σύστημα είναι λογισμικό που διαχειρίζεται έναν υπολογιστή. Είναι μια συλλογή δεδομένων και προγραμμάτων που διαχειρίζεται τους πόρους του συστήματος (hardware). Επιπλέον, εξυπηρετεί την εκτέλεση λογισμικού εφαρμογών (όπως επεξεργαστές κειμένου κ.λπ.) ενεργώντας ως στρώμα διασύνδεσης μεταξύ του υλικού και των εφαρμογών (για λειτουργίες όπως λειτουργίες εισόδου/εξόδου και λειτουργίας που σχετίζονται με τη μνήμη). Είναι το κύριο λογισμικό συστήματος που εκτελείται σε έναν υπολογιστή. Επειδή οι χρήστες δεν μπορούν να εκτελέσουν οποιοδήποτε άλλο λογισμικό συστήματος ή εφαρμογής χωρίς λειτουργικό σύστημα που λειτουργεί σωστά, ένα λειτουργικό σύστημα μπορεί να θεωρηθεί το πιο σημαντικό λογισμικό συστήματος για έναν υπολογιστή.
Λειτουργικά συστήματα υπάρχουν σε όλους τους τύπους μηχανών (όχι μόνο υπολογιστές) που διαθέτουν επεξεργαστές όπως κινητά τηλέφωνα, συστήματα παιχνιδιών που βασίζονται σε κονσόλα, υπερυπολογιστές και διακομιστές. Τα πιο δημοφιλή λειτουργικά συστήματα είναι τα Microsoft Windows, Mac OS X, UNIX, Linux και BSD. Τα λειτουργικά συστήματα της Microsoft χρησιμοποιούνται κυρίως σε εμπορικές επιχειρήσεις, ενώ τα λειτουργικά συστήματα που βασίζονται στο UNIX είναι πιο δημοφιλή στους ακαδημαϊκούς επαγγελματίες, επειδή είναι δωρεάν και ανοιχτού κώδικα (σε αντίθεση με τα Windows, τα οποία είναι πολύ δαπανηρά).
Τι είναι ο πυρήνας;
Ο πυρήνας είναι το κύριο μέρος ενός λειτουργικού συστήματος υπολογιστή. Είναι η πραγματική γέφυρα μεταξύ του υλικού και του λογισμικού εφαρμογής. Ο πυρήνας είναι συνήθως υπεύθυνος για τη διαχείριση των πόρων του συστήματος, συμπεριλαμβανομένης της επικοινωνίας υλικού και λογισμικού. Παρέχει ένα στρώμα αφαίρεσης πολύ χαμηλού επιπέδου μεταξύ επεξεργαστών και συσκευών εισόδου/εξόδου. Η επικοινωνία μεταξύ διεργασιών και οι κλήσεις συστήματος είναι οι κύριοι μηχανισμοί με τους οποίους αυτές οι ευκολίες χαμηλού επιπέδου προσφέρονται σε άλλες εφαρμογές (από τον πυρήνα). Οι πυρήνες χωρίζονται σε διαφορετικούς τύπους με βάση τον σχεδιασμό/την υλοποίηση και τον τρόπο με τον οποίο εκτελείται κάθε εργασία του λειτουργικού συστήματος. Όλος ο κώδικας του συστήματος εκτελείται στον ίδιο χώρο διευθύνσεων (για λόγους βελτίωσης της απόδοσης) από τους μονολιθικούς πυρήνες. Ωστόσο, οι περισσότερες υπηρεσίες εκτελούνται στο χώρο των χρηστών από τους μικροπυρήνες (η συντηρησιμότητα και η σπονδυλωτότητα μπορούν να αυξηθούν με αυτήν την προσέγγιση). Υπάρχουν πολλές άλλες προσεγγίσεις μεταξύ αυτών των δύο άκρων.
Ποια είναι η διαφορά μεταξύ πυρήνα και λειτουργικού συστήματος;
Ο πυρήνας είναι ο πυρήνας (ή το χαμηλότερο επίπεδο) του λειτουργικού συστήματος. Όλα τα άλλα μέρη που απαρτίζουν το λειτουργικό σύστημα (γραφική διεπαφή χρήστη, διαχείριση αρχείων, κέλυφος κ.λπ.) βασίζονται στον πυρήνα. Ο πυρήνας είναι υπεύθυνος για την επικοινωνία με το υλικό και είναι στην πραγματικότητα το μέρος του λειτουργικού συστήματος που συνομιλεί απευθείας με το υλικό. Πολλές ρουτίνες με δυνατότητα κλήσης που μπορούν να χρησιμοποιηθούν για πρόσβαση σε αρχεία, εμφάνιση γραφικών, λήψη εισόδων πληκτρολογίου/ποντικιού παρέχονται από τον πυρήνα για χρήση από άλλο λογισμικό.