আমি ভেবেছিলাম যে অদলবদলের পুরো সারাংশটি অস্থায়ী স্টোরেজ সুরক্ষা নেট হিসাবে কাজ করা ছিল যখন র্যাম পূর্ণ ছিল তবে আমার মাঝে মাঝে 3 জিবি ফ্রি র্যাম থাকা সত্ত্বেও আমার অদলবদল অবিচ্ছিন্নভাবে ব্যবহার করা হচ্ছে। এটা কি স্বাভাবিক?
আমি ভেবেছিলাম যে অদলবদলের পুরো সারাংশটি অস্থায়ী স্টোরেজ সুরক্ষা নেট হিসাবে কাজ করা ছিল যখন র্যাম পূর্ণ ছিল তবে আমার মাঝে মাঝে 3 জিবি ফ্রি র্যাম থাকা সত্ত্বেও আমার অদলবদল অবিচ্ছিন্নভাবে ব্যবহার করা হচ্ছে। এটা কি স্বাভাবিক?
উত্তর:
আপনি আপনার "অদলবদল" মান পরিবর্তন করার চেষ্টা করতে পারেন:
থেকে উবুন্টু এর সোয়াপ প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী :
অদলবদল কী এবং আমি কীভাবে এটি পরিবর্তন করব?
অদলবদল পরামিতি শারীরিক মেমরি থেকে বের হয়ে স্ব্যাপ ডিস্কে প্রসেসগুলি সরিয়ে নিতে কার্নেলের প্রবণতা নিয়ন্ত্রণ করে। ডিস্কগুলি র্যামের চেয়ে অনেক ধীর গতিতে, প্রক্রিয়াগুলি খুব আক্রমনাত্মকভাবে স্মৃতি থেকে সরিয়ে না থাকলে সিস্টেম এবং অ্যাপ্লিকেশনগুলির জন্য ধীর প্রতিক্রিয়ার সময় হতে পারে।
অদলবদলের মান 0 এবং 100 এর মধ্যে থাকতে পারে
অদলবদল = 0 যতক্ষণ সম্ভব শারীরিক মেমরি থেকে অদলবদল প্রক্রিয়াগুলি এড়িয়ে চলতে কার্নেলকে বলে। কার্নেল সংস্করণ 3.5 এবং এর চেয়েও নতুন এটি স্বাপিনতা অক্ষম করে।
অদলবদল = 100 কর্নেলকে আক্রমণাত্মকভাবে শারীরিক স্মৃতি থেকে প্রসেসগুলি অদলবদল করতে এবং ক্যাশে অদলবদল করার জন্য বলে tells
উবুন্টুতে ডিফল্ট সেটিংস হ'ল অদলবদল = 60। অদলবদলের ডিফল্ট মান হ্রাস সম্ভবত একটি সাধারণ উবুন্টু ডেস্কটপ ইনস্টলেশন জন্য সামগ্রিক কর্মক্ষমতা উন্নত করবে। অদলবদল = 10 এর একটি মান সুপারিশ করা হয় তবে পরীক্ষায় নির্দ্বিধায়। দ্রষ্টব্য: উবুন্টু সার্ভার ইনস্টলেশনগুলির ডেস্কটপ সিস্টেমে বিভিন্ন কার্য সম্পাদনের প্রয়োজনীয়তা রয়েছে এবং 60 এর ডিফল্ট মান সম্ভবত আরও উপযুক্ত।
অদলবদল মান পরীক্ষা করতে
cat /proc/sys/vm/swappiness
অদলবদল মান পরিবর্তন করতে 10 এর অদলবদল মান সহ একটি অস্থায়ী পরিবর্তন (পুনরায় বুটে হারিয়ে যাওয়া) দিয়ে তৈরি করা যেতে পারে
sudo sysctl vm.swappiness=10
কোনও পরিবর্তন স্থায়ী করতে , আপনার প্রিয় সম্পাদকের সাথে কনফিগারেশন ফাইলটি সম্পাদনা করুন:
gksudo gedit /etc/sysctl.conf
Vm.swappiness অনুসন্ধান করুন এবং এর মানটি পছন্দসইভাবে পরিবর্তন করুন। যদি vm.swappiness উপস্থিত না থাকে তবে ফাইলটির শেষে এটি যুক্ত করুন:
vm.swappiness=10
ফাইলটি সংরক্ষণ করুন এবং পুনরায় বুট করুন।
এছাড়াও আপনি পরীক্ষা করে দেখতে পারেন: https://askubuntu.com/a/103916/54187
sudo sysctl --load=/etc/sysctl.conf
পরিবর্তনগুলি প্রয়োগ করতে ফাইল সম্পাদনা করার পরে চালান
আপনার প্রশ্নের কয়েকটি ভিন্ন দিক রয়েছে।
প্রথমত, আপনার "ফ্রি" সংজ্ঞাটি কী। এটি লিনাক্সে (বা যে কোনও আধুনিক অপারেটিং সিস্টেম) শোনার মতো আসলে সহজ নয়।
লিনাক্স কীভাবে র্যাম ব্যবহার করে (খুব সরলীকৃত)
প্রতিটি অ্যাপ্লিকেশন আপনার কিছু স্মৃতি ব্যবহার করতে পারে। লিনাক্স অন্যথায় সমস্ত অনাবৃত মেমরি (শেষ কয়েক এমবি বাদে) "ক্যাশে" হিসাবে ব্যবহার করে। এটিতে পৃষ্ঠার ক্যাশে, ইনোড ক্যাশে ইত্যাদি অন্তর্ভুক্ত রয়েছে এটি একটি ভাল জিনিস - এটি জিনিসগুলিকে গতি বাড়িয়ে তুলতে সহায়তা করে। ডিস্কে লেখা এবং ডিস্ক থেকে পড়া উভয়কেই ক্যাশে প্রচুর পরিমাণে বাড়ানো যেতে পারে।
আদর্শভাবে, আপনার সমস্ত অ্যাপ্লিকেশনগুলির জন্য আপনার যথেষ্ট মেমরি রয়েছে এবং আপনার এখনও ক্যাশটির জন্য কয়েকশ 'এমবি বাকি রয়েছে। এই পরিস্থিতিতে, যতক্ষণ না আপনার অ্যাপ্লিকেশনগুলি তাদের মেমরির ব্যবহার বাড়ায় না এবং সিস্টেম ক্যাশে পর্যাপ্ত স্থান পাওয়ার জন্য লড়াই করছে না, ততক্ষণ কোনও অদলবদলের প্রয়োজন নেই।
অ্যাপ্লিকেশনগুলি আরও র্যাম দাবি করার পরে, এটি ক্যাশে সঙ্কুচিত করে ক্যাশে দ্বারা ব্যবহৃত কিছু জায়গার মধ্যে চলে যায়। ডি-বরাদ্দ করা ক্যাশে সস্তা এবং যথেষ্ট সহজ যে এটি কেবল আসল সময়ে করা হয় - ক্যাশে যে সমস্ত কিছু বসে থাকে তা হয় কেবলমাত্র ডিস্কে থাকা কোনও কিছুর কেবল একটি দ্বিতীয় অনুলিপি, তাই কেবল তাত্ক্ষণিকভাবে বিলোপযোগ্য হতে পারে, বা এটি এমন কিছু যা আমরা করতাম যাইহোক যাইহোক পরের কয়েক সেকেন্ডের মধ্যে ডিস্কে ফ্লাশ করতে হয়েছিল ।
এটি লিনাক্সের সাথে নির্দিষ্ট কোনও পরিস্থিতি নয় - সমস্ত আধুনিক অপারেটিং সিস্টেমগুলি এইভাবে কাজ করে। বিভিন্ন অপারেটিং সিস্টেমগুলি কেবল নিখরচায় র্যামকে আলাদাভাবে রিপোর্ট করতে পারে: কিছুতে তারা "ফ্রি" বিবেচনা করে এমন অংশ হিসাবে ক্যাশে অন্তর্ভুক্ত করে এবং কিছু নাও পারে।
আপনি যখন নিখরচায় র্যামের কথা বলবেন তখন ক্যাশে অন্তর্ভুক্ত করা আরও অনেক অর্থবহ , কারণ এটি ব্যবহারিকভাবে বিনামূল্যে - কোনও অ্যাপ্লিকেশন যাতে এটির অনুরোধ করে তবে এটি উপলব্ধ। লিনাক্সে, free
কমান্ডটি এটি উভয়ভাবেই রিপোর্ট করে - প্রথম লাইনে ব্যবহৃত র্যাম কলামে ক্যাশে এবং দ্বিতীয় লাইনে বিনামূল্যে কলামে ক্যাশে (এবং বাফার) অন্তর্ভুক্ত করা হয়।
লিনাক্স কীভাবে অদলবদল ব্যবহার করে (আরও সরলীকৃত)
মসৃণ চলমান ক্যাশে পর্যাপ্ত বাকী নেই এমন পর্যাপ্ত মেমরি ব্যবহার করার পরে, লিনাক্স র্যাম থেকে অদলবদলের জন্য কিছু অব্যবহৃত অ্যাপ্লিকেশন মেমরি পুনরায় বরাদ্দ করার সিদ্ধান্ত নিতে পারে।
এটি একটি নির্দিষ্ট কাট-অফ অনুযায়ী না করে। আপনি বরাদ্দের একটি নির্দিষ্ট শতাংশে পৌঁছানোর মতো নয় তবে লিনাক্স অদলবদল শুরু করে। এটির পরিবর্তে "অস্পষ্ট" অ্যালগরিদম রয়েছে। এটি অনেক কিছু বিবেচনায় নেয়, যা "মেমরি বরাদ্দের জন্য কতটা চাপ আছে" দ্বারা সর্বোত্তমভাবে বর্ণনা করা যেতে পারে। যদি নতুন মেমরি বরাদ্দের জন্য অনেক "চাপ" থাকে, তবে এটি আরও কিছু জায়গা তৈরির জন্য কিছু পরিবর্তন হওয়ার সম্ভাবনা বাড়িয়ে তুলবে। যদি "চাপ" কম থাকে তবে তা এই সম্ভাবনাগুলি হ্রাস করবে।
আপনার সিস্টেমে একটি "অদলবদল" সেটিংস রয়েছে যা আপনাকে এই "চাপ" কীভাবে গণনা করা যায় তাড়াতাড়ি করতে সহায়তা করে। এটি সাধারণত এটিকে পরিবর্তনের জন্য সুপারিশ করা হয় না এবং আমি আপনাকে এটি পরিবর্তন করার পরামর্শ দিই না। অদলবদল সামগ্রিকভাবে খুব ভাল জিনিস - যদিও এমন কয়েকটি প্রান্তের ঘটনা রয়েছে যেখানে এটির পারফরম্যান্সের ক্ষতি হয়, আপনি যদি সামগ্রিক সিস্টেমের পারফরম্যান্সের দিকে লক্ষ্য করেন তবে এটি বিস্তৃত বিভিন্ন কাজের জন্য একটি নেট সুবিধা। আপনি যদি অদলবদল হ্রাস করেন তবে আপনি ক্যাশে মেমরির পরিমাণটিকে অন্যথায় যা করতে হবে তার চেয়ে কিছুটা সঙ্কুচিত করতে দিন, এমনকি এটি সত্যিই কার্যকর হতে পারে। অদলবদল নিয়ে যে সমস্যা হ'ল এটি আপনার পক্ষে যথেষ্ট পরিমাণ বাণিজ্য বাণিজ্য কিনা। আপনি ঠিক কি জানেন যে আপনি কি করছেন, কেবল এটিই।
একটি সুপরিচিত পরিস্থিতি রয়েছে যার মধ্যে অদলবদল একটি ডেস্কটপ সিস্টেমে উপলব্ধি করা কর্মক্ষমতাকে ক্ষতি করে এবং দীর্ঘ সময় অলস থাকার পরে এবং আইওতে ব্যাকগ্রাউন্ড প্রক্রিয়াগুলি ভারী থাকার পরে অ্যাপ্লিকেশনগুলি কীভাবে আবার ব্যবহারকারী ইনপুটটিতে প্রতিক্রিয়া জানাতে পারে (যেমন একটি রাতারাতি ব্যাকআপ) চালান। এটি একটি খুব দৃশ্যমান আলস্যতা, তবে সমস্ত একসাথে অদলবদল বন্ধ করার পক্ষে সমর্থনযোগ্য নয় এবং কোনও অপারেটিং সিস্টেমে রোধ করা খুব শক্ত। অদলবদল বন্ধ করুন এবং ব্যাকআপ / ভাইরাস স্ক্যান না হওয়ার পরে এই প্রাথমিক আলস্যতা না ঘটতে পারে তবে সারা দিন সিস্টেম কিছুটা ধীর হতে পারে। এটি লিনাক্সের মধ্যেই সীমাবদ্ধ এমন পরিস্থিতি নয়।
ডিস্কে অদলবদল করার জন্য বাছাই করার সময়, সিস্টেমটি এমন মেমোরি বাছাই করার চেষ্টা করে যা বাস্তবে ব্যবহৃত হয় না - পড়তে বা লেখা থেকে। এটি গণনা করার জন্য এটিতে বেশ সহজ অ্যালগরিদম রয়েছে যা বেশিরভাগ সময় ভালভাবেই পছন্দ করে।
আপনার যদি এমন একটি সিস্টেম থাকে যেখানে আপনার প্রচুর পরিমাণে র্যাম থাকে (লেখার সময় 8 জিবি একটি সাধারণ লিনাক্স ডিস্ট্রোর জন্য একটি বিশাল পরিমাণ) তবে আপনি খুব কমই এমন পরিস্থিতিতে পড়তে পারবেন যেখানে অদলবলের প্রয়োজন হয় না। এমনকি আপনি অদলবদল বন্ধ করার চেষ্টা করতে পারেন। আমি কখনই এটি করার পরামর্শ দিই না তবে কেবল কারণ আপনি কখনই জানেন না যে কখন আরও র্যাম আপনাকে কোনও অ্যাপ্লিকেশন ক্র্যাশ থেকে রক্ষা করতে পারে। তবে যদি আপনি জানেন যে আপনার এটির প্রয়োজন হবে না তবে আপনি এটি করতে পারেন ।
তবে কীভাবে আমার সিস্টেমে গতি বাড়ানো যাবে? ধীর জিনিসগুলি অদলবদল করে না?
র্যাম থেকে অদলবদলে ডেটা স্থানান্তর করার কাজটি একটি ধীরগতি সম্পন্ন অপারেশন, তবে যখন কার্নেলটি পুরোপুরি সুবিধাগুলি ছাড়িয়ে যাবে এ সম্পর্কে নিশ্চিত তখনই তা নেওয়া হয়। উদাহরণস্বরূপ, যদি আপনার অ্যাপ্লিকেশন মেমরিটি যদি এমন পর্যায়ে পৌঁছে যায় যে আপনার প্রায় কোনও ক্যাশে নেই এবং আপনার আই / ও খুব অদক্ষ হয়ে পড়েছে তবে আপনি কিছুটা মেমরি মুক্ত করেও বাস্তবে আপনার সিস্টেমের থেকে অনেক বেশি গতি পেতে পারেন even এটি মুক্ত করার জন্য অদলবদলের প্রাথমিক ব্যয়ের পরে।
আপনার অ্যাপ্লিকেশনগুলি আসলে আপনার চেয়ে বেশি মেমরির অনুরোধ করা উচিত এটিও একটি শেষ অবলম্বন । এক্ষেত্রে স্মৃতি-বহির্ভূত পরিস্থিতি রোধ করার জন্য অদলবদল করা জরুরী যার ফলে প্রায়শই কোনও অ্যাপ্লিকেশন ক্রাশ হয় বা জোর করে হত্যা করা হয়।
অদলবদল কেবল সেই সময়ের সাথে সম্পর্কিত যেখানে আপনার সিস্টেমটি খারাপ প্রভাব ফেলছে কারণ এমন সময় ঘটে যখন আপনি ব্যবহারযোগ্য র্যামের বাইরে চলে যাচ্ছেন যা আপনার সিস্টেমকে ধীর করে দেবে (বা এটিকে অস্থির করে তুলবে) এমনকি আপনার অদলবদল না থাকলেও। সুতরাং জিনিসগুলিকে সরল করার জন্য, অদলবদল ঘটে কারণ আপনার সিস্টেমটি চারপাশের অন্য উপায়ের পরিবর্তে ডগল হয়ে যাচ্ছে।
ডেটা অদলবদল হয়ে গেলে, আবার কখন তা প্রকাশিত হয়?
অদলবদলের বাইরে ডেটা স্থানান্তর করা (traditionalতিহ্যগত হার্ড ডিস্কের জন্য, কমপক্ষে) ঠিক যেমন সময় লাগায় সেখানে রাখা হয় it সুতরাং বোধগম্য, আপনার কার্নেলটি অদলবদল থেকে ডেটা অপসারণ করতে ঠিক ততই অনিচ্ছুক হবে, বিশেষত যদি এটি প্রকৃতপক্ষে ব্যবহার করা হয় না (যেমন পাঠানো বা লিখিত)। আপনি সোয়াপ ডাটা আছে এবং ব্যবহার করতে পারবেন না হচ্ছে, তাহলে এটি আসলে একটি ভাল জিনিস এটা swap 'র রয়ে, যেহেতু এটি অন্যান্য বিষয়ের যে জন্য আরো মেমরি ছেড়ে করছে ব্যবহৃত হচ্ছে, সম্ভাব্য আপনার সিস্টেম দ্রুত গাড়ী চালানোর আপ।
free -m
।
অদলবদলের মান নির্ধারণ করা প্রতিটি পরিস্থিতিতে কাজ করে না। যদি এটি আপনার পক্ষে কাজ করে তবে দুর্দান্ত। যদি তা না হয়, আমি নিয়মিতভাবে অদলবদল বন্ধ করে আবার চালু করে সাফ করার জন্য একটি স্ক্রিপ্ট লিখেছি।
আপনি যদি সতর্ক না হন তবে টগলিং অদলবদল কিছুটা ঝুঁকিপূর্ণ। আপনি র্যাম সবকিছু রাখা পর্যাপ্ত মুক্ত র্যাম না থাকে তাহলে প্লাস swap 'র মধ্যে সবকিছু, নিষ্ক্রিয় করতে swap' র আপনার সিস্টেমে অপ্রতিক্রিয়ামূলক কারণ হবে চেষ্টা করছে। আমার স্ক্রিপ্টটি প্রথমে পর্যাপ্ত নিখরচায় র্যাম রয়েছে কিনা তা যাচাই করে (যা কিছুটা সময় নিচ্ছে যেমন মুক্ত র্যামের আসল পরিমাণটি নিখরচায় free
হিসাবে রিপোর্ট করা থেকে আলাদা ) তবে কেবল যদি তাই হয় তবে অদলবদল টগল করে। তবে, আপনি যদি র্যামে কিছুটা ছোট হন তবে স্ক্রিপ্ট চলাকালীন আর একটি বড় প্রক্রিয়া শুরু করবেন না। এটা এখানে:
#!/bin/bash
# Make sure that all text is parsed in the same language
export LC_MESSAGES=en_US.UTF-8
export LC_COLLATE=en_US.UTF-8
export LANG=en_US.utf8
export LANGUAGE=en_US:en
export LC_CTYPE=en_US.UTF-8
# Calculate how much memory and swap is free
free_data="$(free)"
mem_data="$(echo "$free_data" | grep 'Mem:')"
free_mem="$(echo "$mem_data" | awk '{print $4}')"
buffers="$(echo "$mem_data" | awk '{print $6}')"
cache="$(echo "$mem_data" | awk '{print $7}')"
total_free=$((free_mem + buffers + cache))
used_swap="$(echo "$free_data" | grep 'Swap:' | awk '{print $3}')"
echo -e "Free memory:\t$total_free kB ($((total_free / 1024)) MB)\nUsed swap:\t$used_swap kB ($((used_swap / 1024)) MB)"
# Do the work
if [[ $used_swap -eq 0 ]]; then
echo "Congratulations! No swap is in use."
elif [[ $used_swap -lt $total_free ]]; then
echo "Freeing swap..."
swapoff -a
swapon -a
else
echo "Not enough free memory. Exiting."
exit 1
fi
আপনাকে অবশ্যই এই স্ক্রিপ্টটি মূল হিসাবে চালাতে হবে (যেমন, সহ sudo
) with এই স্ক্রিপ্টটি আপনার সিস্টেমকে প্রতিক্রিয়াবিহীন ছেড়ে দেবে না; আপনার যদি অপর্যাপ্ত র্যাম পাওয়া যায় তবে তা অদলবদল টগল করতে অস্বীকার করবে। আমি প্রায় পাঁচ বছর ধরে সমস্যা ছাড়াই এই স্ক্রিপ্টটি ব্যবহার করেছি।
সাধারণভাবে অদলবদল এখনকার দিনের সিস্টেমে অব্যবহৃত থাকে। আমার অভিজ্ঞতায়, নিবিড় ক্রিয়াকলাপ ছাড়াই দীর্ঘকাল ধরে চলমান প্রক্রিয়াগুলি লিনাক্সের মাধ্যমে অদলবদলে স্থানান্তরিত হয়।
এটি কয়েকটি প্রভাবিত প্রোগ্রামকে ধীর করে দেয়।
আপনার যদি প্রচুর র্যাম মুক্ত থাকে তবে আপনি কমান্ডটি চালিয়ে অদলবদলটি স্যুইচ করতে পারেন:
swapoff -av
(এর জন্য আপনার sudo
অধিকারের দরকার হবে))
যদি আপনি সোয়াপ অফটি পছন্দ করেন না, তবে আপনি প্রতিসম কমান্ডটি ব্যবহার করে এটি চালু করতে পারেন:
swapon -av
( আবার sudo
প্রয়োজন)।
একবার কোনও প্রোগ্রামের জন্য অদলবদল ব্যবহৃত হয়ে গেলে তা প্রোগ্রামের জীবনের জন্য ম্যাপযুক্ত থাকে। অনেক প্রোগ্রামে কোড (এবং ডেটা) থাকে যা খুব কমই ব্যবহৃত হয় .. মেমরিটি একবারে সরিয়ে গেলে, এটি সরিয়ে নেওয়া সম্ভব হয় না।
এই পৃষ্ঠাগুলিকে মেমোরিতে জোর করার একটি উপায় হ'ল সোয়াপ ডিভাইসটি বন্ধ করা। আপনার যদি দুটি থাকে তবে আপনি একটিটি বন্ধ করতে পারেন, এটি আবার চালু করুন, তারপরে দ্বিতীয়টিটি বন্ধ করুন। অদলবদু যদি সত্যিই প্রয়োজন হয় তবে এটি ডিভাইসের মধ্যে চলে যাবে। আপনি কেবল অদলবদল ডিভাইস (বা ফাইল) বন্ধ করে দিতে পারেন, তবে আপনার যদি সত্যই দরকার হয় তবে অদলবদল স্পেসের দরকার হলে কঠোর জিনিসগুলি ঘটতে পারে।
মেমরির সাধারণ জিনিসগুলি ছাড়াও, টেম্ফগুলি স্বাপের স্থান ব্যবহার করে এবং বাকী মেমরির মতো অদলবদল করে। যদি আপনি এমন কোনও কিছু চালনা করেন যার জন্য প্রচুর টেম্প ডিস্কের প্রয়োজন হয় তবে এটি পৃষ্ঠাগুলি অদলবদল করতে বাধ্য করতে পারে। একবার তৈরি টেম্প ফাইলগুলি কয়েক মিনিটের পরে আর ব্যবহার করা যাবে না এবং ভাল প্রার্থী হ'ল অদলবদল ডিভাইসে স্থানান্তরিত করতে।
একটি চিম্টিতে আপনি কোনও অদলবদল ডিভাইস হিসাবে একটি ফাইল ব্যবহার করতে পারেন। আপনার অস্থায়ীভাবে অতিরিক্ত অদলবদলের স্থান প্রয়োজন হলে এটি দরকারী।
আমি স্কট সিরিয়েন্সের স্ক্রিপ্ট সম্পাদনা করে ফ্রি এর নতুন সংস্করণগুলির সাথে মেলে যা ইতিমধ্যে মোট উপলব্ধ মেমরি ক্ষেত্র অন্তর্ভুক্ত।
#!/bin/bash
free_mem="$(free | grep 'Mem:' | awk '{print $7}')"
used_swap="$(free | grep 'Swap:' | awk '{print $3}')"
echo -e "Free memory:\t$free_mem kB ($((free_mem / 1024)) MiB)\nUsed swap:\t$used_swap kB ($((used_swap / 1024)) MiB)"
if [[ $used_swap -eq 0 ]]; then
echo "Congratulations! No swap is in use."
elif [[ $used_swap -lt $free_mem ]]; then
echo "Freeing swap..."
sudo swapoff -a
sudo swapon -a
else
echo "Not enough free memory. Exiting."
exit 1
fi
free -m
,top -b 1