Δημοσιεύτηκε: 18 Μάιος 2010, 12:53
από the_eye
Εικόνα

Μην πανικοβάλλεστε!
H ram σου είναι μια χαρά!


Τι συμβαίνει;
Το Linux δανείζει την αχρησιμοποίητη μνήμη για προσωρινή αποθήκευση του δίσκου (Disk caching). Αυτό το κάνει να μοιάζει ότι έχετε χαμηλή μνήμη, αλλά δεν είναι! Όλα είναι καλά!

Γιατί το κάνει αυτό;
Η προσωρινή αποθήκευση δίσκου (Disk caching) καθιστά το σύστημα πολύ πιο γρήγορα! Δεν υπάρχουν αρνητικές πτυχές, εκτός από την σύγχυση των νέων χρηστών. Δεν απομακρύνει την χρήση μνήμης από τις εφαρμογές με οποιονδήποτε τρόπο, ποτέ!

Τι γίνεται αν θέλετε να τρέξετε περισσότερες εφαρμογές;
Εάν οι εφαρμογές σας θέλουν περισσότερη μνήμη, θα πάρουν ένα κομμάτι μνήμης πίσω που η μνήμη cache του δίσκου δανείστηκε. Η cache του δίσκου μπορεί πάντα να δοθεί πίσω στις εφαρμογές αμέσως! Δεν έχετε πρόβλημα με την RAM!

Χρειάζομαι μεγαλύτερο swap;
Όχι, η προσωρινή αποθήκευση του δίσκου (disk caching) δανείζεται μόνο την RAM την οποία προς το παρόν δεν θέλουν οι εφαρμογές. Δεν θα χρησιμοποιήσει το swap. Εάν οι εφαρμογές θέλουν περισσότερη μνήμη, παίρνουν πίσω από τη μνήμη cache του δίσκου. Δεν θα αρχίσει να χρησιμοποιούν ακόμα το swap.

Πώς μπορώ να σταματήσω το Linux να το κάνει αυτό;
Δεν μπορείτε να απενεργοποιήσετε την προσωρινή αποθήκευση του δίσκου. Ο μόνος λόγος που κάποιος θα θέλει να απενεργοποιήσει την προσωρινή αποθήκευση του δίσκου είναι επειδή νομίζει ότι παίρνει μνήμη μακριά από τις εφαρμογές του, το οποίο δεν κάνει! Το cache του δίσκου κάνει τις εφαρμογές να φορτώνουν ταχύτερα και να έχουν ομαλότερη λειτουργία, αλλά ΠΟΤΕ ΠΟΤΕ δεν παίρνει μνήμη μακριά από αυτές! Ως εκ τούτου, δεν υπάρχει απολύτως κανένας λόγος να το απενεργοποιήσετε!

Γιατί η εντολή top και free λέει ότι όλη η μνήμη μου χρησιμοποιείται αν δεν είναι έτσι;
Αυτό είναι απλά μια παρεξήγηση των όρων. Τόσο εσείς όσο και το Linux συμφωνείτε ότι η μνήμη που λαμβάνεται από τις εφαρμογές "χρησιμοποιείται", ενώ η μνήμη που δεν χρησιμοποιείται για οτιδήποτε είναι "ελεύθερη".
Εσείς πώς θα καλούσατε την μνήμη που χρησιμοποιείται για κάτι, αλλά ταυτόχρονα είναι διαθέσιμη και για τις εφαρμογές;
Θα την ονομάζετε «ελεύθερη», αλλά το Linux την αποκαλεί «δεσμευμένη».

Την ονομάζετε εσείς Το linux την ονομάζει
Μνήμη που καταλαμβάνεται από τις εφαρμογές δεσμευμένη δεσμευμένη
Μνήμη που είναι διαθέσιμη για τις εφαρμογές, και χρησιμοποιείται για «κάτι» ελεύθερη δεσμευμένη
Μνήμη που δεν χρησιμοποιούνται για τίποτα ελεύθερη ελεύθερη

Αυτό το «κάτι» είναι αυτό που η top και η free λένε «buffers» και «cached». Επειδή η δική σας ορολογία και του Linux διαφέρει, νομίζετε ότι έχετε χαμηλή ram ενώ δεν έχετε.

Πώς μπορώ να δω πόση ελεύθερη ram έχω πραγματικά;
Για να δείτε πόση ram είναι ελεύθερη για να χρησιμοποιήσουν οι εφαρμογές σας, τρέξτε free -m και κοιτάξτε τη γραμμή που λέει "- / + buffers / cache" στη στήλη που λέει "free". Αυτή είναι η απάντησή σας σε megabytes:

free -m
Κώδικας: Επιλογή όλων
             total       used       free     shared    buffers     cached
Mem:          1504       1491         13          0         91        764
-/+ buffers/cache:        635        869 <--Αυτή είναι η μνήμη για τις εφαρμογές
Swap:         2047          6       2041



Αν δεν ξέρετε πώς να διαβάσετε σωστά τους αριθμούς, θα σκεφτείτε ότι η RAM είναι κατά 99% πλήρης, όταν είναι πραγματικά μόνο το 42%.

Πώς μπορώ να επαληθεύσω αυτές τις πληροφορίες;
Δείτε αυτή τη σελίδα για περισσότερες πληροφορίες και πώς μπορείτε να πειραματιστείτε με τη μνήμη cache του δίσκου.
http://www.linuxatemyram.com/play.html

Μετάφραση από εμένα από το αρχικό κείμενο εδώ.
http://www.linuxatemyram.com/