আমি জানি যে যখন কোনও পৃষ্ঠার ক্যাশে পৃষ্ঠাটি সংশোধন করা হয়, তখন এটি নোংরা হিসাবে চিহ্নিত হয় এবং লিখিতব্যাকের প্রয়োজন হয়, তবে কী ঘটে যখন:
পরিস্থিতি: ফাইল / অ্যাপস / এক্সইএইচ, যা একটি এক্সিকিউটেবল ফাইল, সম্পূর্ণরূপে পৃষ্ঠা ক্যাশে পেজ করা হয় (এর সমস্ত পৃষ্ঠাগুলি ক্যাশে / স্মৃতিতে রয়েছে) এবং প্রক্রিয়া পি দ্বারা সম্পাদন করা হয়
অবিচ্ছিন্ন রিলিজ তারপরে / অ্যাপ্লিকেশনগুলি / এক্সইএইকে নতুন এক্সিকিউটেবলের সাথে প্রতিস্থাপন করে।
অনুমান 1: আমি ধরে নিয়েছি যে প্রক্রিয়া পি (এবং কোনও ফাইল বিবরণীর সাথে পুরানো এক্সিকিউটেবল উল্লেখ করে) অন্য কোনও সমস্যা ছাড়াই মেমরি / অ্যাপ্লিকেশন / EXE এ পুরানো ব্যবহার চালিয়ে যাবে, এবং যে নতুন প্রক্রিয়াটি সেই পথটি কার্যকর করার চেষ্টা করবে তা পাবে নতুন এক্সিকিউটেবল।
অনুমান 2: আমি ধরে নিয়েছি যে যদি ফাইলের সমস্ত পৃষ্ঠাগুলি মেমরির মধ্যে ম্যাপ না করা হয় তবে ফাইলটি প্রতিস্থাপন করা পৃষ্ঠাগুলির জন্য প্রয়োজনীয় একটি পৃষ্ঠার ত্রুটি না হওয়া পর্যন্ত জিনিস ঠিক থাকবে, এবং সম্ভবত একটি সেগফল্ট ঘটবে?
প্রশ্ন 1: আপনি যদি ভিএমটিচ এর মতো কিছু দিয়ে ফাইলের সমস্ত পৃষ্ঠাগুলি লক করেন তবে দৃশ্যপটটি কি আদৌ বদলে যায়?
প্রশ্ন ২: যদি / অ্যাপস / এএসইই একটি রিমোট এনএফএসে থাকে তবে তাতে কি কোনও পার্থক্য হবে? (আমি ধরে নেই)
আমার 2 অনুমানগুলি সংশোধন করুন বা যাচাই করুন এবং আমার 2 টি প্রশ্নের উত্তর দিন।
ধরে নেওয়া যাক এটি কোনও CentOS 7.6 বাক্স যা কোনও ধরণের 3.10.0-957.el7 কার্নেল সহ
আপডেট: এ সম্পর্কে আরও চিন্তা করে, আমি অবাক হয়েছি যদি এই দৃশ্যটি অন্য কোনও নোংরা পৃষ্ঠাগুলির চেয়ে আলাদা না হয় ..
আমি মনে করি যে নতুন বাইনারি লেখার প্রক্রিয়াটি একটি পঠন করবে এবং এটি সমস্ত পৃষ্ঠাযুক্ত হওয়ার পরে সমস্ত ক্যাশে পৃষ্ঠাগুলি পাবে এবং তারপরে সেই সমস্ত পৃষ্ঠা নোংরা চিহ্নিত করা হবে। যদি এগুলি লক করা থাকে তবে রেফের গণনা শূন্যে যাওয়ার পরে এগুলি কেবল মেমরির অধিকারী অকেজো পৃষ্ঠাগুলি হবে।
আমার সন্দেহ হয় যখন বর্তমানে সম্পাদনকারী প্রোগ্রামগুলি শেষ হয়, অন্য কিছু বাইনারি ব্যবহার করবে। এগুলি সব সঠিক বলে ধরে নিচ্ছি, আমি অনুমান করি এটি কেবলমাত্র আকর্ষণীয় যখন কেবলমাত্র কিছু ফাইল ফাইল করা থাকে।