वर्चुअल मेमोरी पेज आकार को बदलना संभव है? मैं यह पूछ रहा हूं क्योंकि X86_64 part of the MMU article on wikipedia में, यह विभिन्न पेज आकारों के बारे में बात करता है। यदि पृष्ठ का आकार वास्तव में बदला जा सकता है, तो यह कैसे बदला जाता है?क्या वर्चुअल मेमोरी पेज आकार बदलना संभव है?
उत्तर
x86_64 पर आप hugetlbfs की मदद से सामान्य 4 कीबी पृष्ठों के बजाय 2 एमआईबी पृष्ठों का स्पष्ट रूप से अनुरोध कर सकते हैं। पारदर्शी विशाल पृष्ठ के साथ आधुनिक कर्नेल पर एक छोटे से पृष्ठ पृष्ठभूमि में विशाल पृष्ठों को स्वचालित रूप से संयोजित कर सकते हैं, यह देखते हुए कि स्मृति विखंडन बड़ा नहीं है और पर्याप्त स्मृति अभी भी मुफ़्त है।
विंडोज: http://windows.microsoft.com/en-US/windows-vista/Change-the-size-of-virtual-memory
लिनक्स:
/* PAGE_SHIFT निर्धारित करता है:
/usr/src/linux/include/asm-generic/page.h में आप निम्नलिखित लाइनों पा सकते हैं पृष्ठ आकार */
परिभाषित PAGE_SHIFT 12
नीचे दिए गए लेख टिप्पणियाँ अनुभाग में बताते हैं।
http://www.cyberciti.biz/faq/linux-check-the-size-of-pagesize/
/proc/sys/VM/swappiness पैरामीटर, जो क्रम स्मृति बाहर गमागमन के बीच संतुलन बदल जाता है, के रूप में सिस्टम पेज कैश से पृष्ठों को छोड़ने के लिए विरोध किया।
ओपी वर्चुअल मेमोरी में दिए गए पेज के आकार को बदलने के बारे में पूछ रहा है, वर्चुअल मेमोरी के आकार को नहीं बदल रहा है। इसके अलावा, सवाल लिनक्स टैग किया गया है। – ughoavgfhw
उम ... ओपी लिनक्स के बारे में पूछ रहा है ... आपका लिंक विंडोज के लिए है। – Mysticial
के बाद इस विषय पर कुछ दिलचस्प लिंक हैं ...
http://linuxgazette.net/155/krishnakumar.html
जहाँ तक मुझे पता है, कोई ऑपरेटिंग सिस्टम की अनुमति देता है एक पृष्ठ के आकार का अनुरोध करने के लिए आवेदन। X86_64 पेजिंग सिस्टम विभिन्न आकारों के पृष्ठों को मिश्रित करने की क्षमता प्रदान करता है, लेकिन आमतौर पर इसका उपयोग केवल तभी किया जाता है जब बड़ी मात्रा में स्मृति आवंटित की जाती है।
x86_64 (और x86) पर, वर्चुअल पते को पृष्ठ सारणी की एक श्रृंखला के माध्यम से भौतिक पते पर मैप किया जाता है। प्रत्येक तालिका भौतिक आभासी पते के लिए बिट्स की एक निश्चित संख्या प्रदान करती है। x86_64 वर्तमान में प्रत्येक मैपिंग के लिए 4 टेबल तक का उपयोग कर सकता है, प्रत्येक 9 वर्चुअल एड्रेस बिट्स प्रदान करता है, और कम 12 बिट पेज के ऑफसेट को निर्दिष्ट करते हैं। पहले 3 टेबल प्रत्येक तालिका के भौतिक पते पर इंगित करते हैं, और वास्तविक पृष्ठ के भौतिक पते के अंतिम बिंदु।
| PML4T entry |-+
V
+-| PDPT entry |
V
| PDT entry |-+
V
| PT entry |-> Physical address (4kB page)
हालांकि, दूसरे और तीसरे तालिका प्रविष्टियों भी एक सा है, जो सेट करता है, तो यह संकेत करता है आगे कोई टेबल देखते हैं होते हैं और उस प्रविष्टि भौतिक पता प्रदान करता है। जब ऐसा होता है, तो अन्य तालिकाओं द्वारा प्रदान की जाने वाली बिट्स को भौतिक पृष्ठ ऑफ़सेट में स्थानांतरित किया जाता है, प्रत्येक तालिका को हटाए जाने के लिए पेज आकार को 512 तक गुणा कर दिया जाता है।
| PML4T entry |-+
V
+-| PDPT entry |
V
| PDT entry (PS=1) | -> Physical address (2MB page)
किसी दिए गए वर्चुअल ऐड्रेस को मैप करने के लिए प्रयोग किया जाता तालिकाओं की संख्या बदलने से, ऑपरेटिंग सिस्टम 4kB (4 टेबल), 2 एमबी (3 टेबल), या 1GB (2 टेबल) के पन्नों बना सकते हैं। चूंकि प्रत्येक तालिका प्रविष्टि में बिट प्रदान किया जाता है, इसलिए अलग-अलग पेज आकार मिश्रित किए जा सकते हैं, इसलिए उदाहरण के लिए 2 एमबी पृष्ठ के बाद 2 एमबी पेज का अनुसरण किया जा सकता है।
लिनक्स पर madvise() देखें, आप कम से कम बड़े पेज MADV_HUGEPAGE के साथ कर सकते हैं – nos
हां और नहीं।
पृष्ठ का आकार निश्चित किया गया है। लेकिन वर्चुअल मेमोरी क्षेत्र का आकार नहीं है (x86 आर्किटेक्चर पर)।जब आप वर्चुअल मेमोरी क्षेत्र बनाते हैं जो किसी पृष्ठ पर आकार के बराबर नहीं है, तो इसे सेगमेंट कहा जाता है।
- 1. मेकर्ट - क्या कुंजी आकार बदलना संभव है?
- 2. वर्चुअल मेमोरी
- 3. मेमोरी पेज गलती क्या है?
- 4. क्या लिनक्स पर नामित पाइप का आकार बदलना संभव है?
- 5. वर्चुअल मेमोरी
- 6. वर्चुअल मेमोरी?
- 7. मेमोरी पेज आकार का पता लगाने
- 8. छवि का आकार बदलना: "फ़िल्टर" क्या है?
- 9. दो वर्चुअल मेमोरी
- 10. क्या एक निश्चित आकार div फिट करने के लिए पाठ का आकार बदलना संभव है?
- 11. जेफ्रीचार्ट: क्या बार रंग बदलना संभव है?
- 12. क्या रेटिंगबार दिशा को बदलना संभव है?
- 13. एंड्रॉइड समर्थन वर्चुअल मेमोरी
- 14. वर्चुअल मेमोरी और एसआरबी
- 15. पृष्ठ संक्रमण के दौरान Jquery मोबाइल पेज का आकार बदलना
- 16. आकार बदलना matlotlib
- 17. उच्च वर्चुअल मेमोरी उपयोग + आईओएस
- 18. लिनक्स के तहत जावा से वर्चुअल मेमोरी उपयोग, बहुत मेमोरी
- 19. क्या आवेदन.css को application.css.sass में बदलना संभव है?
- 20. UIViews का आकार बदलना
- 21. wpf आकार बदलना
- 22. बटन का आकार बदलना
- 23. .NET कचरा कलेक्टर और x64 वर्चुअल मेमोरी
- 24. "मेमोरी पेज आउट रेट"
- 25. बिटमैप का आकार बदलना
- 26. क्या अंतर्निहित हैकेल रेंज फ़ंक्शन या शाब्दिक के चरण आकार को बदलना संभव है?
- 27. क्या UITableView में फ़ॉन्ट प्रकार और आकार को बदलना संभव है?
- 28. क्या JQuery या जावास्क्रिप्ट के साथ विंडो आकार बदलना संभव है?
- 29. क्या UITableViewDelegate का उपयोग किये बिना UITableViewCell का आकार बदलना संभव है?
- 30. क्या अधिकतम जावा ढेर आकार को गतिशील रूप से बदलना संभव है?
क्या आप पूछ रहे हैं कि कोई एप्लिकेशन अपना पृष्ठ आकार कैसे बदल सकता है, या ऑपरेटिंग सिस्टम एक अलग आकार के पेज कैसे बनाता है? – ughoavgfhw
वैसे मैं पूछ रहा हूं कि पेज आकार किसी भी तरह बदला जा सकता है, लेकिन यदि यह प्रति आवेदन किया जा सकता है, तो यह बहुत अच्छा होगा! – pythonic