Τι είναι οι Custom / Cooked ROMs για Android, και ποιόν πυρήνα να επιλέξετε;

Αποφασίσατε να εγκαταστήσετε μια “custom ROM” στο βασισμένο σε Android smartphone σας, και όταν φτάσατε στην επιλογή του kernel… χαθήκατε ανάμεσα στις πιθανές επιλογές; Ναι, όντως “ονόματα” όπως HAVS και SVS αρχικά φαντάζουν περίεργα – ενώ κάποιοι ίσως να μην έχουν ακούσει ποτέ τι εστί “custom ROM”. Ας βγάλουμε άκρη μαζί…

Custom ROM

Κάθε smartphone με Android εμπεριέχει, για δες, “μια έκδοση του λειτουργικού συστήματος Android”. Η Google δημιουργεί μια “γενική” έκδοση του Android, όπως η Microsoft “δημιουργεί μια γενική έκδοση των Windows” και, από εκεί και έπειτα, οι δημιουργοί συσκευών την παίρνουν και “την πακετάρουν” μαζί με τους κατάλληλους drivers, δηλαδή με το λογισμικό που απαιτείται “για να αναγνωρίζεται το hardware της συσκευής από το Android και λειτουργεί σωστά με αυτό”. “Drivers” όπως, π.χ., το λογισμικό που αναλαμβάνει να ελέγχει την κάμερα ή το σύστημα GPS της συσκευής. Και αφού κάθε συσκευή μπορεί να έχει διαφορετική κάμερα, διαφορετικό GPS, διαφορετική οθόνη, ο ίδιος ο κατασκευαστής της συσκευής “πειράζει” το Android ώστε να λειτουργεί σωστά με αυτήν.

Συχνά, όμως, προσθέτει και δικό του λογισμικό που δεν έχει να κάνει με drivers και που, απλά, θέλει “να περάσει” στους αγοραστές της συσκευής του. Θετικό παράδειγμα, η “πρόσοψη” που η HTC “κολλάει” μπροστά από το Android για να είναι ευκολότερη η χρήση του. Αρνητικό παράδειγμα, μικροεφαρμογές σε συσκευές που ουσιαστικά αποτελούν διαφήμιση για τις υπηρεσίες τους ή που ενώ δεν παρέχουν και πολλά, αναλώνουν πολλούς πόρους με αποτέλεσμα η συσκευή “να πηγαίνει πιο αργά” και “να ταλειώνει η μπαταρία της νωρίτερα”. Και εδώ έρχονται οι Custom ή “cooked” ROMs.

Λόγω του ρυθμού με τον οποίο εξελίσσεται η τεχνολογία, οι περισσότεροι κατασκευαστές διαθέτουν κάποιες συσκευές και μετά… “πάνε για άλλα”, με αποτέλεσμα εκείνες να παραμένουν στα χέρια των καταναλωτών ακριβώς όπως τις αγόρασαν. Παράλληλα, όμως, το Android εξελίσσεται. Κάποιοι κατασκευαστές φροντίζουν να παρέχουν updates, “νέες εκδοχές του” για τις κυρίαρχες συσκευές τους, για ένα κάποιο άλφα διάστημα. Οι περισσότεροι απλά το αγνοούν.

Ανεξάρτητοι developers, λοιπόν, παίρνουν τις νεότερες εκδοχές του Android και “τις πακετάρουν” για να λειτουργούν σε συσκευές για τις οποίες δεν έχουν κυκλοφορήσει επίσημα. Παράλληλα, “πειράζουν” διάφορες παραμέτρους, βελτιώνοντας π.χ. την απόκριση της συσκευής, τις απαιτήσεις της σε τροφοδοσία – και, άρα, “το πόσο κρατά η μπαταρία” κ.λπ. Αυτό δεν το καταφέρνουν με… μαγικά και μαντζούνια, αλλά με απλή… επιμονή και αρκετά καλές γνώσεις του πώς λειτουργεί το Android.

Οι Custom ή Cooked ROMs που παράγουν, λοιπόν, συνήθως παρέχουν στη συσκευή καλύτερη αυτονομία, υψηλότερες ταχύτητες λειτουργίας αλλά και πρόσθετες δυνατότητες που αναβαθμίζουν (ή υποβαθμίζουν, ανάλογα με τις… απόψεις) το πώς αυτή λειτουργεί. Συνήθως, ο δημιουργός μιας Cooked ROM “δανείζεται” μια έκδοση του Android είτε από την αρχική “open source” εκδοχή του που παρέχει η ίδια η Google και στους κατασκευαστές συσκευών, είτε από μια άλλη, νεότερη συσκευή. Ελέγχει αν οι drivers της είναι “συμβατοί” – δηλαδή, “αν θα λειτουργεί η κάμερα, το GPS” κ.λπ. και αν όχι, τους αντικαθιστά με άλλες εκδόσεις που να λειτουργούν. Αυτές μπορεί να είναι από μια άλλη, παρόμοια συσκευή (π.χ. στο Desire της HTC μπορεί κανείς να χρησιμοποιήσει drivers από το λιγάκι νεότερο Desire Z), ή και από την αρχική (αν δεν υπάρχει κανένας συμβατός driver σε καμία άλλη συσκευή).

Το αποτέλεσμα τελικά θυμίζει, από άποψη “υποδομής”, το… τέρας του Frankenstein, με διαφορετικά “κομμάτια” να ενώνονται σε ένα λειτουργικό σύνολο. Όταν, όμως, ο developer έχει κάνει καλά τη δουλειά του, ο τελικός χρήστης δεν αντιλαμβάνεται το… “έκτρωμα” που κρύβεται πίσω από την οθόνη αφής του!

Page 1 of 3123
...γνωστός και ως Οδυσσέας Κουράφαλος, αρχικός υπεύθυνος για το unregistered. Συντάκτης, γραφίστας, "μαλτιμηντιάς", φανατικός της science fiction και των αστείων γατιών στου ιντερνέτ. "Δηλώνω graphics whore" (παίζω Ms. Pac-Man στο MAME με 2xSAL και το πρώτο Max Payne με FXAA antialiasing). Load "unreg*",8,1.