হ্যাঁ, লিনাক্সের ফাইল সিস্টেমগুলি কার্নেল মডিউল হিসাবে প্রয়োগ করা যেতে পারে। তবে এফইউএসই (ইউএসআরস্পেসে ফাইল সিস্টেম) ইন্টারফেসও রয়েছে, যা নিয়মিত ব্যবহারকারী-স্থান প্রক্রিয়াটিকে ফাইল-সিস্টেম ড্রাইভার হিসাবে কাজ করতে দেয়। আপনি যদি একটি নতুন ফাইল সিস্টেম প্রোটোটাইপ করে থাকেন তবে প্রথমে FUSE ইন্টারফেস ব্যবহার করে এটি প্রয়োগ করা পরীক্ষা এবং উন্নয়নকে আরও সহজ করে তুলতে পারে। আপনি একবার ফুস ফর্মে ফাইল সিস্টেমের ইন্টার্নালগুলি কাজ করার পরে, আপনি এর সম্পাদনা-অপ্টিমাইজ করা কার্নেল মডিউল সংস্করণটি প্রয়োগ করতে শুরু করতে পারেন।
কার্নেল স্পেসের মধ্যে একটি ফাইল সিস্টেম প্রয়োগের জন্য কিছু প্রাথমিক তথ্য এখানে রয়েছে। এটি বরং পুরানো (১৯৯ from সাল থেকে!) তবে আপনার যে ধরণের জিনিসগুলি করতে হবে সেগুলির জন্য কমপক্ষে আপনাকে একটি প্রাথমিক ধারণা দেওয়া উচিত।
আপনি যদি FUSE রুটে যেতে চান, তবে এখানে ফায়সফিউসের ইন্টারফেসের ইউজারস্পেসের রেফারেন্স প্রয়োগকরণ implementation
কার্নেল মডিউল হিসাবে ফাইল সিস্টেম ড্রাইভার
মূলত, আপনার ফাইল-সিস্টেম ড্রাইভার মডিউলের সূচনাকরণের জন্য কেবল একটি register_filesystem()
ফাংশন কল করা প্রয়োজন , এবং এটি একটি পরামিতি হিসাবে একটি কাঠামো দেয় যা একটি ফাংশন পয়েন্টার অন্তর্ভুক্ত করে যা আপনার ফাইল-সিস্টেম ড্রাইভারের মধ্যে ফাংশন চিহ্নিত করে যা আপনার ফাইল সিস্টেম সনাক্তকরণের প্রথম পদক্ষেপ হিসাবে ব্যবহৃত হবে টাইপ এবং এটি মাউন্ট। এই পর্যায়ে আর কিছুই হয় না।
যখন একটি ফাইল-সিস্টেম মাউন্ট হচ্ছে, এবং হয় কোনও ফাইল সিস্টেমের ধরণটি আপনার ড্রাইভারের সাথে মিলে যায় বা ফাইল-সিস্টেম টাইপ স্বয়ংক্রিয়-সনাক্তকরণ সম্পাদন করা হচ্ছে, কার্নেলের ভার্চুয়াল ফাইল-সিস্টেম (সংক্ষেপে ভিএফএস) সেই ফাংশনটিকে কল করবে। এটি মূলত বলেছে "এখানে একটি স্ট্যান্ডার্ড লিনাক্স ব্লক ডিভাইসের কার্নেল-স্তরের উপস্থাপনার জন্য একটি পয়েন্টার রয়েছে it এটি একবার দেখুন, দেখুন এটি কোনও কিছু আপনি পরিচালনা করতে পারেন কিনা, এবং তারপরে আপনি কী করতে পারেন তা আমাকে বলুন" "
এই সময়ে, আপনার ড্রাইভারটি ফাইল সিস্টেমের জন্য এটি সঠিক ড্রাইভার যাচাই করার জন্য যা যা প্রয়োজন পড়তে হবে, এবং তারপরে একটি কাঠামো ফিরে আসে যাতে আপনার ড্রাইভার সেই নির্দিষ্ট ফাইল সিস্টেমের সাথে আরও কার্য সম্পাদনের জন্য পয়েন্টারগুলি অন্তর্ভুক্ত করে। অথবা যদি ফাইল সিস্টেম ড্রাইভারটি ডিস্কের ডেটাটি স্বীকৃতি না দেয়, তবে এটির জন্য উপযুক্ত ত্রুটির ফলস্বরূপ প্রত্যাশা করা হবে, এবং তারপরে ভিএফএস হয় ইউজারস্পেসে একটি ব্যর্থতার কথা জানায় বা - যদি ফাইল-সিস্টেমের ধরণের স্বতঃ-সনাক্তকরণ করা হচ্ছে - অন্য একটি ফাইল সিস্টেম জিজ্ঞাসা করবে ড্রাইভার চেষ্টা করতে।
কার্নেলের অন্যান্য ড্রাইভার স্ট্যান্ডার্ড ব্লক ডিভাইস ইন্টারফেস সরবরাহ করবে, সুতরাং ফাইল সিস্টেম ড্রাইভারটিকে হার্ডওয়্যার সমর্থন প্রয়োগ করতে হবে না। মূলত, ফাইল সিস্টেমে ড্রাইভারটি ডিভাইস পয়েন্টারকে দেওয়া কার্নেল-স্তরের ফাংশন ব্যবহার করে ডিস্ক ব্লকগুলি পড়তে বা লিখতে পারে।
ভিএফএস স্তরটি প্রত্যাশা করে যে ফাইলসিস্টেম ড্রাইভারটি ভিএফএস স্তরটিতে বেশ কয়েকটি মানক ফাংশন উপলব্ধ করবে; ভিএফএস স্তরটি ফাইল সিস্টেমের সাথে অর্থবহ কিছু করার জন্য এগুলির কয়েকটি বাধ্যতামূলক, অন্যরা alচ্ছিক এবং আপনি যেমন একটি optionচ্ছিক ফাংশনে একটি পয়েন্টারের পরিবর্তে একটি NUL ফিরিয়ে দিতে পারেন।