ফাইলের সংখ্যা আলাদা করে কেন?
স্পষ্টতই আপনি কেবল "একটি ফাইল অনুলিপি করুন" এর "ডেটা অনুলিপি করুন" এর দিকটিতে সম্পূর্ণ মনোনিবেশ করছেন। একটি ফাইল কেবলমাত্র ডেটার চেয়ে বেশি; এটি একটি ফাইল সিস্টেমের একটি সত্তা । একটি ফাইলের একটি নাম এবং বৈশিষ্ট্য এবং অনুমতি রয়েছে। "ফাইলটি অনুলিপি করা হয়" যখন ফাইল সম্পর্কে এই অতিরিক্ত তথ্য সমস্ত নথির সাথে নকল করতে হবে। এই ফাইল সিস্টেমটি ওভারহেড সম্পাদন করার জন্য উল্লেখযোগ্য পরিমাণে ডিস্ক I / O রয়েছে।
জেনেরিক ফাইল সিস্টেমে একটি (1) ফাইল অনুলিপি করার পদ্ধতিটি এমন কিছু হবে:
- ফাইল সিস্টেমে উত্স ফাইলটি সন্ধান করুন। (ক)
- উত্স ফাইলের জন্য ডিরেক্টরি এন্ট্রি ডিস্ক থেকে পড়ুন।
- পড়ার অনুমতি যাচাই করুন।
- ফাইল সিস্টেমে গন্তব্য ফাইলটি সন্ধান করুন। (খ)
- গন্তব্য ডিরেক্টরিতে লেখার অনুমতি যাচাই করুন।
- নতুন ফাইলটি সমন্বিত করতে প্রয়োজনে ডিরেক্টরিটি প্রসারিত করুন। (গ)
- ডিস্কে ডিরেক্টরি আপডেট করুন। (গ 1)
- বিনামূল্যে ব্লকগুলি সন্ধান করুন, তাদের বরাদ্দ করুন এবং টেবিলটি আবার আপডেট করুন। (ঘ)
- ফাইল ডেটা পড়ুন এবং গন্তব্য ফাইলটিতে অনুলিপি করুন (অর্থাত "ফাইলটি অনুলিপি করুন)"।
- (আকার এবং সময়) সহ নতুন ফাইলের জন্য ডিরেক্টরি এন্ট্রি আপডেট করুন। (ঙ)
- উত্স ডিরেক্টরি এন্ট্রি অ্যাক্সেস সময় আপডেট করুন। (চ)
(ক) খুব কমপক্ষে এর অর্থ বর্তমান ডিরেক্টরিটি অনুসন্ধান করা। অথবা পথটি ফাইল সিস্টেমের মূল থেকে শুরু হতে পারে এবং বেশ কয়েকটি স্তরের ডিরেক্টরিকে ট্র্যাভার করতে হবে।
(খ) খুব কমপক্ষে এর অর্থ বর্তমান ডিরেক্টরিটি অনুসন্ধান করা। অথবা পথটি ফাইল সিস্টেমের মূল থেকে শুরু হতে পারে এবং বেশ কয়েকটি স্তরের ডিরেক্টরিকে ট্র্যাভার করতে হবে। যদি গন্তব্য ফাইলটি ইতিমধ্যে বিদ্যমান থাকে, তবে অনুলিপিটি কীভাবে এগিয়ে যাওয়া বা বাতিল করতে হবে তা নির্ধারণ করুন। গন্তব্য ফাইলটি উপস্থিত না থাকলে একটি নতুন ডিরেক্টরি এন্ট্রি তৈরি করা আবশ্যক এবং সম্ভবত এর মধ্যে ডিরেক্টরিটি প্রসারিত করা হবে (যেমন ফাইল ব্লক (ওরফে ক্লাস্টার) বরাদ্দ ওভারহেড )।
(গ) ডিরেক্টরির সম্প্রসারিত করা থাকে, তাহলে, একটি বিনামূল্যে ব্লক খোঁজার করে একটি নতুন ব্লক বরাদ্দ সংশোধন নতুন বরাদ্দ দিয়ে বরাদ্দ টেবিল, এবং তারপর লিখতে ডিস্কে ব্লক (গুলি) আউট। যেহেতু বেশিরভাগ ফাইলসিস্টেমগুলি বরাদ্দ সারণীর একাধিক অনুলিপি বজায় রাখে, তার অর্থ ডিস্কে একাধিক লেখক।
(গ 1) একবার গন্তব্য সংকলন অবস্থিত, পড়া , ডিস্ক থেকে ডিরেক্টরির ব্লক সংশোধন কপি ফাইলের জন্য নতুন ডিরেক্টরি এন্ট্রি সঙ্গে এটি, এবং তারপর লিখতে ডিস্কে আউট ব্লক।
(ঘ) অর্ডার ফাইল কপি করার জন্য, বিনামূল্যে ব্লক ফাইন্ডিং দ্বারা ব্লক বরাদ্দ, সংশোধন নতুন বরাদ্দ দিয়ে বরাদ্দ টেবিল, এবং তারপর লিখতে ব্লক (গুলি) ডিস্কে বাইরে। যেহেতু বেশিরভাগ ফাইলসিস্টেমগুলি বরাদ্দ সারণীর একাধিক অনুলিপি বজায় রাখে, তার অর্থ ডিস্কে একাধিক লেখক। ডেটা অখণ্ডতা বজায় রাখার জন্য, ফাইল সিস্টেম ডিরেক্টরি এবং বরাদ্দ সারণীর জন্য ডিস্ক রাইটিং ক্রিয়াকলাপকে বিলম্ব (বিলম্ব এবং সংহতকরণ) করার চেষ্টা করতে পারে না , বরং নতুন ফাইল তৈরি হওয়ার সাথে সাথে বরাদ্দকরণের সাথে সাথে লিখিত ক্রিয়াকলাপটি সম্পাদন করে।
(ঙ) একবার ডাটা কপি complele হয়, আপডেট সঠিক ফাইল দৈর্ঘ্য এবং টাইমস্ট্যাম্প সঙ্গে কপি ফাইলের জন্য নতুন ডিরেক্টরি এন্ট্রি, এবং তারপর লিখতে ডিস্কে আউট ডিরেক্টরির ব্লক।
(চ) আপডেট করুন একটি নতুন "অ্যাক্সেস" টাইমস্ট্যাম্প সঙ্গে সোর্স ডিরেক্টরিতে প্রবেশ এবং তারপর লিখতে ডিস্কে আউট ডিরেক্টরির ব্লক।
সুতরাং কেবল একটি ফাইলের পরিবর্তে, আপনার প্রশ্নটি জিজ্ঞাসা করছে যে এক হাজার ফাইলের জন্য এই সমস্ত জিনিসগুলি করা কেবল ফাইলগুলির ডেটা অংশটি অনুলিপি করতে সময় যোগ করতে পারে? আপনি যদি 24MB- এর কেবল একটি ফাইল অনুলিপি করেন তবে আপনার এক হাজার ফাইলের অনুলিপি সময়ের সাথে তুলনা করার মতো কিছু আপনার থাকবে।
যখন ব্যাক-আপ একটি ফাইল সিস্টেম, একটি ডিস্ক বা পার্টিশন আরেকটি ফাইলসিস্টেম করতে পৃথক ফাইল কপি কদাচিৎ নিযুক্ত করা হয় কারণ এটি একটি বরং ধীর প্রক্রিয়া হিসাবে আপনি আবিষ্কৃত হয়েছে না। একটি দ্রুত পদ্ধতি হ'ল একটি একক সংরক্ষণাগার ফাইল তৈরি এবং লেখার জন্য যা উত্স ডিরেক্টরি এন্ট্রি এবং একটি বিশেষ ফাইল ফর্ম্যাটে ফাইলের বিষয়বস্তু ধারণ করে; ব্যাকআপ প্রোগ্রাম এবং * নিক্স কমান্ড 'টার' এই জাতীয় সংরক্ষণাগার ফাইল আউটপুট করতে পারে। (দ্রষ্টব্য যে 'টার' কেবল সংরক্ষণাগার ফাইলগুলি পরিচালনা করে এবং সংরক্ষণাগার + সংক্ষেপণ ইউটিলিটিগুলির মতো সংক্ষেপণ ব্যবহার করে না)) ব্যাকআপের দ্রুততম পদ্ধতি হ'ল ব্লক ডিভাইসে (কোনও ডিভাইসে ফাইল সিস্টেমের পরিবর্তে) লিখিত হয়, যাতে উত্স ফাইল সিস্টেমটি হয় উপেক্ষা করা (আরও ডেটা হিসাবে বিবেচিত) এবং উত্স ডিভাইসের একটি ব্লক-বাই-ব্লক চিত্র অনুলিপি সম্পাদন করা যেতে পারে।