প্রচুর "নিষ্ক্রিয় মেমরি" থাকা অবস্থায় ওএস এক্স কেন অদলবদল করে?


22

আমি কয়েক মাস (সিংহ এবং এখন মাউন্টেন সিংহ) থেকে ওএস এক্স ব্যবহার করছি। আমার মিনিতে 8 গিগাবাইট রয়েছে এবং প্রায় প্রতিদিন এটি এখন এটি কাছে চলে আসে। 8 জিবি সহ উইন্ডোজ 7 মেশিনে আমার কখনই এ জাতীয় সমস্যা হয়নি। যাইহোক, আমি নেট থেকে পড়েছি যে নিষ্ক্রিয় মেমরিটি সম্প্রতি বন্ধ হওয়া প্রোগ্রামগুলির অ্যাপ্লিকেশন ক্যাশে এবং দ্রুত পুনরায় খোলার জন্য ব্যবহার করা যেতে পারে nd এবং প্রয়োজনে যদি এই নিষ্ক্রিয় মেমরিটি একটি নতুন অ্যাপে প্রকাশ করা যায়। এটি মুক্তি হয় না। পরিবর্তে ওএস এক্স অদলবদল শুরু করে। সুতরাং আমার প্রশ্ন হ'ল যখন প্রচুর "নিষ্ক্রিয় মেমরি" থাকে তখন ওএস এক্স কেন সোয়াপ ব্যবহার করে? এখানে একটি স্ক্রিন যা আমার অর্থটি দেখায়:

এখানে চিত্র বর্ণনা লিখুন

আমি সত্যিই আশা করি যে অদলবদল শুরু করার আগে ওএস এক্সকে ২.69৯ গিগাবাইট ব্যবহার করার উপায় রয়েছে Iআমি সত্যিই এটি করি।


হ্যাঁ এটা অদ্ভুত। এটি কি একটি অ্যাপ্লিকেশন সমস্ত র‌্যাম গ্রহণ করছে? সম্ভবত ওএসএক্স একবারে 80% এর বেশি র‌্যাম ব্যবহার না করার জন্য অ্যাপ্লিকেশনগুলিকে সীমাবদ্ধ করে। নিষ্ক্রিয় অর্থ যদিও এটি মুক্ত নয়। এটি কোনও কিছুর জন্য সংরক্ষিত।
পাইটর কুলা

না - অনেকগুলি অ্যাপ্লিকেশন, ব্রাউজার ,গ্রহণ এবং অন্যান্য যা আমি পড়েছি তা থেকে এটি নিখরচায় একটি সাম্প্রতিক বন্ধ হওয়া অ্যাপ্লিকেশন ক্যাশে inacঅ্যাক্টিভ মেমরি থাকার সময় ওএস এক্সকে অদলবদল করার উপায় থাকা উচিত
বালচেভ

আমি যে কোনও সময় এটি পুনরুত্পাদন করতে পারি এবং প্রয়োজনে ক্রিয়াকলাপের মনিটরের একটি স্ক্রিন তৈরি করতে পারি
বালচেভ

2
নিষ্ক্রিয় মেমরি বিনামূল্যে মেমরি নয়।
কিনোকিজুফ

2
@ কিনোকিজুফের অবশ্য নিখরচায় স্মৃতি অবশিষ্ট না থাকলে মুক্ত মেমরি হিসাবে কাজ করা উচিত। যদি নিষ্ক্রিয় মেমরিটি সর্বদা ডিস্কে অদলবদল করা থাকে, সক্রিয় - নিষ্ক্রিয় পার্থক্য করার কোনও আসল বিন্দু নেই।
পিটার

উত্তর:


18

নিষ্ক্রিয় র‌্যাম পৃষ্ঠাগুলি আসলে সক্রিয় ছিল তখন অদলবদল দৃশ্যত ঘটেছিল happened

( আপডেট: এটি একটি মন্তব্যে যেমন স্পষ্ট হয়েছিল, এটি আপনার ক্ষেত্রে নয় So সুতরাং একই সমস্যাযুক্ত লোকেরা অনুভূমিক নিয়মে এগিয়ে যেতে পারেন ))

