Το Raspberry Pi έχει περιορισμένη ποσότητα μνήμης RAM και δεν μπορεί να προστεθεί περισσότερη, καθώς είναι ένας υπολογιστής με μία πλακέτα. Το Pi 3 έχει μόνο 1 GB μνήμης RAM. Το Pi 4, ανάλογα με το μοντέλο έχει έως και 8 GB RAM. Οι εφαρμογές λογισμικού κατά καιρούς απαιτούν περισσότερη μνήμη. Τις περισσότερες φορές αυτή η απαίτηση μνήμης είναι μια σύντομη αιχμή. Όταν συμβεί αυτό, το Raspberry Pi είτε θα «παγώσει» ή θα «κολλήσει» λόγω της περιορισμένης μνήμης. Η συντριβή μπορεί επίσης να οδηγήσει σε φθορά της κάρτας SD, με αποτέλεσμα την απώλεια δεδομένων.
Για να αποφευχθεί η πιθανότητα συντριβής, η εικονική μνήμη με τη μορφή ανταλλαγής μπορεί να ρυθμιστεί στο Pi. Η σωστή ποσότητα πρέπει να προστεθεί στη σωστή συσκευή για να αξιοποιήσετε στο έπακρο. Η όλη διαδικασία εξηγείται συστηματικά με οδηγίες για διάφορα λειτουργικά συστήματα.
Κατανόηση του τρόπου λειτουργίας της διαδικασίας μνήμης
Η RAM είναι η φυσική μνήμη. Στο Pi 4, βρίσκεται δίπλα στον επεξεργαστή. Στο Pi 3, η μνήμη RAM είναι τοποθετημένη στην κάτω πλευρά της πλακέτας τυπωμένου κυκλώματος. Σε αντίθεση με τις κανονικές μητρικές, η μνήμη RAM σε ένα Raspberry Pi είναι κολλημένη στην πλακέτα, γεγονός που περιορίζει τη δυνατότητα αύξησης της χωρητικότητάς της.
Όταν εκτελείται μια εφαρμογή λογισμικού, χρησιμοποιεί ένα τμήμα της μνήμης RAM για τη λειτουργία της. Σκεφτείτε ένα πρόγραμμα περιήγησης ως παράδειγμα. Όταν μια ιστοσελίδα φορτώνεται σε μια καρτέλα, αποθηκεύει τα δεδομένα της σελίδας στη μνήμη RAM μαζί με τη μνήμη που απαιτείται για την εκτέλεση του προγράμματος περιήγησης. Όταν φορτωθούν περισσότερες καρτέλες, η μνήμη RAM γεμίζει εξίσου. Χωρίς εικονική μνήμη, κάποια στιγμή η μνήμη RAM θα εξαντληθεί και οι νέες καρτέλες δεν μπορούν να φορτωθούν καθόλου. Η περιήγηση στις υπάρχουσες καρτέλες θα επιβραδυνθεί σημαντικά καθώς δεν υπάρχει ελεύθερη μνήμη για βασικές λειτουργίες. Σε αυτό το σημείο, το Pi θα σταματήσει να ανταποκρίνεται και ο μόνος τρόπος για να το επαναφέρετε είναι μέσω του κύκλου ισχύος (απενεργοποίηση και ενεργοποίηση).
Αυτός ο τυχαίος τερματισμός μπορεί να προκαλέσει σοβαρά προβλήματα, ειδικά όταν το λειτουργικό σύστημα βρίσκεται στην κάρτα SD. Η κάρτα μπορεί να κλειδωθεί σε κατάσταση «μόνο για ανάγνωση» ή στη χειρότερη περίπτωση να καταστραφεί εντελώς. Αυτό συμβαίνει όταν συμβαίνει συνολική απώλεια δεδομένων.
Ο αντίκτυπος της συνθήκης "εκτός μνήμης (OOM)" μπορεί να ελαχιστοποιηθεί ρυθμίζοντας την εναλλαγή ώστε να χρησιμοποιείται ως εικονική μνήμη. Το Swap μπορεί να οριστεί με τη μορφή αρχείου ή διαμερίσματος στο δίσκο και λειτουργεί ως επέκταση στη μνήμη RAM. Όταν η διαθέσιμη μνήμη RAM εξαντληθεί, τα δεδομένα που χρησιμοποιούνται σπάνια σε αυτήν μετακινούνται για εναλλαγή σε μια διαδικασία που ονομάζεται εναλλαγή. Στην περίπτωση του παραδείγματος του προγράμματος περιήγησης, αυτά θα ήταν δεδομένα από μια φορτωμένη καρτέλα που χρησιμοποιείται λιγότερο. Όταν η καρτέλα ενεργοποιηθεί ξανά, αυτά τα δεδομένα θα μετακινηθούν πίσω στη μνήμη RAM για να εμφανιστεί η ιστοσελίδα.
Η εναλλαγή θα φέρει σταθερότητα για λειτουργίες έντασης μνήμης. Εάν υπάρχει μια σύντομη απότομη αύξηση στην κατανάλωση μνήμης, η εναλλαγή θα βοηθήσει στην απορρόφηση της αιχμής και στη διατήρηση της λειτουργίας του συστήματος αντί να καταλήξει σε πλήρη πάγωμα.
Επιλογή της σωστής συσκευής για ρύθμιση Swap
Η ανταλλαγή είναι απαραίτητη, αλλά η τοποθεσία και το μέγεθος της ανταλλαγής που πρόκειται να διαμορφωθεί είναι επίσης εξίσου σημαντικά. Στην ιδανική περίπτωση, η ανταλλαγή πρέπει να γίνεται σε μια γρήγορη συσκευή. Δίπλα στις κρυφές μνήμες στον επεξεργαστή, η μνήμη RAM είναι η δεύτερη ταχύτερη μνήμη. Το DDR4 στο Pi έχει εύρος ζώνης 4,4 GBps (gigabyte ανά δευτερόλεπτο). Η ανταλλαγή πρέπει να γίνεται σε μία από τις άλλες διαθέσιμες συσκευές αποθήκευσης.
Εάν χρησιμοποιείται μια κάρτα SD για το λειτουργικό σύστημα, μια μικρή περιοχή εναλλαγής έχει διαμορφωθεί σε αυτήν από προεπιλογή. Μπορείτε να ελέγξετε το μέγεθός του χρησιμοποιώντας την εντολή:
ελεύθερο -μ
99 MB δεν είναι σημαντικό ποσό ανταλλαγής. Θα γεμίσει αρκετά γρήγορα. Οι κάρτες SD έχουν περιορισμένους κύκλους εγγραφής, καθώς χρησιμοποιούν μνήμη flash και η υπερβολική εναλλαγή μπορεί να μειώσει τη διάρκεια ζωής τους. Επίσης, έχουν χαμηλό εύρος ζώνης περίπου 50MBps με πολύ μικρότερη απόδοση ανάγνωσης/εγγραφής αρχείων 4k που είναι απαραίτητη για την εναλλαγή μικρότερων αρχείων.
Οι σκληροί δίσκοι έχουν περιστρεφόμενους δίσκους μέσα τους. Αν και αξιόπιστα, έχουν υψηλότερους χρόνους αναζήτησης και δεν είναι χρήσιμα για ανταλλαγή.
Ενα φθηνό SSD για το λειτουργικό σύστημα είναι μια αρκετά καλύτερη επιλογή. Οι αλγόριθμοι ισοπέδωσης φθοράς αναδιοργανώνουν τα δεδομένα από φθαρμένα κελιά flash και παρατείνουν τη διάρκεια ζωής τους. Σε ένα Pi, το εύρος ζώνης SSD είναι γύρω 150 MBps και έχει πολύ καλύτερη απόδοση αρχείων 4k σε σύγκριση με τις κάρτες SD. Η ταχύτητα αναζήτησης είναι επίσης καλή. Αλλά η χρήση του ίδιου δίσκου για swap και συμφόρηση λειτουργικού συστήματος ταυτόχρονη λειτουργία. Δεδομένου ότι η εναλλαγή κάνει εντατικές εγγραφές, ο δίσκος μπορεί να φτάσει το TBW (συνολικά byte που γράφτηκαν) νωρίτερα από το αναμενόμενο, ειδικά σε SSD χαμηλής χωρητικότητας.
Στην ιδανική περίπτωση, το Pi χρειάζεται το λειτουργικό σύστημα και το swap του να είναι σε διαφορετικούς δίσκους, έναν δίσκο λειτουργικού συστήματος και έναν αποκλειστικό SSD για εναλλαγή. Αυτό θα έδινε μακροζωία για το δίσκο του λειτουργικού συστήματος και ταχύτητα για την ανταλλαγή. Εξάλλου, το εύρος ζώνης θα είναι διαθέσιμο και για τα δύο ταυτόχρονα αφού πρόκειται για διαφορετικές συσκευές.
Πώς να ρυθμίσετε το Swap σε λειτουργικά συστήματα Raspberry Pi
Ο καλύτερος τρόπος ρύθμισης των παραμέτρων εξαρτάται από το λειτουργικό σύστημα που χρησιμοποιεί η συσκευή σας.
Επιτραπέζιο λειτουργικό σύστημα (Raspberry Pi OS, Ubuntu Desktop και Ubuntu Mate)
Συνδέστε το SSD που θα χρησιμοποιηθεί ως εναλλαγή χρησιμοποιώντας α Προσαρμογέας USB 3.0 σε SATA III και ξεκινήστε το Pi. Η διαδικασία που παρουσιάζεται εδώ εφαρμόζεται στο Raspberry Pi OS και θα πρέπει να λειτουργεί εξίσου καλά και στα άλλα λειτουργικά συστήματα. Σε περίπτωση Το Raspberry Pi OS σας πρέπει να ενημερωθεί, Κάνε το.
Εγκαταστήστε το απαραίτητο εργαλείο για τη διαχείριση δίσκων με χρήση GUI
sudo apt εγκαθιστώ gnome-disk-utility
Ανοιξε Δίσκοι από Έναρξη > Αξεσουάρ.
Μπορείτε επίσης να χρησιμοποιήσετε αυτήν την εντολή στο τερματικό για να ανοίξετε το εργαλείο:
gnome-disks
Διαμορφώστε το SSD από το μενού.
Δημιουργήστε ένα διαμέρισμα χρησιμοποιώντας το στοιχείο ελέγχου με + σύμβολο
Ολόκληρο το διαμέρισμα μπορεί να παραχωρηθεί για ανταλλαγή, αλλά το πολύ διπλάσιο της RAM θα ήταν αρκετό.
Ονομάστε τον τόμο και επιλέξτε Αλλα για το Τύπος διαμερίσματος.
Επιλέγω Διαμέρισμα ανταλλαγής Linux και δημιουργήστε το.
Μπορείτε να το τοποθετήσετε αμέσως κάνοντας κλικ στο κουμπί ελέγχου με το Παίζω σύμβολο. Θα τοποθετηθεί κατά τη διάρκεια αυτής της περιόδου λειτουργίας, αλλά δεν θα κολλήσει στις επανεκκινήσεις. Πρέπει να ρυθμιστεί ώστε να τοποθετείται αυτόματα. Κάντε κλικ στο Μηχανισμός έλεγχος και επιλογή Επεξεργασία επιλογών τοποθέτησης.
Μεταβάλλω Προεπιλογές συνεδρίας χρήστη και κάντε κλικ Εντάξει. Το Authenticate and Disks θα προσθέσουν μια καταχώρηση στο /etc/fstab για να το προσαρτήσετε σε κάθε εκκίνηση.
Επανεκκινήστε το Pi, ανοίξτε το τερματικό και ελέγξτε το νέο μέγεθος ανταλλαγής:
ελεύθερο -μ
Πρόσθετη ρύθμιση μόνο για το Raspberry Pi OS
Τώρα που η εναλλαγή έχει ρυθμιστεί σε έναν SSD, η παλιά εναλλαγή δεν χρειάζεται. Μπορείτε να το απενεργοποιήσετε με επεξεργασία:
sudo nano /etc/dphys-swapfile
Ορίστε αυτήν την παράμετρο στο μηδέν:
CONF_SWAPSIZE=0
Λειτουργικό σύστημα διακομιστή (Ubuntu, Raspberry Pi OS)
Αυτή η διαδικασία γίνεται μέσω CLI. Για ευκολία, μπορείτε να προετοιμάσετε το διαμέρισμα ανταλλαγής χρησιμοποιώντας το εργαλείο Δίσκοι σε άλλον υπολογιστή, στη συνέχεια να συνδέσετε το SSD στο Pi και να εκκινήσετε τον διακομιστή. Συνδεθείτε στο Pi χρησιμοποιώντας SSH να προχωρήσει.
Βρείτε το διαμέρισμα ανταλλαγής:
lsblk
sda1 είναι. Βρείτε το UUID αυτής της συσκευής: sda1
αμβλύ
Αντιγράψτε το UUID (μοναδικό για εσάς) και επεξεργαστείτε το αρχείο fstab για να το προσαρτήσετε αυτόματα σε κάθε εκκίνηση:
sudo nano /etc/fstab
Προσθέστε αυτήν τη γραμμή:
UUID=”ΤΟ UUID ΣΑΣ” κανένας δεν ανταλλάσσει sw 0 0
Αποθηκεύστε, επανεκκινήστε και ελέγξτε το μέγεθος εναλλαγής:
ελεύθερο -μ
Βελτιστοποίηση της χρήσης εικονικής μνήμης για λειτουργία απόδειξης σύγκρουσης
Η διαμορφωμένη ανταλλαγή πρέπει να χρησιμοποιηθεί σωστά. Αυτό γίνεται με τη ρύθμιση μιας παραμέτρου που ονομάζεται swappiness. Για να βρείτε την τρέχουσα τιμή:
cat proc/sys/vm/swappiness
Ορισμένη στο 60 από προεπιλογή, η τιμή καθορίζει πόσο επιθετικά ο πυρήνας ανταλλάσσει περιεχόμενο από τη μνήμη RAM. Μπορεί να ρυθμιστεί μεταξύ 1 και 100. Η κατάλληλη τιμή εξαρτάται από τις συγκεκριμένες ανάγκες σας. Εάν βλέπετε ότι το Pi εξαντλείται συνεχώς από μνήμη RAM, ορίστε το στο 100. Εάν όχι, ορίστε το σε χαμηλότερη τιμή. Επεξεργαστείτε αυτό το αρχείο για να το ορίσετε:
sudo nano /etc/sysctl.conf
Προσθέστε αυτή τη γραμμή στο τέλος:
vm.swappiness=100
Προειδοποιήσεις σχετικά με την επιβάρυνση επεξεργασίας και το SSD TBW
Η λειτουργία εναλλαγής απαιτεί επεξεργαστική ισχύ, συνήθως ένας από τους τέσσερις πυρήνες του Pi αφιερώνεται στην εναλλαγή όταν η RAM είναι απολύτως γεμάτη.
Η γενική συμβουλή που κυκλοφορεί είναι να μην χρησιμοποιείτε SSD για εναλλαγή, ισχύει για την περίπτωση όπου το λειτουργικό σύστημα (μαζί με τα δεδομένα χρήστη) και το swap βρίσκονται στον ίδιο δίσκο. Δεν ισχύει σε αυτήν την περίπτωση όταν η ανταλλαγή έχει ρυθμιστεί όπως εξηγείται εδώ. Παρόλο που ο SSD που χρησιμοποιείται τελικά θα περάσει το TBW του και θα αποτύχει, μπορεί απλώς να αντικατασταθεί με ένα νέο καθώς δεν υπάρχουν σημαντικά δεδομένα αποθηκευμένα σε αυτόν με αυτήν τη διαδικασία.
Swap Advantage για το Pi σας
Η σωστή διαμόρφωση της εναλλαγής είναι ένας πολύ καλός τρόπος για να κάνετε το Pi απόδειξη σύγκρουσης. Η σταθερότητα οφείλεται στο γεγονός ότι η συνολική διαθέσιμη μνήμη είναι πιο σημαντικός παράγοντας από την ταχύτητα της μνήμης κατά τη διάρκεια του OOM. Το Pi δεν θα παγώσει και μόλις πέσει η χρήση της ακίδας, θα ανταποκριθεί ξανά πιο γρήγορα.
Το Raspberry Pi είναι ένας μικροσκοπικός υπολογιστής με μεγάλη ευελιξία. Μπορεί να χρησιμοποιηθεί για διαφορετικούς σκοπούς με διάφορα ελαφριά λειτουργικά συστήματα. Το Pi 4 χρησιμεύει ως αντικατάσταση για κανονικούς υπολογιστές και επίσης μια ενσωματωμένη συσκευή για βιομηχανική χρήση που μπορεί να λειτουργεί 24x7.