रैम सामग्री की खोज


12

मैं एक रेडिस डेटाबेस का उपयोग कर रहा हूं और वह उपयोग कर रहा है जो रैम की सामग्री का पता लगाना चाहता है।

मुझे यह समझ में आया कि मैं ऐसा क्यों करना चाहता हूं इससे अधिक समझ में आएगा तो मैं जो सवाल पूछूंगा।

रेडिस एक साधारण कुंजी मूल्य स्टोर है जो बाइनरी डेटा को संग्रहीत करता है। मुझे लगता है कि एन्कोडिंग जैसी चीजों का पता लगाने के लिए यह एक अच्छी जगह होगी और यह मेरे लिए दिलचस्प होगा कि डेटा पर बाइनरी सेट की तलाश में रैम पर स्कीमिंग करना, साधारण पैटर्न की तलाश जैसी चीजें करना; शायद एक शिशु क्वेरी भाषा लिखने की सोच का पता लगाएं जो रैम में खोजी गई है।

क्वेरी भाषाओं के बारे में SICP में अध्याय पढ़ने के बाद मुझे यह विचार आया ।

कहाँ शुरू करने पर कोई विचार? प्रारंभ में, मैं पूछना चाहता हूं "मुझे पता दें कि यह एप्लिकेशन चल रहा है या नहीं, कृपया सिस्टम को पता दें"।

जवाबों:


7

आप एक प्रक्रिया की मेमोरी तक पहुँचने के लिए gdb का उपयोग कर सकते हैं।

इसके अलावा, आपको "/ proc" फाइल सिस्टम पर एक नजर डालनी चाहिए - इसमें हर प्रक्रिया के लिए छद्म फाइलें शामिल हैं; उनमें से कुछ में रोचक जानकारी हो सकती है


7

cat /proc/[pid]/maps खरीद के अनुसार manpages।

जैसा चाहता है वैसा दिखता है। यदि आपको पीड की आवश्यकता है, तो पीएस या जो भी अन्य उपकरण है, उससे पकड़ो।

वह पते को उपयोग में पता स्थान ढूँढता है। पिछले साल डिफॉन में फैलो में से एक ने लिनक्स पर citoryemotethread लागू किया था। तो आप ऐसा कर सकते हैं ... फिर उस तरह से मनमानी स्मृति पढ़ें।

पढ़ने के लिए आसान है कि इंगित करने के लिए psusi के लिए क्रेडिट pmap -x [pid]


3
ध्यान दें कि pmapयह जानकारी को प्रारूपित करता है इसलिए यह अधिक मानव पठनीय है।
Psusi

6

डीबगर का उपयोग करें, यही वे लिए हैं।

यदि आप अपना स्वयं का रोल करना चाहते हैं, तो यह सब हो जाता है ptrace

आप एक प्रक्रिया का मेमोरी मैप (मेमोरी के लिए सामग्री की तालिका) देख सकते हैं /proc/$pid/mapsऔर इसमें से पूरी मेमोरी सामग्री पढ़ सकते हैं /proc/$pid/mem। आप उस बाद वाली फ़ाइल को सामान्य रूप से नहीं खोल सकते, देखिए कि मैं लिनक्स के तहत / proc / $ pid / mem से कैसे पढ़ता हूं?


1
आप मेरे कुछ सवालों के साथ अविश्वसनीय रूप से मददगार रहे हैं। क्या आप आमतौर पर लिनक्स ओएस या विशेष रूप से दिलचस्प वेब लेखों से संबंधित पढ़ने के लिए किसी भी किताबें सुझाते हैं?
मैजप्रोस्पेरो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.