ওএস এক্স ইয়োসেমাইটে স্ট্যাক সীমা বাড়ানো


12

আমি ওএস এক্স ১০.১০ এ টার্মিনাল অ্যাপ্লিকেশনগুলিতে স্ট্যাকের আকার বাড়ানোর (অগত্যা স্থায়ীভাবে নয়) একটি উপায় সন্ধান করছি।

আমি জানি ইন্টারনেটে এবং এখানে বিশেষত (যেমন এটি একটি ) স্টেম সীমা সহ পরিবেশের পরিবর্তনশীলগুলির সাথে সম্পর্কিত অনেকগুলি প্রশ্ন রয়েছে তবে আমি যে প্রস্তাবিত সমাধান পেয়েছি তার কোনওটিই আমার পক্ষে কাজ করে না বলে মনে হয়।

সবচেয়ে আমি নামা launchctlব্যবহার করছে sudo launchctl limit stack 67104768 67104768যেখানে 67104768 ডিফল্ট হার্ড সীমা। launchctlউচ্চতর সীমা সহ অন্যান্য কমান্ডগুলির কোনও প্রভাব নেই বলে মনে হয়।

তারপরেও রয়েছে sysctl, তবে এর ম্যান পেজগুলি kern.stack_sizeঅপরিবর্তনীয় হিসাবে প্রতিবেদন করেছে ।

আমি আশা করি যে কোথাও কোথাও প্রস্তাব দেওয়া হয়েছে এমন কোনও সমাধান আমি উপেক্ষা করিনি; কোন সাহায্যের ব্যাপকভাবে প্রশংসা হবে!

সম্পাদনা: আমি ওকামল্ট নেটিভ সংকলক, ওক্যামল্টের যে কোনও বাগ বলে মনে হচ্ছে তার চারপাশে কাজ করার জন্য স্ট্যাকের সীমাটি বাড়াতে চাই, যে কোনও নির্দিষ্ট (সংবেদনশীল) প্রোগ্রাম প্রসেসিং করে স্ট্যাক-ওভারফ্লোস; আমি এখনই বাগ রিপোর্টটি খুঁজে পাচ্ছি না।


1
আপনি কী স্পষ্টভাবে জিজ্ঞাসা করছেন যে কীভাবে যোসামাইটের স্ট্যাক সীমা বাড়ানো যায়?

1
হ্যাঁ. দুঃখিত, এটি যদি পাঠ্য থেকে পরিষ্কার না হত।
ক্রিস্টোফার

1
আমি একটা প্রশ্ন পাওয়া superuser.com/questions/836883/... আপনি সাহায্য করতে পারে ... প্রথম উত্তর, এটা একটা maxfiles সীমা দেখায়। সম্ভবত এটি স্ট্যাক সীমাতে পরিবর্তন করুন limit.stack.plistএবং লঞ্চডেমনে সংরক্ষণ করুন ?
TheBro21

1
ধন্যবাদ! আমি চেষ্টা করেছিলাম, কিন্তু ভাগ্য নেই।
ক্রিস্টোফার

1
ঠিক আছে. এবং আপনি আসলে সীমা ফাইলটি খুঁজে পেয়েছেন? যদি এটি না হয়। আমি এটি খুঁজতে এবং সমস্যা সমাধানের জন্য সময় ব্যয় করব। এবং এই প্লিস্টটি কনফিগার করে আমি আগে নির্দেশ দিয়েছি।
TheBro21

উত্তর:


5

স্ট্যাকের আকার বাড়ানোর একটি উপায় হ'ল ব্যবহার করা ulimit:

shell> ulimit -s new_size_in_kb

কেবল মনে রাখবেন যে ওএসএক্সে স্ট্যাকটি কত বড় হতে পারে এবং তার সীমাটি 65532 কেবি বলে মনে হচ্ছে তার একটি শক্ত সীমা রয়েছে বলে মনে হচ্ছে:

shell> ulimit -s 65533
ulimit: value exceeds hard limit
shell> ulimit -s 65532
shell> ulimit -a | grep stack
-s: stack size (kbytes)             65532

এছাড়াও ulimit -sসাময়িক এবং একবার টার্মিনাল সেশন প্রান্ত পুনরায় সেট করবে।

আপনি যদি নিশ্চিত করতে চান যে প্রতিটি টার্মিনাল সেশনের জন্য স্ট্যাকটি বৃদ্ধি পেয়েছে, আপনি ulimit -sআপনার .zshrc বা সমতুল্যে কমান্ডটি রাখতে পারেন ।


তার জন্য ধন্যবাদ! দুর্ভাগ্যক্রমে এই বিশেষ ক্ষেত্রে আমাকে ওএসএক্সের হার্ড সীমা ছাড়িয়ে স্ট্যাকের আকার বাড়ানো দরকার এবং আমি এমন একটি সন্ধানের প্রত্যাশা করছিলাম যা এই সীমাটি বাড়িয়ে তোলে।
ক্রিস্টোফার

হ্যাঁ: ulimit -s unlimitedএটিকেও 65532 কেবিতে সীমাবদ্ধ বলে মনে হচ্ছে: ulimit -a | grep stackদেয়-s: stack size (kbytes) 65532
fpierfed
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.