অর্থাৎ আপনার অনেকগুলি প্রোগ্রাম চলছিল এবং কার্নেলটি কিছু পৃষ্ঠা সরিয়ে নিয়েছে। তারপরে আপনি কিছু প্রোগ্রাম ত্যাগ করেছেন। কার্নেলটি তাদের র‍্যাম পৃষ্ঠাগুলিকে নিষ্ক্রিয় হিসাবে চিহ্নিত করে। তবে এই পৃষ্ঠাগুলির প্রয়োজন না হওয়া পর্যন্ত এটি পৃষ্ঠাগুলি র‍্যামে ফিরে যাবে না। এটি নিষ্ক্রিয় এবং অদলবদল দুটি পৃষ্ঠাগুলির ফলস্বরূপ।

কেন পূর্ববর্তীভাবে পৃষ্ঠাগুলি অদলবদল হয় না? কারণ এটি প্রতিকূলতার বিরুদ্ধে বাজি ধরতে পারে: দীর্ঘমেয়াদে আপনি হেরে যান। আসুন একটি সরল উদাহরণ হিসাবে চিন্তা করুন: দুটি প্রোগ্রাম এ এবং বি যা একই সাথে র্যামের সাথে খাপ খায় না। প্রোগ্রাম এটি এখনও চলছে এবং অদলবদল করা সমস্ত পৃষ্ঠাগুলি A. এর সাথে সম্পর্কিত প্রোগ্রাম বি বি ছেড়ে দিয়েছে এবং সমস্ত নিষ্ক্রিয় পৃষ্ঠাগুলি বি এর অন্তর্ভুক্ত

যদি কার্নেল প্রিমিয়ারটিভ এ এর ​​পৃষ্ঠাগুলি অদলবদল করে এবং উদ্দেশ্যমূলকভাবে পরে:

  • প্রোগ্রাম এ এর ​​পৃষ্ঠাগুলি অ্যাক্সেস করতে হবে -> আপনি জিতে যান - পৃষ্ঠাগুলি ইতিমধ্যে র্যামে রয়েছে।
  • আপনি আবার বি চালু করেন -> আপনি হারাবেন - পৃষ্ঠাগুলি র‍্যামে আনার জন্য আপনি "অর্থ প্রদান" করেছেন এবং এখন আপনাকে সেগুলি ফেরত পাঠাতে হবে।
  • আপনি অন্য একটি প্রোগ্রাম সি চালু করেন -> যদি এ এবং সি একই সাথে র্যামের সাথে ফিট না করে তবে আপনি হারাবেন। যদি তারা ফিট করে তবে আপনিও সমান।

এও বিবেচনায় রাখুন যে অদলবদল (ডিস্কে লিখন) স্ব্যাপিং-ইন (ডিস্ক থেকে পড়া) এর চেয়ে বেশি ব্যয়বহুল। যা এই "বাজি" আরও অবাস্তব করে তোলে।

সংক্ষেপে: আপনার কর্নেলকে বিশ্বাস করুন এবং এটিকে আউটমার্ট করার চেষ্টা করবেন না।


আপডেট: সক্রিয় হয় যে নিষ্ক্রিয় মেমরিটি সিস্টেম মেমোরি নিবন্ধটি পড়ার জন্য ক্রিয়াকলাপ মনিটরের ব্যবহার হিসাবে কাজ করে না কারণ অনেক লোক বিশ্বাস করে যে এটি কাজ করে। নিষ্ক্রিয় মেমরির জন্য নিবন্ধে প্রদত্ত সংজ্ঞাটি সঠিক:

এই তথ্যটি র‌্যামে রয়েছে তবে এটি সক্রিয়ভাবে ব্যবহৃত হচ্ছে না, এটি সম্প্রতি ব্যবহৃত হয়েছিল।

তবে নীচের উদাহরণটি সম্পূর্ণ বিভ্রান্তিকর এবং অতিরিক্ত সরলীকৃত (আমার উদাহরণটি স্পষ্ট বলে মনে হচ্ছে):

উদাহরণস্বরূপ, আপনি যদি মেল ব্যবহার করছেন এবং তারপরে এটি ছেড়ে দেন তবে মেলটি যে র‌্যামটি ব্যবহার করছিল সেটি নিষ্ক্রিয় মেমরি হিসাবে চিহ্নিত করা হয়েছে। নিষ্ক্রিয় মেমরি বিনামূল্যে অ্যাপ্লিকেশনটির মতো অন্য অ্যাপ্লিকেশন দ্বারা ব্যবহারের জন্য উপলব্ধ। যাইহোক, আপনি যদি মেলটির নিষ্ক্রিয় মেমরিটি অন্য কোনও অ্যাপ্লিকেশন দ্বারা ব্যবহৃত হওয়ার আগে খোলেন, মেলটি দ্রুত খুলবে কারণ এর নিষ্ক্রিয় মেমরিটি ধীর ড্রাইভ থেকে লোড করার পরিবর্তে অ্যাক্টিভ মেমরিতে রূপান্তরিত হয়।

