2011-09-24 18 views

उत्तर

19

आप getrlimit का उपयोग कर अधिकतम प्रक्रिया और ढेर आकारों से पूछ सकते हैं। ढेर फ्रेम के पास एक निश्चित आकार नहीं है; यह इस बात पर निर्भर करता है कि प्रत्येक फ्रेम की कितनी स्थानीय डेटा (यानी स्थानीय चर) की आवश्यकता होती है।

कमांड लाइन पर ऐसा करने के लिए, आप ulimit का उपयोग कर सकते हैं।

आप एक चलने वाली प्रक्रिया के लिए इन मूल्यों को पढ़ने के लिए चाहते हैं, तो मुझे लगता है कि यह करता है किसी भी उपकरण के बारे में पता नहीं है, लेकिन यह/proc फाइल सिस्टम क्वेरी करने के लिए पर्याप्त आसान है:

cat /proc/<pid>/limits 
+0

मैं त्रुटि नहीं मिला एक आदेश मिलता है। इस आदेश के लिए मुझे किस पैकेज को स्थापित करने की आवश्यकता है? – Bruce

+0

यह एक सी एपीआई कॉल है, कमांड लाइन उपकरण नहीं। –

+0

उन्हें कुछ शुरुआती आकार सही होना चाहिए? क्या कंपाइलर पहले से ढेर फ्रेम के आकार की गणना करता है (सभी स्थानीय चरों को ध्यान में रखते हुए) और फिर फ्रेम आवंटित करता है? – Bruce

3

आप getrlimit उपयोग कर सकते हैं इसे बदलने के लिए स्टैक आकार और setrlimit देखने के लिए।

Increase stack size in Linux with setrlimit पोस्ट में एक उदाहरण है।

+2

उबंटू में कोई आदेश नहीं है जैसे getrlimit – HMS

23

एक त्वरित Google खोज some information on this subject प्रकट करना चाहिए।

> ulimit -a   # shows the current stack size 
+1

बेशक, एक त्वरित Google खोज अब इस पृष्ठ पर कार्य करती है। – gerardw

13

किलोबाइट में अधिकतम ढेर आकार:

ulimit -s 
संबंधित मुद्दे