/run/shm
(পূর্বে /dev/shm
) একটি ডিরেক্টরি তৈরি করা এবং এটি কোনও অ্যাপ্লিকেশনের জন্য একটি টেম্প ডিরেক্টরি হিসাবে ব্যবহার করা কি ভাল অনুশীলন ?
পটভূমি: আমি এমন একটি প্রোগ্রামের জন্য ব্ল্যাক বক্স পরীক্ষা লিখছি যা ফাইল এবং ডিরেক্টরি সহ প্রচুর স্টাফ করে। প্রতিটি পরীক্ষার জন্য আমি প্রচুর ফাইল এবং ডিরেক্টরি তৈরি করি এবং তারপরে প্রোগ্রামটি চালিত করি এবং তারপরে ফাইল এবং ডিরেক্টরিগুলির প্রত্যাশিত সেটটি তৈরি করি এবং তারপরে তুলনা করার জন্য ডিফারেন্ট চালাই। আমার এখন প্রায় 40 টি পরীক্ষা রয়েছে এবং তারা ইতিমধ্যে চালাতে 2 সেকেন্ডেরও বেশি সময় নিচ্ছে। জিনিসের গতি বাড়ানোর আশায় আমি কোনও ডিরেক্টরিতে র্যামডিস্কের ডিরেক্টরিতে পরীক্ষা চালাতে চাই।
র্যাম ডিস্ক সম্পর্কে গবেষণা করে আমি একটি প্রশ্নের উত্তর দিয়ে হোঁচট খেয়েছি যে একটি ডিরেক্টরি তৈরি করা /dev/shm
এবং এটি একটি টেম্প ডিরেক্টরি হিসাবে ব্যবহার করা ঠিক আছে । আরও কিছু গবেষণা করার পরে আমি ডেবিয়ান থেকে একটি উইকি পৃষ্ঠাতে হোঁচট খেয়েছি যে এটি /dev/shm
সরাসরি ব্যবহার করতে গেলে একটি ত্রুটি । আমি shm_*
ফাংশন ব্যবহার করা উচিত । দুর্ভাগ্যক্রমে shm_*
ফাংশনগুলি শেল স্ক্রিপ্টে ব্যবহারের জন্য উপলব্ধ নয় বলে মনে হচ্ছে।
আমি এখন বিভ্রান্ত টেম্প ডিরেক্টরি হিসাবে /run/shm
(পূর্বে /dev/shm
) ব্যবহার না করা ঠিক আছে কি না ?
/tmp
এটি আরও শব্দার্থক কল্পনা করব । যদি আপনার ব্যবহারকারীদের কাছে /dev/shm
জিনিসগুলির গতি বাড়ানোর জন্য অস্থায়ী ফাইলগুলি ব্যবহার করার জন্য পর্যাপ্ত পরিমাণে র্যাম থাকে তবে তারা এটি সেখানে মাউন্ট করবেন। তবে যদি তাদের পর্যাপ্ত পরিমাণে র্যাম না থাকে এবং এটি মাউন্ট করা তাদের কম্পিউটারকে অদলবদল ফাইলগুলি ব্যবহার করতে বাধ্য করে তাদের কম্পিউটারকে ধীর করে দেয়, তবে তারা আরও গুরুত্বপূর্ণ জিনিসগুলির জন্য তাদের র্যাম সংরক্ষণ করবে এবং /tmp
ফাইল সিস্টেমের জন্য সাধারণ ডিস্কের স্থান ব্যবহার করবে । অন্য কথায়, /tmp
আরও সুর্য।
/tmp
ভাগ করা মেমরিতেও মাউন্ট করেন।