আমি আরও অনলাইন সংস্থান সন্ধান করেছি এবং ডারউইন কার্নেল মেলিং তালিকায় এই থ্রেডটি শেষ করেছি যা বেশ তথ্যপূর্ণ। জিম ম্যাগিকে উদ্ধৃত করে (ডারউইন দল থেকে - আমি মনে করি):

সংক্ষেপে, ব্যবহারের পৃষ্ঠাগুলির মাধ্যমে মেমরি প্রেসার স্ক্যান করার সময় কার্নেল ভিএম সিস্টেম সক্রিয় এবং নিষ্ক্রিয় চিহ্নগুলির মধ্যে ভারসাম্য রক্ষার চেষ্টা করে t নিষ্ক্রিয় পৃষ্ঠাগুলি নিষ্ক্রিয় হিসাবে চিহ্নিত হওয়ার পরে পুনরায় ব্যবহারের জন্য স্ক্যান করা হয়। যদি সেগুলি পুনরায় ব্যবহার করা হয়, তবে তাদের সক্রিয় হিসাবে চিহ্নিত করা হয়েছে এবং এটি সক্রিয় ব্যবহারে রয়েছে কিনা তা সনাক্ত করতে অন্য কোনও পৃষ্ঠা অবশ্যই সক্রিয় থেকে নিষ্ক্রিয় অবস্থায় চলে যেতে হবে। সুতরাং, নিষ্ক্রিয় একটি ভুল নাম omer এটি "সম্ভবত নিষ্ক্রিয়, এটি যাচাই করার চেষ্টা করতে দিন" এর জন্য সংক্ষিপ্তকরণ।

আপনি আবিষ্কার করেছেন যে, আমরা (বর্তমানে) অভ্যন্তরীণ ভারসাম্যটি প্রায় 3/3 সক্রিয় বনাম 1/3 নিষ্ক্রিয় ...

এটি আপনার পর্যবেক্ষণের আচরণ ব্যাখ্যা করে। অর্থাৎ আপনি যে নিষ্ক্রিয় পৃষ্ঠাগুলি দেখেন সেগুলি চলমান প্রোগ্রামগুলির সাথে সম্পর্কিত যা সম্প্রতি ব্যবহৃত হয়নি। সুতরাং, আপনি যখন কোনও নতুন প্রোগ্রাম ফায়ার আপ করবেন তখন নিষ্ক্রিয় পৃষ্ঠাগুলি অদলবদল হয়ে যায়। অ্যাক্টিভ বনাম নিষ্ক্রিয়ের 2/1 অনুপাত বজায় রাখতে একই সাথে অন্যান্য প্রোগ্রামগুলির পৃষ্ঠাগুলি নিষ্ক্রিয় হিসাবে চিহ্নিত করা হয়।

এই থ্রেডটিতে ডারউইন ইন্টার্নালগুলি সম্পর্কে আরও জানার জন্য কিছু পরামর্শ রয়েছে। সৈকতবল সমস্যার কারণে (যা সাধারণত এর সাথে খুব কম থাকে) কারণ আপনি মেমরির ব্যবহার তদন্ত শুরু করার ক্ষেত্রেও কিছু পরামর্শ রয়েছে।

উপসংহারটি একইরকম রয়ে গেছে: আপনার কার্নেলকে বিশ্বাস করুন এবং এটি আউটসামার্ট করার চেষ্টা করবেন না। :-)


1
হাই, আপনি আমাকে বুঝতে পেরেছেন না তা নিশ্চিত নয় - আপনি যখন 100-200MB ফ্রি মেমরির মতো, 2.6 গিগাবাইট "নিষ্ক্রিয়" এবং অন্য একটি প্রোগ্রাম শুরু করবেন তখন আমি এই মুহুর্তের জন্য কথা বলছি, গ্রহনটি, এক্সকোড এবং ইত্যাদির যা ঘটেছিল তা হ'ল এটি সেগুলি ব্যবহার করে না ২.6 গিগাবাইট এবং পরিবর্তে সক্রিয় স্মৃতি থেকে অদলবদল করুন I আমার অর্থ কী আপনি পেয়েছেন তা নিশ্চিত হন না ny যাইহোক, আপনার উত্তরের জন্য ধন্যবাদ
বালচেভ

