Αν καταλαβες τι εγραψα παραπανω τοτε η συζητηση δεν εχει νοημα.
Εμφάνιση 91-105 από 114
-
20-10-17, 21:38 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #91
-
21-10-17, 10:00 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #92
Έχω διαβάσει ολόκληρο το thread από την αρχή μέχρι το τέλος και πραγματικά δεν καταλαβαίνω τι νόημα έχει όλη αυτή η συζήτηση…
Αν θεωρήσουμε ένα ιδεατό μηχάνημα με άπειρη μνήμη, τότε πράγματι τα windows, αλλά και οποιοδήποτε λειτουργικό σύστημα, δεν χρειάζονται swap (ή pagefile), καθώς οποιοδήποτε πρόγραμμα οποιαδήποτε χρονική στιγμή, μπορεί να κάνει allocate όση μνήμη χρειάζεται.
Επειδή όμως στην πραγματικότητα η RAM είναι ένα πεπερασμένο resource, οι σχεδιαστές των λειτουργικών συστημάτων, έπρεπε να βρουν ένα τρόπο, στο πως θα συμπεριφέρεται το σύστημα, στην περίπτωση που μείνει από μνήμη. Κατέληξαν στα εξής:
- Αν υπάρχει swap, τότε swap-αρε σελίδες μνήμης στο δίσκο, προκειμένου να απελευθερωθεί RAM.
- Αν δεν υπάρχει swap, τότε σκότωσε processes, προκειμένου να απελευθερωθεί RAM.
Επειδή κανένας δεν (θα έπρεπε να) θέλει να γίνεται το δεύτερο, συνίσταται πάντα να υπάρχει swap (έστω και μικρό, για όσους έχουν μπόλικη μνήμη). Το παρακάτω link εξηγεί με απλά λόγια τι είναι το pagefile και το αν θα έπρεπε να απενεργοποιείται:
https://www.howtogeek.com/126430/htg...ou-disable-it/NetBSD Rocks!
http://www.netbsd.org
-
21-10-17, 18:34 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #93
Aφού το διάβασες όλο, δεν κατάλαβες ότι όλοι όσοι έχουν γράψει εδώ μέσα ξέρουν πολύ περισσότερα από αυτά που λέει το Link που έχεις ανεβάσει;;
Με την απορία θα μείνεις γιατί ο ένας υποστηρίζει το ένα και ό άλλος το άλλο, καθένας έχει τους λόγους του.Imagination is more important than knowledge.
Knowledge is limited
IMAGINATION ENCIRCLES THE WORLD
Albert Einstein
-
21-10-17, 19:32 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #94NetBSD Rocks!
http://www.netbsd.org
-
21-10-17, 19:40 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #95Imagination is more important than knowledge.
Knowledge is limited
IMAGINATION ENCIRCLES THE WORLD
Albert Einstein
-
21-10-17, 20:00 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #96
Καταρχήν, που κολλάει το αν γράφεις για πρώτη ή για χιλιοστή φορά στο forum.
Ανέφερες ότι όσοι έγραψαν στο thread "ξέρουν πολύ περισσότερα από αυτά που λέει το Link που έχεις ανεβάσει" και σου απάντησα, ότι το thread δεν διαβάζεται μόνο από αυτούς, αλλά από οποιονδήποτε (μέλος ή μη του forum).
Τι ακριβώς δεν κατάλαβες;
Όσον αφορά το "Ότι να 'ναι", αυτό γράφτηκε, διότι πετάχτηκες από το πουθενά και κατέληξες σε ένα άκυρο συμπέρασμα (εξ' ου και το "Ότι να 'ναι...").
Εγώ έτσι και αλλιώς θα το αφήσω εδώ, γιατί δεν έχει νόημα να συνεχιστεί αυτό το πράγμα...NetBSD Rocks!
http://www.netbsd.org
-
21-10-17, 20:23 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #97
Το θέμα έληξε, συνεχίζετε με πμ, αν θέλετε.
-
21-10-17, 20:50 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #98
Δε ξέρω πως ... ξεθάφτηκε το εν λόγω θέμα...
Φυσικά δεν ξέρουμε περισσότερα από τους μηχανικους λογισμικού της microsoft.
Από την άλλη, το (αρχικό) σκεπτικό του Wan έχει λογική και μάλιστα πολύ.
Εγώ (ύποπτο) συμφωνώ απόλυτα με τον wan, χρόνια τώρα disabled το έχω. Θα μου πείτε, τι σημαίνει αυτό?
Και επειδή ΠΡΕΠΕΙ να μιλάμε με νούμερα, δοκιμάστε:
Start -> Run -> Perfmon.exe -> προσθήκη μετρητή -> Αρχείο σελιδοποίησης -> % χρήσης (ή % μέγιστης χρήσης, διαλέξτε
Εγώ:
Windows 7 AMD FX4200/64bit με ταπεινά 8GB RAM, τρέχοντας βαριά πεπόνια (Android Studio, Android emulator μέσω Genymotion δηλαδή virtualbox)
1. Ενεργοποιώντας το swap file, έχω swap usage που φτάνει και ... το 0.5GB .. ενώ έχω διαθέσιμη μνήμη ελεύθερη = απαράδεκτο.
2. Με το swap file (χρόνια τώρα) απενεργοποιημένo, ποτέ δε ξέμεινα απο μνήμη κατά το development, ούτε είχα κολλήματα.
Η γκρίνια
Θεωρώ απαράδεκτο, να γίνεται χρήση του swap file, αν δε χρειάζεται, ακόμη και για memory mapped files. Σας θυμίζω ότι, memory mapped
files χρειάζονται γιατί είναι inter-process shared, αλλά η τεχνολογία που τα μπαζο-βγάζει στο swap σχεδιάστηκε το... 1993.
Το μέλλον
Στα windows 10, με το compressed memory, τα πράγματα έχουν αλλάξει άρδην. Μνήμη που έχει αιτηθεί αλλά που θεωρείται "άχρηστη" δε
πέφτει στο δίσκο αλλά στο compression store που, είναι μνήμη συμπιεσμένη μνήμη στο pool του χρήστη αλλά ανήκει στο system, δηλαδή
έχει ουσιαστικά άλλο owner. Αυτό ήταν το κύριο αγκάθι που δεν επιτρέπει η τεχνολογία memory compression να μπεί στα windows 7.
Υποπτεύομαι (αλλά αύριο θα το μετρήσω) ότι στο laptop (Win 10/ 8GB RAM/ SSD) το performance monitor δε θα δείχνει άσκοπα swaps
ακόμα και αν το ενεργοποιήσω το swap file.
Γι αυτό και υποπτεύομαι ότι... υπάρχει απάντηση στο αρχικό ζήτημα:
Win 7 - αν έχεις πολύ μνήμη => απενεργοποιείς swap file
Win 10 - άστο στο σύστημαΌλα τα παιχνίδια android που έχω φτιάξει περιγράφονται και κατεβαίνουν
από εδώ: https://play.google.com/store/apps/d...=Carbon+People
-
23-10-17, 14:20 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #99
Κατά συντριπτική πιθανότητα γνωρίζεις περισσότερα από μένα, ωστόσο, επειδή γνωρίζω και γω 5 πράματα, έχω ορισμένες απορίες-ενστάσεις γι' αυτά που αναφέρεις:
1. Καταρχήν ξέρουμε ότι όλα τα λειτουργικά χωρίζουν τη μνήμη σε pages και ότι όλα έχουν το page table, δηλαδή την αντιστοιχία των εικονικών διευθύνσεων που λαμβάνει κάθε εφαρμογή όταν κάνει memory allocation μέσα στο virtual address space της, με τις πραγματικές διευθύνσεις.
Όταν δηλαδή εγώ κάνω μία malloc/calloc/new/gcnew, είτε έχω άμεση διαχείριση της μνήμης (C, C++, Object Pascal), είτε μεσολαβεί garbage collector (C#, java), είτε επιτρέπονται και τα 2 (Object Pascal, Managed C++), αν γίνει σωστά το allocation, επιστρέφεται ένας pointer στην εφαρμογή μου. Αυτός ο pointer είναι εικονικός, δηλαδή κάπου μέσα στο virtual address space του process που αποτελεί την εφαρμογή μου. Και έχει ένα ή περισσότερα αντίστοιχα entries (ανάλογα με το αν μου δόθηκε πραγματική ενιαία περιοχή μνήμες ή πολλά κομμάτια) στο paging table.
2. Οι πραγματικές διευθύνσεις είναι κάπου μέσα στην virtual memory του λειτουργικού, όπου virtual memory = physical RAM + swap/page file(s)/partition(s).
3. Υπάρχουν πολλές τεχνικές πρόβλεψης ζήτησης για να ελαχιστοποιηθούν τα page faults -> δηλαδή ότι κάτι ζητήθηκε να διαβαστεί, αλλά δεν υπάρχει ήδη στην physical RAM και πρέπει να διαβαστεί από το δίσκο, με το τεράστιο σχετικό performance penalty.
4. Τα λειτουργικά συστήματα δίνουν το δικαίωμα/επιλογή στο χρήστη, ρητά, να απαγορέψει εξολοκλήρου τη χρήση δίσκου ως κομμάτι της virtual memory, και επομένως να ορίσει (σαν ποσότητα, γιατί σαν διεθύνσεις δεν είναι το ίδιο αφού υπάρχει η αντιστοιχία του paging table) ρητά ότι virtual memory == physical RAM.
5. Τα παραπάνω δεν αλλάζουν με τα memory mapped files, που ουσιαστικά είναι περιοχές μνήμης allocated για την ασφαλή και προβλεπόμενη ανταλλαγή δεδομένων μεταξύ διαφορετικών processes, και που διέπονται από τα ίδια interfaces με τα αρχεία δίσκου (disk I/O).
Διόρθωσέ με μέχρι τώρα, αν λέω κάτι λάθος.
Κι έρχεσαι εσύ και λες τώρα, ότι τα Windows, ακόμα κι αν δηλώσει ρητά ο χρήστης (δηλαδή και 0MB σε όλα τα partittions και No pagefile) ότι δεν θέλει paging στο δίσκο, τον αγνοούν ετσιθελικά, και το κάνουν.
Τελικά τί ισχύει;Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.
-
23-10-17, 14:38 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #100
Αυτα που είπες είναι σωστά με τη διαφορά ότι στο 5 τα Windows σου δίνουν την δυνατότητα να κάνεις map όχι κάποιο αρχείο απαραίτητα, αλλά μνήμη που γίνεται backup από το system page file.
Η λειτουργία αυτή δουλεύει άσχετα με το αν ο χρήστης έχει απενεργοποιήσει το page file σαν επιλογή. Φυσικά τα Windows στις περισσότερες περιπτώσεις κάνουν map απευθείας τη μνήμη, αν όμως για κάποιο λόγο αυτή τελειώσει τότε αναγκαστικά θα κάνουν κάποιο προσωρινό αρχείο για αυτή τη δουλειά. Το οποίο και θα σβήσουν μόλις τελειώσει η χρήση.
Η ιδέα ενός permanent swap file είναι έχει φτιαχτεί από πριν ένα αρχείο έτσι ώστε να είναι σίγουρο το defragmentation. Αν αυτό δεν υπάρχει, θα φτιάξει προσωρινό και θα το σβήσει μετά οπότε ο χρήστης δεν θα καταλάβει τίποτα.
Στην πραγματικότητα το όλο πρόβλημα είναι αν θα έχεις ένα αρχείο μόνιμο η ένα αρχείο προσωρινό, όχι αν υπάρχει η όχι η δυνατότητα για paging. Αυτό υπάρχει από τα Windows 3 (swapfile.exe σε real mode) ενώ και τώρα η όποια αλλαγή θέλει επανεκκίνηση.
Αυτό που δεν γνωρίζω είναι το πότε τα Windows θα αρνηθούν τη μνήμη. Για παράδειγμα αν ζητήσεις 100ΜΒ και δεν υπάρχει διαθέσιμο swap file θα στη δώσει σίγουρα με ένα προσωρινό, αν ζητήσεις 10 GB μπορεί και να μη στα δώσει. Μπορεί όμως και να μη στα δώσει ακόμα και να έχεις swap file 10 GB. Εξάλλου, μπορεί να σου δώσει διάφορα τμήματα τα οποία άλλα είναι σε υπάρχουσα μνήμη και άλλα στο swap (έτσι γίνεται το file mapping σε μεγάλα αρχεία).
Τέλος, στα Windows 10 υπάρχει και η συμπίεση της μνήμης, αντί δηλαδή να χρησιμοποιούν τον αργό σκληρό, χρησιμοποιούν την γρήγορη CPU για να κερδίσουν χώρο - κάτι σαν το paging αλλά μέσα στη μνήμη.Τελευταία επεξεργασία από το μέλος turboirc : 23-10-17 στις 14:47.
-
23-10-17, 14:45 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #101
Μια στιγμή, 2-3 πράματα εδώ:
1. Δεν είπα ότι κάνεις mapped κάποιο αρχείο απαραίτητα. Είπα ότι το memory mapping έχει interface που το χειρίζεσαι σαν να ήταν αρχείο (δηλαδή με open, close, handle κλπ.).
2. Από το όλο θέμα παραπάνω, εξαιρώ τα προσωρινά αρχεία. Υποθέτω εννοείς ότι θα φτιαχτεί κάποιο τέτοιο αρχείο στο %TEMP%, είτε το κοινό, είτε του χρήστη, σωστά; Με αυτό το πράγμα δεν είμαι αντίθετος, γενικά.
3. Λες ότι σου δίνουν τη δυνατότητα. Δηλαδή αυτό είναι κάτι που μπορεί να ζητήσει κάποια εφαρμογή που φτιάχνει κάποιος;
4. Λες για μνήμη που γίνεται backup από το system page file. Μα ο χρήστης όρισε ρητά ότι ΔΕΝ το θέλει. Εδώ τί γίνεται;
5. Και αν καταστρατηγείται η επιθυμία του χρήστη, δεν είναι πιο σωστό να τρως πόρτα στο allocation από το σύστημα; Να πάρεις πίσω έναν null pointer (ή exception αν πρόκειται για αντικείμενο (με garbage collection, ή όχι).Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.
-
23-10-17, 14:53 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #102
1.Οκ.
2.Ναι.
3.Ναι. Υπάρχει σχετικό API.
4.Ο χρήστης όρισε ότι δε θέλει μόνιμο αρχείο. Έτσι, θα φτιαχτεί προσωρινό. Επίσης δεν είναι απαραίτητο ότι θα το δεις στο temp folder η ότι θα είναι γενικώς ορατό σαν αρχείο στον explorer.
5.Όχι. Όπως ξέρεις για ένα πρόγραμμα το να μην πάρει τη μνήμη που θέλει σημαίνει crash. Δηλαδή ένα πρόγραμμα που θέλει 5ΜΒ επιπλέον θα κρασαρει για να μην φτιάξουν ένα προσωρινό αρχείο;
Προτεραιότητα έχει το experience...
-
23-10-17, 15:46 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #103
Για το "experience", και όχι μόνο, θα απαντήσω, χωρίς καμμία διάθεση αντιπαλότητας:
Σημαίνει crash για ένα κακογραμμένο πρόγραμμα.
Για ένα καλογραμμένο πρόγραμμα σημαίνει graceful exit, "λυπούμαστε αλλά αγοράστε RAM". Τόσα try και exception handling επιλογές έχουν όλες οι σύγχρονες γλώσσες.
1. Είπαμε ότι δεν θα κρασάρει παραπάνω, και γιατί (επίσης πρόγραμμα που δεσμεύει μνήμη σε τόσο μικρά chunks είναι κακογραμμένο).
2. Εάν το πρόγραμμα δεν επιτελέσει τη δουλειά του - γιατί αυτό θα γίνει τελικά, χωρίς φυσικά να χάσει δεδομένα ο χρήστης (θεωρούμε ότι είναι καλογραμμένο το πρόγραμμα) - τότε εσύ τί προτείνεις; Να αγνοεί την ρητή επιθυμία χρηστών που είναι σοβαροί και γνωρίζουν, για να κάνει indulge χρήστες πεπερασμένης νοημοσύνης που το τρέχουν με λιγότερη φυσική RAM από τα minimum specs του;Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.
-
23-10-17, 16:09 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #104
Try/except == crash. Δεν εννοούσα το μύνημα που θα δουν οι χρήστες αν είναι καλό η κακό, αλλά το γεγονός ότι με τον ένα ή τον άλλο τρόπο η εφαρμογή σου τερματίζεται.
Καταρχάς κανένα πλέον πρόγραμμα δεν ζητάει μνήμη απευθείας πια, όλα χρησιμοποιούν stl, smart pointers κλπ που κάνουν τη δουλειά από μόνα τους. Δεν είμαστε στο 1990 που παίρνουμε μεγάλη μνήμη και την κάνουμε τμήματα εσωτερικά. Ένα πρόγραμμα μπορεί άνετα να ζητάει λιγη μνήμη, υπάρχει short memory pool.
Τί νόημα έχει να πιάσεις το exception αν η μνήμη που ζήτησες απέτυχε. Είτε έχεις κακογραμμένο πρόγραμμα anyway οπότε τι είδους exit να κάνεις, το κάνει το λειτουργικό για σένα, άντε σε ορισμένες περιπτώσεις να έχεις ένα γενικό handler όπως πχ σε μια περίπτωση δική μου που θέλω να ελευθερωθεί asio driver που δεν φεύγει αυτόματα. Σε κάθε περίπτωση όμως μιλάμε για termination.
Όσο αναφορά στο δεύτερο σχόλιο σου, σου θυμίζω ότι τα Windows δεν είναι Linux που θα πει στο χρήστη έδωσες λάθος εντολή, την εκτέλεσα, στα έσβησα όλα γιατί έτσι μου είπες και άντε πνίξου τώρα. Ο σοβαρός χρήστης δεν είναι αυτός που θα απενεργοποιησει το page file για να γλυτώσει λίγα GB στον δίσκο του, ακόμα όμως και να το κάνει, τα Windows δεν θα του πουν ποτέ ότι ξέρεις το πρόγραμμα κόλλησε γιατί έβγαλες το swap file, θα κάνουν ότι μπορούν για να συνεχίσει το πρόγραμμα να δουλεύει.
Είναι θέμα φιλοσοφίας και μάλιστα σε ένα θέμα που από τα Windows 3 λειτουργεί με τον ίδιο τρόπο. Για την ακρίβεια, είμαι σχεδόν σίγουρος ότι και στο Linux έτσι θα λειτουργεί.
-
23-10-17, 16:21 Απάντηση: Μία απόδειξη ότι τα Windows λειτουργούν αψογότατα με παντελώς απενεργοποιημένο το pagefile #105
Δεν είναι OS-1 vs OS-2.
Είναι θέμα ότι μια "ετσιθελική πρωτοβουλία", μπορεί να κάνει ζημιά στον γνώστη χρήστη.
Π.χ. παράδειγμα:
Πριν μερικές βδομάδες - όταν είχα για πολύ λίγες μέρες ακόμα το νέο μηχανάκι με τα 64GB RAM, κι ακόμα το "μάθαινα" - είχα βάλει να κάνω render ένα απλό ερασιτεχνικό μικρό project στο Premiere Pro. Στο RAMDisk που χρησιμοποιώ όμως (48GB) δεν είχα ορίσει (κακώς) να είναι dynamically allocated η RAM.
Αποτέλεσμα:
Το Premiere τερμάτισε - χωρίς να χάσω δεδομένα - με ένα OK messagebox με ένα cryptic error, γιατί προφανώς δεν είχε RAM να κάνει δουλειά.
Φυσικά κατάλαβα αμέσως τί έγινε, και από τότε έχω το RAMdisk στο dynamic allocation και όλα καλά με τα πάντα.
Αν το Premiere είχε τη συμπεριφορά που εσύ αναφέρεις παραπάνω ως "καλή", θα είχα τρελαθεί (κυριολεκτικά) στο swapping/paging από/τον δίσκο, και θα είχα πάει στον ψυχίατρο, διότι δεν θα τερμάτιζε, αλλά θα "συνέχιζε" δήθεν "να δουλεύει" με π.χ. μισό GB RAM ενώ χρειάζεται π.χ. 20 για να κάνει τη δουλειά.
Αυτό θεωρείς εσύ ως "συνεχίζει να δουλεύει";Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.
Παρόμοια Θέματα
-
Οι Γαλλικές αρχές δίνουν 3 μήνες περιθώριο στην Microsoft για να σταματήσει την συλλογή δεδομένων από τα Windows 10
Από nnn στο φόρουμ ΕιδήσειςΜηνύματα: 22Τελευταίο Μήνυμα: 02-08-16, 05:17 -
Προβλημα δε φορτωνουν τα windows! Aνακτηση αρχειων ;;; (Σφαλμα 0xc00000e9)
Από dinhio στο φόρουμ Laptop, tablet και mobile computingΜηνύματα: 18Τελευταίο Μήνυμα: 25-04-16, 10:19 -
[Πρωταπριλιά]Με άδεια open source ο Windows NT Kernel και δωρεάν τα Windows 10 Home από την 1η Αυγούστου
Από nnn στο φόρουμ The fun section...Μηνύματα: 39Τελευταίο Μήνυμα: 04-04-16, 15:14 -
Google: Συγκεντρώνει πληροφορίες με απενεργοποιημένο το ιστορικό;
Από PiXel στο φόρουμ Internet, web surfing και online υπηρεσίεςΜηνύματα: 0Τελευταίο Μήνυμα: 14-03-16, 16:42 -
Τα Windows 10 ξεπέρασαν σε εγκαταστάσεις τα XP και 8.1 αλλά παραμένουν πολύ πίσω σε σχέση με τα Windows 7
Από nnn στο φόρουμ ΕιδήσειςΜηνύματα: 61Τελευταίο Μήνυμα: 12-02-16, 19:59
Bookmarks