নির্বাহী সারসংক্ষেপ
একটি অদলবদল (যাকে অদলবদল পার্টিশন, অদলবদল ফাইল বা পৃষ্ঠার ফাইল বলা হয়) কেবল ওএস দ্বারা সনাক্তযোগ্য শারীরিক মেমরির বৃদ্ধি করার জন্য একটি প্রক্রিয়া।
আপনার যদি উপলব্ধ শারীরিক র্যাম কম থাকে এবং আজকের মেশিনে আমি বলব আপনার কাছে 4 জিবি বা তার চেয়ে কম র্যাম রয়েছে। তাহলে আপনার সম্ভবত একটি অদলবদল হওয়া উচিত। তবে এটি আপনার কাজের চাপ এবং আপনি কীভাবে আপনার মেশিন ব্যবহার করেন তার উপর নির্ভর করে।
আপনার যদি 4 গিগাবাইটেরও বেশি র্যাম থাকে তবে আপনার সিস্টেমে কখনও অদলবদল ব্যবহার না করার একটি ভাল সুযোগ রয়েছে। সুতরাং যদি অদলবদল সক্ষম হয় বা না হয় তবে এটি খুব বেশি পরিবর্তন করবে না।
যদিও এটি অন্যান্য বিষয়গুলির উপর নির্ভর করে, আপনার মেশিনটি যত বেশি চলবে তত বেশি সম্ভাবনা রয়েছে ওএস র্যামের ছোট অব্যবহৃত অংশটিকে অদলবদলে বদলে দেবে, সেখানে দৃশ্যমানভাবে প্রচুর জায়গা বাকি রয়েছে। তবে, প্রায়শই সিস্টেম ফাইল বাফার এবং অন্যান্য স্টাফের জন্য "ফ্রি" র্যাম ব্যবহার করে এবং কিছু কাজের চাপ আপনার ফাইল বাফারকে সমস্ত উপলভ্য র্যাম ব্যবহার করতে পারে।
পেছনের তথ্য
কোনওভাবেই যদি আপনি অদলবদল অক্ষম করেন এবং আপনার স্মৃতি পুরোপুরি ব্যবহার করা হয় তবে কী হবে? ঠিক আছে, পরের বার যখন কোনও অ্যাপ্লিকেশন আরও মেমরি অনুরোধ করবে (যেমন কোনও ম্যালোক বা রিলোকের সাথে), এটি একটি ত্রুটি পাবে! যদি এটি যথাযথভাবে কোডিং করা থাকে তবে অ্যাপ্লিকেশনটি এটি সনাক্ত করতে পারে, তবে এই জাতীয় ত্রুটি পরিচালনা করা এবং মনোযোগ সহকারে প্রোগ্রামটি বন্ধ করা এখনও একটি চ্যালেঞ্জ হতে পারে! তবে, অনেক বিকাশকারী সফল মেমরি বরাদ্দের জন্য পরীক্ষা করেন না এবং প্রায়শই এই অ বন্টিত মেমোরিটি ব্যবহার করা যেতেই অ্যাপ্লিকেশন ক্র্যাশ হয়ে যায়। সুতরাং অ্যাপ্লিকেশনটি ক্র্যাশ হওয়ার প্রবল সম্ভাবনা রয়েছে এবং আসলে অনেকগুলি অ্যাপ্লিকেশন ক্রাশ হয়ে যায় কারণ আপনার একসাথে একাধিক অ্যাপ্লিকেশন সাধারণত একই সময়ে চলমান থাকে। আশা করি, কার্নেলটি নিজেই অনাক্রম্য হওয়া উচিত, তবে আমার অভিজ্ঞতায় এটি সর্বদা ক্ষেত্রে ছিল না।
আপনি সোয়াপ থাকে, তাহলে আপনি একই আচরণ থাকবে , কিন্তু আপনি একটি উচ্চ সীমা নেই, তাই সম্ভাবনা আপনি যে সীমা পৌঁছাতে না হবে।
আমার 8 ও 16 গিগাবাইট র্যামের সাথে ব্যক্তিগত 2 মেশিন রয়েছে। এই মেশিনগুলির ব্যক্তিগত ব্যবহার আমাকে কখনই এই র্যামের সমস্ত ব্যবহারের কাছে নিয়ে আসে না (আজ! সম্ভবত কয়েক বছরে যা অন্যরকম হতে পারে)। আমি শারীরিক র্যাম সীমাটিতে আঘাত করার একমাত্র কারণ হ'ল কোনও প্রক্রিয়াটি খারাপ হয়ে গেছে এবং সমস্ত র্যাম ব্যবহার করছে। কোনও অদলবদল না হওয়া একটি স্বস্তি, কার্নেলটি র্যামের সীমাতে পৌঁছানোর সাথে সাথে তাত্ক্ষণিকভাবে দুর্বৃত্তি প্রক্রিয়াটি মেরে ফেলবে। যদি আপনার অদলবদল হয়, আপনি একটি বেদনাদায়ক অভিজ্ঞতা পাবেন (সম্ভবত এসএসডি তে নয় ...) যেহেতু আপনার সিস্টেমটি অদলবদল এবং অদলবদল ও অদলবদল হয়ে যাবে এবং কখনও কখনও সম্পূর্ণ প্রতিক্রিয়াবিহীন হয়ে উঠবে যতক্ষণ না আশা করা যায় যে আপনার কার্নেল অপরাধীকে হত্যা না করে!
উপদেশ
লোকেরা আপনাকে ভয় পেলে চলবে না যদি আপনি অদলবদু অপসারণ করেন তবে ভয়াবহভাবে কিছু ঘটতে পারে telling আপনি যদি এটি করেন তবে আপনার শারীরিক ঠিকানার স্থান হ্রাস পাবে, যেমন আপনি 4 গিগাবাইট র্যাম থেকে 2 জিবি যান would আপনি কি এমন কাজ করবেন? তারপরে আপনার অদলবদল অপসারণ করা উচিত নয়। তবে আপনি এটি সীমাবদ্ধ করার সিদ্ধান্ত নিতে পারেন, এবং এটি বুদ্ধিমানের কাজ হবে ।
যদি কেউ মনে করেন যে তার কাজের চাপ তাকে উপলব্ধ শারীরিক র্যামের চেয়ে কাছাকাছি বা আরও বেশি কিছু ব্যবহার করতে নিয়ে আসতে পারে, বা যদি কারও কাছে প্রচুর I / O প্রয়োজন (ডিস্কে পড়ুন / লিখুন), তবে অদলবদল রাখা উচিত।
যখন অদলবদু রাখতে হবে, কোনও ব্যবহারকারীর কোনও প্রক্রিয়া ব্যবহার করতে পারে এমন পরিমাণের সীমা নির্ধারণের চেষ্টা করা উচিত। একটি লিনাক্স সিস্টেমে, কেউ কোনও প্রক্রিয়া নিয়ন্ত্রণের বাইরে চলে যায় তা এড়াতে cgroups মেমরি সীমা ব্যবহার করতে পারে, আমি OS X এর সমতুল্য জানি না তবে সেটাই হওয়া উচিত।
তবে কারও কাছে যদি তার কাজের চাপের জন্য পর্যাপ্ত পরিমাণের বেশি মেমরি থাকে তবে সে নিরাপদে স্ব্যাপটি অক্ষম করতে পারে বা রাখতে পারে it এটি পারফরম্যান্সের ক্ষেত্রেও খুব বেশি পরিবর্তন করতে পারে না কারণ যদি সিস্টেমটি অদলবদল ব্যবহার না করে তবে আপনি কোনও পারফরম্যান্স ড্রপ দ্বারা আঘাত হানবেন না (বিশেষত কোনও পুরানো রোটাল হার্ড ডিস্কে দৃশ্যমান, এসএসডি তেমন কম)।
প্রক্রিয়া অনুসারে মেমরির সীমাবদ্ধতা বা গোষ্ঠীগুলির গোষ্ঠী নির্ধারণের চেষ্টা করার জন্য উপরের মতো একই কৌশল ব্যবহার করা পর্যাপ্ত পরিমাণে র্যামের ক্ষেত্রেও সুবিধাজনক।
আমার নিজের উদাহরণ
আমার 1 জিবি র্যাম সহ একটি পুরানো পিসি রয়েছে, সেখানে আমার একটি বড় অদলবদল রয়েছে: 4 জিবি যাতে আমি এতে ফায়ারফক্স এবং অন্যান্য অ্যাপ্লিকেশন চালাতে পারি। যদিও সঠিক ব্যবহারকারীর অভিজ্ঞতা থাকতে পারে তার জন্য আমি যতটা কম অ্যাপ্লিকেশন (বা ফায়ারফক্সে ট্যাবগুলি) ব্যবহার করতে পারি।
আমার 8 জিবি র্যাম সহ একটি ছোট সার্ভার রয়েছে। সেখানে আমি ঠিক আমার কাজের বোঝা জানি এবং আমি চাই না যে আমার সার্ভারটি ধীর হয়ে যায় কারণ একটি প্রক্রিয়াটি খারাপ হয়ে গেছে এবং সমস্ত স্মৃতি গ্রাস করছে। সেখানে আমার কোনও সোয়াপ এবং সিগ্রুপ মেমরি সীমা প্রয়োগকারী বাধা নেই, তাই অ্যাপ্লিকেশন বা পরিষেবাগুলি ক্র্যাশ করতে পারে তবে কার্নেলটি নয়। বিটিডব্লিউ, এটি একটি লিনাক্স মেশিন।
তারপরে, আমার 16 জিবি র্যাম সহ আমার ম্যাক আছে with আমি এর একমাত্র ব্যবহারকারী নই এবং ব্যবহারকারীর স্যুইচ করার সময় আমরা অপেক্ষা করতে কিছু মনে করব না। সেখানে আমাদের অদলবদল রয়েছে, এই কম্পিউটারের অন্যান্য ব্যবহারকারীর কাজের বোঝার পরিকল্পনা করা আমার পক্ষে কঠিন। এমনকি আমি যদি একমাত্র হয়ে থাকি তবে আমি স্যুপ পরিবর্তন করব। আমি প্রায়শই বেশ কয়েকটি ভিএম চালিত করি এবং মেমরি গ্রাসকারী অ্যাপ্লিকেশনগুলি ব্যবহার করি তবে তিনি একই সময়ে না, তাই আমি অপ্রয়োজনীয় অ্যাপ্লিকেশনটিতে ওএসের সোয়াপিংয়ের বিষয়ে কিছু মনে করব না যাতে আমি দ্রুত ডিস্ক আই / ও পেতে পারি বা অন্য একটি ভিএম চালু করতে পারি। এখন পর্যন্ত, আমি এই মেশিনটি অদলবদল করতে দেখিনি!