অন্যান্য উত্তরগুলির পাশাপাশি, আপনি কোনও বরাদ্দ মেমরির জন্য সমর্থন প্রয়োজন লিনাক্স কনফিগার করতে পারেন, এমনকি যদি প্রোগ্রামগুলি এটি ব্যবহার না করে।
ওভার কমিট মেমরি এবং OOM হত্যাকারীকে ভয় করা লিনাক্স অভিজ্ঞতার প্রয়োজনীয় অংশ নয়। কেবলমাত্র সিসটেল প্যারামিটারটি ভিএম / ওভারকমিট_মেমরি 2 সেট করে ওভারকমিট আচরণ বন্ধ করে দেয় এবং ওওএম কিলারকে চিরতরে বেড়াতে থাকে। বেশিরভাগ আধুনিক সিস্টেমে বেশিরভাগ পরিস্থিতিতে পর্যাপ্ত অদলবদল সরবরাহ করার জন্য পর্যাপ্ত ডিস্কের স্থান থাকা উচিত। অতিরিক্ত কম মেমরি ফুরিয়ে যাওয়ার সময় পোষা প্রাণীর প্রক্রিয়াগুলি নিহত হওয়ার চেষ্টা করার পরিবর্তে পরিস্থিতি পুরোপুরি এড়ানো সহজতর হতে পারে। [ ওওএম ঘাতক থেকে অবকাশ ]
যদি কোনও প্রোগ্রাম মেমোরি বরাদ্দ করে তবে কার্নেলটি সোপেলের আরও পৃষ্ঠাগুলিকে প্রতিশ্রুতিবদ্ধ হিসাবে চিহ্নিত করতে পারে। এই ইঙ্গিতটি কার্নেলের মেমরি ম্যানেজারে সঞ্চয় করা আছে, আসল ডিস্কের স্পেসটি এখনও স্পর্শ করা হয়নি। যতক্ষণ না সেই মেমরিটি ব্যবহার করা হয়, ততক্ষণ কিছুই আসলে অভ্যন্তরে বাইরে যেতে হয় না। যদি সেগুলি কখনও ব্যবহার না করা হয়, তবে অদলবদলের ব্যবহার পারফরম্যান্সকে প্রভাবিত না করে ওঠানামা করবে।
যেহেতু প্রক্রিয়াগুলি তাদের নিজস্ব ঠিকানা স্পেস বা "ভিউ" উপস্থাপন করা হয় (এটি স্ব্যাপটি প্রথম স্থানে কিভাবে কাজ করে), কার্নেলের দ্বারা এটি কীভাবে পরিচালিত হয় সে সম্পর্কে অনেকগুলি প্রবণতা রয়েছে। উপরের লিঙ্কযুক্ত নিবন্ধ থেকেও কাঁটাচামচ উদাহরণ ব্যবহার করা, যেহেতু এটি প্রচুর অব্যবহৃত মেমরির তাজা করে বরাদ্দ দেওয়ার চেয়ে ভাগ করে নেওয়া মেমরি পৃষ্ঠাগুলি বেশি থাকে, তাই অদলবদলের ব্যবহারের সংখ্যা বাড়িয়ে মেমরিটিকে অনুলিপি-অন-লিখিত বরাদ্দ করা যায়। যখন এটি আসলে লিখিত (যা সম্ভবত না ঘটে), তারপরে সেই "প্রতিশ্রুতিবদ্ধ অদলবদল" কোনও অব্যবহৃত র্যাম (তারপরে র্যামের ব্যবহার বাড়ানো এবং অদলবদলের ব্যবহার হ্রাস করা) দিয়ে প্রতিস্থাপন করা যেতে পারে। বরাদ্দকৃত 500MB সহ এমন একটি প্রক্রিয়াটি কল্পনা করুন যা সমস্ত বা প্রায় সমস্ত র্যাম ব্যবহারে মেশিনে কাঁটাচামচ করে। যদি অদলবদলে 500 এমবি পাওয়া যায় (এবং ডিস্কের স্থানটি সস্তা হয়, আজকের টিবি ড্রাইভের 1% কত বড়?: পি), কোনও মেমোরি অনুলিপি করতে হয় না (এখনও,
সুতরাং OOM হত্যাকারীর সম্ভাবনা এড়ানো যায় এবং মেমরির বরাদ্দ (কাঁটা জাতীয় কিছু মাধ্যমে "অন্তর্ভুক্ত" বরাদ্দ সহ) সফল হয় বা তাত্ক্ষণিকভাবে ব্যর্থ হয়, এই ধারণাটি সহ বেশিরভাগ সফ্টওয়্যার ডিজাইন করা বাস্তবিক উপলব্ধি সহ যে স্মৃতি অবশ্যই হওয়া উচিত অদলবদল হয়ে যায় তখন এটি পারফরম্যান্সে প্রভাব ফেলতে পারে। এই প্রভাবটি প্রায় সর্বদা সামান্য, তবে সবচেয়ে খারাপ ক্ষেত্রে অদলবদলকে আঘাত করার দিকে পরিচালিত করে (এখনও কখনও কখনও সরাসরি কার্নেল ক্রাশ বা OOM হত্যাকারীর চেয়ে ভাল)।
যদিও লিনাক্স মেমরি ম্যানেজার কীভাবে কাজ করে তার সঠিক বিবরণ আমি জানি না, তবে এই উত্তরটি আমার নিজস্ব সাধারণ জ্ঞান এবং বছরের পর বছর ধরে পড়াটি আমার মনে আছে। আমি এই উত্তরটি পুনরায় সম্পাদনা করার চেষ্টা করেছি যাতে ওএস ডিজাইনের একটি ন্যূনতম উপলব্ধি প্রয়োজন (এটি যথেষ্ট জটিল এবং এমন কিছু নয় যা আমি নিজের সম্পর্কে খুব আগ্রহী), তবে মনে হয় এটি খানিকটা ছাঁটাচ্ছে; আপনি কীভাবে এটির উন্নতি হতে পারে তা দয়া করে আমাকে জানান let আকস্মিক হাতে, এটি বিব্রতকরভাবে প্রাথমিক প্রশ্ন নাও হতে পারে।