সংক্ষিপ্ত উত্তর
জনসংযোগ অগ্রাধিকার স্তর। পিআর যত কম হবে, তত বেশি অগ্রাধিকার হবে process
পিআর নীচে হিসাবে গণনা করা হয়:
- সাধারণ প্রক্রিয়াগুলির জন্য: PR = 20 + NI (এনআই সুন্দর এবং -20 থেকে 19 অবধি)
- রিয়েল টাইম প্রক্রিয়াগুলির জন্য: PR = - 1 - রিয়েল_টাইম_প্রিয়রিটি
(রিয়েল_টাইম_প্রিয়রিটি 1 থেকে 99 এর মধ্যে)
দীর্ঘ উত্তর
সেখানে প্রসেস 2 ধরনের হয় স্বাভাবিক বেশী এবং রিয়েল টাইমে
স্বাভাবিক বেশী জন্য (এবং শুধুমাত্র তাদের জন্য), চমৎকার নিম্নরূপ প্রয়োগ করা হয়:
নিস
"বিশিষ্টতা" স্কেল -20 থেকে 19 পর্যন্ত চলে যায়, যেখানে -20 সর্বোচ্চ অগ্রাধিকার এবং 19 সর্বনিম্ন অগ্রাধিকার হয়। অগ্রাধিকার স্তরটি নিম্নলিখিত হিসাবে গণনা করা হয়:
PR = 20 + NI
যেখানে এনআই হ'ল চমৎকার স্তর এবং জনসংযোগ অগ্রাধিকার স্তর। সুতরাং আমরা যেমন দেখতে পাচ্ছি, -20 আসলে মানচিত্র 0, যখন 19 মানচিত্র 39।
ডিফল্টরূপে, একটি প্রোগ্রামের ভাল মান 0 হয় তবে মূল ব্যবহারকারীর দ্বারা নিম্নলিখিত কমান্ডটি ব্যবহার করে একটি নির্দিষ্ট সুন্দর মান সহ প্রোগ্রামগুলি চালু করা সম্ভব:
nice -n <nice_value> ./myProgram
প্রকৃত সময়
আমরা আরও এগিয়ে যেতে পারে। চমৎকার অগ্রাধিকারটি আসলে ব্যবহারকারী প্রোগ্রামগুলির জন্য ব্যবহৃত হয়। যেখানে ইউনিক্স / লিনাক্স সামগ্রিক অগ্রাধিকারের 140 টির মান রয়েছে, সেখানে দুর্দান্ত মান প্রক্রিয়াটিকে পরিসরের শেষ অংশে মানচিত্র তৈরি করতে সক্ষম করে (100 থেকে 139)। এই সমীকরণটি 0 থেকে 99 টি অবধি অ্যাক্সেসযোগ্য মানগুলিকে ছেড়ে দেয় যা একটি নেতিবাচক পিআর স্তরের সাথে মিলিত হবে (-100 থেকে -1 পর্যন্ত)। এই মানগুলিতে অ্যাক্সেস করতে সক্ষম হতে, প্রক্রিয়াটিকে "রিয়েল টাইম" হিসাবে বর্ণনা করা উচিত।
একটি লিনাক্স পরিবেশে 5 টি শিডিয়ুলিং নীতি রয়েছে যা নিম্নলিখিত কমান্ডের সাহায্যে প্রদর্শিত হতে পারে:
chrt -m
যা নিম্নলিখিত তালিকা প্রদর্শন করবে:
1. SCHED_OTHER the standard round-robin time-sharing policy
2. SCHED_BATCH for "batch" style execution of processes
3. SCHED_IDLE for running very low priority background jobs.
4. SCHED_FIFO a first-in, first-out policy
5. SCHED_RR a round-robin policy
সময়সূচী প্রক্রিয়াগুলিকে 2 টি গ্রুপে ভাগ করা যায়, সাধারণ শিডিয়ুলিং নীতিগুলি (1 থেকে 3) এবং আসল সময় নির্ধারণের নীতিগুলি (4 এবং 5)। রিয়েল টাইম প্রসেসগুলির সর্বদা স্বাভাবিক প্রক্রিয়াগুলির চেয়ে অগ্রাধিকার থাকবে। নিম্নলিখিত কমান্ডটি ব্যবহার করে একটি বাস্তব সময় প্রক্রিয়া বলা যেতে পারে (উদাহরণস্বরূপ কীভাবে একটি এসসিএইচআইআরআর নীতি ঘোষণা করতে হয়):
chrt --rr <priority between 1-99> ./myProgram
একটি বাস্তব সময় প্রক্রিয়া জন্য PR মান পেতে নিম্নলিখিত সমীকরণ প্রয়োগ করা হয়:
PR = -1 - rt_prior
যেখানে rt_prior 1 এবং 99 এর মধ্যে অগ্রাধিকারের সাথে সামঞ্জস্য করে that সেই কারণে অন্যান্য প্রক্রিয়াগুলির তুলনায় যে প্রক্রিয়াটি সর্বোচ্চ অগ্রাধিকার পাবে সেটি 99 নম্বর সহ কল করা হবে।
এটি গুরুত্বপূর্ণ যে রিয়েল টাইম প্রক্রিয়াগুলির জন্য, দুর্দান্ত মান ব্যবহৃত হয় না।
একটি প্রক্রিয়াটির বর্তমান "কমনীয়তা" এবং PR মান দেখতে নিম্নলিখিত কমান্ডটি কার্যকর করা যেতে পারে:
top
যা নিম্নলিখিত ফলাফলগুলি দেখায়:
চিত্রটিতে PR এবং NI মানগুলি প্রদর্শিত হয়। পিআর মান -51 যা প্রকৃত সময়ের মানের সাথে মিলে যায় সেই প্রক্রিয়াটি নোট করা ভাল। এছাড়াও কিছু প্রক্রিয়া রয়েছে যার PR মান "rt" হিসাবে বর্ণিত হয়েছে। এই মানটি আসলে -100 এর PR মানের সাথে মিলে যায়।
niceness
একটি negativeণাত্মক অগ্রাধিকার দেওয়ার জন্য BUT ব্যবহার করা যেতে পারে যাতেniceness
উচ্চতর অগ্রাধিকারের কাজগুলি ছাড়াই সেই কাজটি শেষ হয়ে যায়? (অর্থাত্ এটি হচ্ছেnice
এবং অন্যান্য অ্যাক্সেস সংস্থাগুলি দেওয়া হচ্ছে ? বা এটি কি আমাকে বিভ্রান্ত করেছে?