এটা এখন পরিষ্কার। আপনার প্রশ্নের এই মন্তব্যে উদাহরণটি যুক্ত করা উচিত। আমি অতিরিক্ত তথ্য যুক্ত করেছি যা আমি মনে করি আপনি যা পর্যবেক্ষণ করেন তার জন্য পর্যাপ্ত ব্যাখ্যা সরবরাহ করে।
m000

নিশ্চিত না যে আমি আমার মূল উত্তরটি সম্পাদনা করব কিনা। এটি একটি পৃথক কেস ব্যাখ্যা করে (যেহেতু আপনার মন্তব্যের আগে আমি আপনার প্রশ্নটি পাইনি) এবং লোকজনকে বিভ্রান্ত করতে পারে।
m000

সুতরাং রাডু যেমন তাঁর মন্তব্যে বলেছেন - "ওএস এক্স একটি ক্ষুধার্ত জন্তু"। আমি ওএস এক্সের এতটা স্মৃতি ক্ষুধার্ত হওয়ার আশা করছিলাম না (সিংহ এবং এখন পর্বত সিংহ উভয়ই) এবং সে কারণেই আমি ভেবেছিলাম এখানে কিছু মশলাদার রয়েছে your আপনার আপডেট হওয়া উত্তরের জন্য আপনাকে ধন্যবাদ।
বালচেভ

6

আপনার যথেষ্ট পরিমাণে র‌্যাম থাকলে আপনি নিরাপদে পেজিং অক্ষম করতে পারেন।

এই আদেশগুলি ব্যবহার করে দেখুন।

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist
sudo rm /private/var/vm/swapfile*

তারপরে পুনঃসূচনা করুন এবং যাচাই করুন যে ডায়নামিক_পাগার প্রক্রিয়া আর চলছে না।

নিশ্চিত হয়ে নিন যে কোনও সোয়াফিল ফাইল তৈরি হয়নি /private/var/vm/

নিম্নলিখিত আদেশগুলি পুনরায় সক্ষম করার জন্য:

sudo launchctl load -wF /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

আপনি আরও বেশি র‌্যাম মুক্ত করতে এবং ডিস্কের ক্রিয়াকলাপ হ্রাস করতে স্পটলাইট অক্ষম করতে পারেন। নিম্নলিখিত কমান্ডগুলি স্পটলাইট অক্ষম ও সক্ষম করতে ব্যবহৃত হয়।

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
sudo launchctl load -wF /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

আমি নেট থেকে পড়েছি যে ওএসএক্সে অদলবদল অক্ষম করার ফলে সিস্টেমের অপ্রত্যাশিত আচরণ এবং ক্র্যাশ হতে পারে। এটা কি সত্য?
বালচেভ

যখন আপনার স্মৃতিশক্তি কম হবে। তবে আপনার যদি 8 গিগাবাইটের মতো পর্যাপ্ত মেমরি থাকে তবে এটি কোনও সমস্যা করবে না।
অরুনদেবমা

2
“8 গিগাবাইটের মতো পর্যাপ্ত মেমরি” - দুঃখিত, এটি খুব সুন্দর… :)
বোম্বে

0

আপনি করার মতো অনেক কিছুই নেই। কেন এটা করে? কারণ এটি ঠিক কীভাবে ওএস এক্স কাজ করে। মজার অংশটি হ'ল ম্যাকের প্রতিটি ঘুমের সাথে কীভাবে দখলকৃত স্মৃতি বড় হচ্ছে।

আপনি কি করতে পারেন:

  1. র‌্যাম আপগ্রেড করুন।
  2. যখনই প্রয়োজন হয়, বেশিরভাগ নিষ্ক্রিয় মেমরি পরিষ্কার করতে পবিত্র " শুদ্ধি " কমান্ডটি চালান ।
  3. অদলবদল অক্ষম করুন http://osxdaily.com/2010/10/08/mac- ভার্চুয়াল- মেমরি- অদলবদল

হাই, আমি purge কমান্ডটি ব্যবহার করেছি, তবে বেশিরভাগ সময় এটি "অ্যাক্টিভ" স্মৃতির অর্ধেকের চেয়ে কম পরিমাণে মুক্ত হয়। আমি পড়েছি যে ওএসএক্স-এ অদলবদল অক্ষম করা সিস্টেমের অপ্রত্যাশিত আচরণ এবং ক্র্যাশগুলির দিকে পরিচালিত করতে পারে with সুতরাং আমি 1 এর সাথে গেলাম) এখন এটি 16 গিগাবাইটের সাথে ঠিক আছে :) ঠিক তেমন পরিমাণে মেমরির ব্যবহার সার্ভারের জন্য হতে পারে, ডেস্কটপ নয় :) জন্য ধন্যবাদ আপনার উত্তর
বালচেভ

আমার ম্যাকবুক প্রোতে আমার 16 জিবি রয়েছে, এটি কোনও সার্ভার নয়। :) এটি মেমরির ক্ষেত্রে আসে ওএস এক্স একটি ক্ষুধার্ত প্রাণী, বিশেষত যখন একাধিক মাঝারি / বড় অ্যাপ্লিকেশন একই সময়ে ব্যবহৃত হয় It's আমি কোনও চিত্র / ভিডিও সম্পাদনা সফ্টওয়্যার, কিছু কিছু গেম এবং ছোট অ্যাপ্লিকেশন না খুলে all সমস্ত 16 জিবি পূরণ করতে সক্ষম হয়েছি। নিষ্ক্রিয় মেমরিটি প্রায় 4 গিগাবাইট ...

আপনার অবশ্যই অ্যাকাউন্টে নেওয়া উচিত যে অনেকগুলি ওএস এক্স অ্যাপ্লিকেশন ইতিমধ্যে 64 বিট। স্পেস বড় হওয়ার কারণে bit৪ বিট অ্যাপ্লিকেশনগুলি 32 বিট অ্যাপসের চেয়ে বেশি মেমরি বরাদ্দ করে।

0

সিস্টেম ডিজাইন হিসাবে কাজ করছে। এমনকি মেমরির চাপ না থাকলেও, এমন কিছু পৃষ্ঠাগুলি লেখার জন্য এটি বুদ্ধিমান হতে পারে যা বাতিল করা যায় না তবে সিস্টেম ব্যস্ত না হয়ে সদ্য অদলবদলের জন্য ব্যবহৃত হয় নি। এইভাবে পরে যদি মেমোরি চাপ থাকে তবে সিস্টেমটি ব্যস্ত থাকাকালীন এই পৃষ্ঠাগুলি প্রথমে অদলবদলে না লিখে র্যাম থেকে উচ্ছেদ করা যেতে পারে।


1
এটি তখন খারাপভাবে ডিজাইন করা হয়েছে। এটি অদলবদল এবং বরাদ্দ স্থান ব্যবহারে খুব আগ্রাসী।
মেন্ডোটা

কেন এটা কোন ব্যাপার? যদি প্রচুর পরিমাণে অদলবদল হয় তবে অদলবদল বরাদ্দ করা নিরীহ is এটি বিশেষত সত্য যখন অদলবদলে প্রয়োজনীয় ডেটা থাকে না কারণ বরাদ্দগুলি সরানোর কোনও মূল্য নেই। এটি একটি ভাল নকশা - কঠোর পরিশ্রম করার পরে যখন সিস্টেমটি চাপে থাকে তখন পরে পিছিয়ে দেওয়ার চেয়ে প্রায় ব্যয়বহুল হয়ে যায়।
ডেভিড শোয়ার্জ

2
এটি খুব বেশি আক্রমণাত্মক হয় এবং প্রোগ্রামগুলিতে গোলমাল বা হ্যাংআপের কারণ হয় এটির নকশা এটি ভুলক্রমে নিষ্ক্রিয় হিসাবে ট্যাগ করে এবং অদলবদলে যেতে শুরু করে। ইতোমধ্যে র‌্যামে আরও আটটি
জিগ

আমি মেনডোটার সাথে একমত একবার আমি সম্পূর্ণভাবে অদলবদল অক্ষম করে ফেললাম, আমার সিস্টেম কোনও তোতলা ছাড়াই সুচারুভাবে চলছে is
আন্তন কুজমিন

@ অ্যান্টনকুজমিনের এই প্রশ্নটির সাথে আসলেই কোনও সম্পর্ক নেই। আপনি যদি এই প্রশ্নটি পড়েন তবে তোতলা বা কোনও সমস্যা সম্পর্কে এগুলি মোটেই কিছুই বলে না।
ডেভিড শোয়ার্জ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.