Διαφήμιση

Τι είναι ο πυρήνας – κέρνελ – kernel και όλα όσα τον αφορούν

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

    • Τι είναι ο πυρήνας – κέρνελ – kernel και όλα όσα τον αφορούν

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

      Όταν μιλάμε για τεχνολογικά νέες συσκευές (κινητά, τάμπλετς, υπολογιστές), ο kernel (πυρήνας) δεν είναι και τόσο διαφορετικός… αν και δεν σας συνιστώ να τον φάτε.

      Σκεφτείτε το ως pop corn.

      Το πιο πιθανό να σπάσετε κάποιο δόντι αν δεν το ψήσετε ! Μπορείτε να ξεκλειδώσετε τη λιχουδιά αν βάλετε τη σωστή δόση λαδιού και θερμοκρασίας.

      Στα Android, ο κέρνελ δεν είναι διαφορετικός.

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


      Τι κάνει ο Κέρνελ

      Οι android συσκευές χρησιμοποιούν τον κέρνελ του Linux, αλλά δεν είναι ακριβώς ο ίδιος πυρήνας που χρησιμοποιούν άλλα λειτουργικά συστήματα που βασίζονται σε Linux.

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

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

      Drivers γραμμένοι να συνεργαστούν με Lollipop kernel σε μία συσκευή, δεν σημαίνει κατ`ανάγκη πως θα δουλέψουν και σε Marshmallow kernel. Και αυτό είναι σημαντικό, επειδή ο έλεγχος του υλικού είναι μία από τις κύριες λειτουργίες που κάνει ένας kernel.

      Είναι ένας τεράστιος (πηγαίος) κώδικας με τόσες επιλογές όταν κτίζεται που δεν μπορείτε καν να το φανταστείτε, αλλά στο τέλος είναι απλά η γέφυρα μεταξύ του υλικού και του λογισμικού (hardware & software).




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

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

      Το λογισμικό γνωρίζει ότι όταν το συγκεκριμένο σημείο αγγιχτεί, η οθόνη πρέπει να περιστρέφεται. Το digitizer λαμβάνει την εντολή από τον πυρήνα να εξετάσει για αγγίγματα, βοηθάει να αναγνωριστεί που αγγίξατε και λέει στο σύστημα ότι αγγίξατε εκεί.

      Με τη σειρά του, όταν το σύστημα λάβει το μήνυμα αγγίγματος από ένα συγκεκριμένο σημείο του κέρνελ (μέσω driver), ξέρει ακριβώς τι να κάνει στην οθόνη μας.Το τηλέφωνο μας γνωρίζει πότε να κάνει τι, όταν το υλικό και λογισμικό αλληλοεπικοινωνούν με τον πυρήνα σε μία αμφίδρομη σχέση. Είσοδος από τη μια πλευρά, αποστέλλεται ως έξοδος από την άλλη, είτε αυτό ονομάζεται παιχνίδι, είτε συνδέεστε με το Bluetooth του αυτοκινήτου σας.


      Ακούγεται πολύπλοκο, έτσι?

      Την ίδια ώρα είναι και τόσο απλό. Μία απλή λογική υπολογιστή που για κάθε περίπτωση υπάρχει μια συγκεκριμένη εντολή που παράγεται.




      Τι είναι η έκδοση Κέρνελ

      Έκδοση (version) κέρνελ, λέγεται η έκδοση του Linux Kernel που το Android βασίζεται. Είναι ο πυρήνας του λειτουργικού συστήματος το οποίο χειρίζεται τα αιτήματα προς και από το υλικό, τη μνήμη, τη διαχείριση της διαδικασίας και όλα τα χαμηλού επιπέδου πράγματα που χρειάζεται ένα Android να είναι σε θέση να τρέξει.

      Ο πυρήνας δεν ενημερώνεται αρκετά συχνά,επειδή υπάρχουν πολλά πράγματα που μπορούν να παν στραβά (όλα μου παν ανάποδα, όλα μου παν, όλα μου παν, όλα μου παν ανάποδα, όλα μου παν… ΑΜΑΝ). Μία αναβάθμιση του πυρήνα σημαίνει πως ΤΟΥΛΑΧΙΣΤΟ διασφαλίζουμε πως όλα όσα λειτουργούσαν στην παλιά έκδοση, λειτουργούν και στην καινούρια.


      Παρακάτω ακολουθούν οι εκδόσεις των πυρήνων από την αρχική τους κατασκευή ως στην πιο πρόσφατη τους έκδοση:




      Νέοι και Βελτιωμένοι πυρήνες

      Εδώ είναι που έρχεται η κοινότητα του Android. Υπάρχουν προγραμματιστές που συνεισφέρουν κάνοντας πυρήνες (custom) για μια συγκεκριμένη συσκευή. Το κάνουν μόνο και μόνο επειδή τους αρέσει να συνεισφέρουν το έργο τους στην κοινότητα.

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

      Σκεφτείτε για παράδειγμα να πείτε στον κέρνελ σας να δουλέψει σε πιο χαμηλή συχνότητα (under clocking), πράγμα το οποίο προκαλεί σοβαρό lag. Από την άλλη ένα τηλέφωνο με custom kernel μπορεί να το κάνει με ευκολία και να σας δείξει δυνατότητες της συσκευή σας που δεν γνωρίζατε.

      Από την άλλη μπορείτε να κάνετε το κινητό σας Overclock. Αυτό είναι όταν ο πυρήνας επιτρέπει στον επεξεργαστή να λειτουργεί στο μέγιστο. Κάνοντας κάτι τέτοιο, εξάγονται τεράστιες ποσότητες ενέργειας, υψηλότερες από τη συνηθισμένη χρήση του κινητού σας.

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

      Υπάρχουν πάντα και μερικοί (λίγοι αλλά σοβαροί) κίνδυνοι όταν εγκαθιστάτε νέο πυρήνα. Για παράδειγμα ποτέ με λίγη μπαταρία γιατί υπάρχει περίπτωση να διακοπεί η διαδικασία και το τηλέφωνο σας να μη μπορεί να ενεργοποιηθεί.


      Πως θα βρούμε τον σωστό πυρήνα

      Το XDA Developer Φόρουμ είναι το καλύτερο μέρος για να ψάξει κάποιος για custom kernel και συγκεκριμένα το τμήμα για τη συσκευή του. Είναι πολύ σημαντικό να επιλέξουμε έναν κέρνελ, ο οποίος όχι μόνο να είναι συμβατός με την έκδοση Android που φοράμε στη συσκευή μας, αλλά και με την ίδια τη συσκευή που κατέχουμε.

      Μπορείτε επίσης να βρείτε διάφορους custom kernels της συσκευής σας στο miui.com.

      Αν δεν είστε σίγουρος αν ο πυρήνας ταιριάζει με τη συσκευή σας, ρωτήστε στο φόρουμ ή στο συγκεκριμένο τόπικ του πυρήνα. Αν φλασάρετε τον λάθος κέρνελ μπορείτε να μπείτε από soft-brick μέχρι πολύ hard-brick.


      Τι οφέλη μπορεί να αποκτήσετε από αντικατάσταση πυρήνα

      Χρησιμοποιώντας custom kernel με περισσότερες παραμέτρους ακούγεται καλό, αλλά τι ακριβώς σημαίνει αυτό για εσάς?

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

      Υπάρχουν επίσης προγραμματιστές που αλλάζουν drivers με άλλους (για διάφορους λόγους). Υπάρχουν που αναπτύσσουν τα δικά τους patches για τα προβλήματα που εντοπίζουν.

      Άποψη μου είναι πως αν θέλεις να μπεις τόσο βαθιά τότε καλό είναι να το μελετήσεις και μόνος σου λίγο περισσότερο.

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

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


      Επιλογές προσαρμογής ενός πυρήνα

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

      Μερικές μεταβλητές που μπορούμε να αλλάξουμε:
      • Η ελάχιστη και η μέγιστη συχνότητα που η CPU μπορεί να αναβαθμιστεί ή να υποβαθμιστεί
      • Η συχνότητα CPU που θα πρέπει να εκκινήσει κάθε φορά που ανιχνεύει είσοδο αφής (για να εξασφαλίσει πιο ομαλή εκκίνηση)
      • Πόσο απασχολημένο το CPU θα πρέπει να είναι πριν επιτραπεί στους έξτρα πυρήνες να εμπλακούν (που κανονικά έχουν απενεργοποιηθεί για εξοικονόμηση μπαταρίας)
      • Ο CPU governor (Το "πρόγραμμα" το οποίο είναι υπεύθυνο να επιλέξει την "κατάλληλη" συχνότητα λειτουργίας του επεξεργαστή κάθε στιγμή ονομάζεται Governor)
      • Ενεργοποίηση του Fast Charge (για θύρες 3.0)
      • Αλλαγή της τάσης του CPU κατά τη διάρκεια όλων των πιθανών συχνοτήτων
      • Η μέγιστη συχνότητα της GPU
      • Ρύθμιση του Ι/Ο (inpute/outpout) που χρησιμοποιείται



      Εφαρμογές που βοηθούν στη διαχείριση του Πυρήνα

      Ο προσαρμοσμένος πυρήνας μπορεί να κάνει τα μαγικά του μετά την εγκατάσταση του. Ωστόσο, θα πρέπει να ενημερωθεί για το τι έχει να κάνει. Μπορείτε να ελέγχετε χειροκίνητα σε συγκεκριμένες Ρομς όπως αυτές του MIUI. Όλοι οι υπόλοιποι χρειάζονται εφαρμογές 3ων , όπως kernel adiutor, synapse κ.λ.π.

      Αυτές οι εφαρμογές σας επιτρέπουν να προσαρμόσετε τις ρυθμίσεις όπως:
      PU (Frequency, Governor)
      CPU Voltage
      CPU Hotplug
      GPU (Frequency, Governor)
      Screen (Color Calibration [RGB])
      Wake controls (DT2W, S2W)
      Sound (Faux Sound, TA-Mod)
      Battery (Fast Charge)
      I/O Scheduler
      Kernel Samepage Merging
      Low Memory Killer (Minfree settings)
      Virtual Memory
      Build prop Editor
      Saving Profiles



      Τελευταία λόγια

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

      Φυσικά δεν είναι αναγκαστικό να φλασάρετε κάποιον πυρήνα στο κινητό σας (ούτε καν το συνιστώ), εκτός και αν το χρειάζεστε για κάποιο συγκεκριμένο λόγο. Και οι συγκεκριμένοι πυρήνες, που χρησιμοποιεί η Xiaomi είναι από τους καλύτερους και όλοι έχουν να λένε γι`αυτούς.

      Το άρθρο είναι μεταφρασμένο (όσο γινόταν) από το επίσημο miui.com και προστέθηκαν σε αυτό κάποιες μικρές προσθήκες για καλύτερη κατανόηση του κειμένου. Ευχαριστώ για τον χρόνο σας και ελπίζω να καταλάβατε 1-2-3 πράγματα για το τι κάνει ο ...πυρήνας. :thumbsup:
    • Άψογο κείμενο και παρουσίαση ... :thumbsup:

      Μπράβο σου βρε Μιχάλη.... :D
      Γίνε και εσύ εύκολα V.I.P μέλος !



      ή επέλεξε να κάνεις μία δωρεά
      Δωρεά προς την κοινότητα (Donation)
    • Διαφήμιση
    • ωραία παρουσίαση ευχαριστούμε !!!!




      Ουδείς αχαριστότερος του ευεργετηθέντος!!!!!!!!!!
    • Ευχαριστώ παιδιά !!!

      Όντως ήταν δύσκολο γιατί είναι τεράστιο κείμενο και με βαθμό δυσκολίας αλλά... τώρα είναι εδώ
    • Διαφήμιση
    • Πολύ καλή δουλειά. Μπράβο.
      Xiaomi Mi 9 (Cepheus)- MiUi 11 by Xiaomi-Miui.gr 12.5.6 Stable - TWRP : 3.3.1_25/08/2019 Android 10


      :) Γίνε και εσύ VIP μέλος και βοήθα αυτούς που σε βοηθάνε. :)

      (bell)
      Μπορεί να κάνω λάθος - δες τι λένε και οι άλλοι
      Amazfit Custom WatchFaces
    • Διαφήμιση
    • πολύ απλή σαφής και εμπεριστατωμένη η παρουσίαση
      Μπράβο και ευχαριστούμε


      Ο έξυπνος παραδέχεται το λάθος του, ο πονηρός δικαιολογείται, ο βλάκας επιμένει!
      Οι σοφοί δεν γνωρίζουν τίποτα, οι έξυπνοι αναρωτιούνται για όλα, οι ηλίθιοι ξέρουν τα πάντα!
      Κάποιοι άνθρωποι βλέπουν φαινόμενα γύρω τους και αναρωτιούνται, γιατί; Κάποιοι άλλοι φαντάζονται ανύπαρκτα πράγματα και αναρωτιούνται, γιατί όχι;
      :razz: :razz: :D :D :razz: :razz: