Home » COMPUTER » File System

File System

What is a file system?

একটি File হল কিছু related information এর সমষ্টি, যা secondary storage এর মধ্যে store করা থাকে। বা অন্য ভাবে বলতে গেলে, file হল logically related entities এর সমষ্টি। কিন্তু user এর কাছে file হল secondary storage এর মধ্যে ছোট একটি জায়গা যেখানে কিছু তথ্য সংরক্ষিত আছে।

কম্পিউটার এর মধ্যে store করা সব file এর ই কিছু নির্দিষ্ট capacity থাকে। বিভিন্ন file system হ’ল hard drive, flash drive বা অন্য কোনও storage device এ file গুলিকে সংগঠিত ও সংরক্ষণের করার বিভিন্ন উপায়। প্রতিটি storage device এ এক বা একাধিক পার্টিশন থাকে এবং প্রতিটি পার্টিশন একটি file সিস্টেমের দ্বারা “format” করা থাকে । ফর্ম্যাটিং প্রক্রিয়াটি ডিভাইসে মধ্যে একটি ফাঁকা file system তৈরি করে।

এই file system ঠিক করে ড্রাইভের মধ্যে file এর ডেটা কি ভাবে সাজান থাকবে । file system এর মধ্যে file সম্পর্কিত আরও যে তথ্য থাকে তা হল – filenames, permissions ইত্যাদি। সব file system নিজেদের মতন করে index তৈরি করে, যা হল একটি list যার মধ্যে থাকে file এর নাম এবং ওই file এর ডাটা কথায় কথায় save করা আছে তার location। এই index এর সাহায্যে operating system যে কোন file খুব সহজেই খুঁজে পায়।

file system এমন হতে হবে যাতে operating system সেটিকে চিনতে পারে, মানে যেন file system টি operating system কে সাপোর্ট করে। যাতে operating system একটি file system এর fileগুলি খুলতে পারে এবং এতে file save করতে পারে।

এত আলাদা আলাদা file system কেন?

সমস্ত file system সমান নয়। বিভিন্ন ফাইল সিস্টেমে তাদের data organize করার বিভিন্ন উপায় রয়েছে। কিছু file system অন্যদের চেয়ে দ্রুত কাজ করে, কারোর আবার কিছু অতিরিক্ত security features রয়েছে এবং কোনটাতে বড় storage capacity যুক্ত drives ক্ষমতা রয়েছে। কিছু file system হয়তো সহজে file corrupt হতে দেয় না আবার কনটা হয়তো additional speed প্রদান করে।

এমন কোন file system নেই যেখানে এই সমস্ত সুবিধা এক সঙ্গে পাওয়া সম্ভব। এবং প্রতিটি অপারেটিং সিস্টেমের নিজস্ব file system ব্যবহার করে। Microsoft, Apple, এবং the Linux kernel সকলেই তাদের নিজস্ব ফাইল সিস্টেমে কাজ করে। যাতে নতুন file systemগুলি দ্রুততর, আরও স্থিতিশীল হতে পারে, এবং বৃহত্তর storage ডিভাইসে আরও ভাল কাজ করে।

Overview of Common File Systems

সাধারনত আমরা যে সব file systemগুলির নিয়ে কাজ করি।

FAT32 : FAT32 একটি পুরানো windows file system, তবে এটি এখনও ছোট removable media devices গুলিতে ব্যবহার করা হয় । এটি কেবল ছোট স্টোরেজ ডিভাইসএ (512 MB থেকে 2TB ) যেমন digital cameras, game consoles, set-top boxes এ ব্যবহার করা হয়।

NTFS : Windows এর Modern versions গুলিতে – Windows XP থেকে নতুন – তাদের system partition এর জন্য NTFS file system ব্যবহার করে। NTFS file systemএ file size 4GB থেকে 64GB পর্যন্ত হতে পারে। NTFS, file এবং folder security প্রদান করে। NTFS partition এর প্রতিটি file এবং folder এ Access Control List থাকে। NTFS, bad-cluster mapping এর সুবিধা আছে।

HFS+ : MacOS, internal partition এর জন্য HFS+ use করে । কিন্তু MacOS, FAT32 file systemএও read এবং write করতে পারে, যদিও by default তারা কেবলমাত্র NTFS file system থেকে read করতে পারে ।

Ext2/Ext3/Ext4 : আপনি Linux ব্যবহার করলে Ext2, Ext3, এবং Ext4 file system দেখতে পাবেন। Ext2 একটি পুরানো file system, এবং এতে journaling এর মতো গুরুত্বপূর্ণ feature ছিলনা। – যদি Ext2 file system যুক্ত ড্রাইভে লেখার সময় বিদ্যুৎ চলে যায় বা computer crashes হয়ে যায়, ডেটা মুছে যেতে পারে। তবে Ext3 তে এই feature টি যুক্ত করা হয়েছে। Ext4 file system আরও আধুনিক এবং দ্রুত – এটি এখন বেশিরভাগ Linux এ ডিফল্ট file system । windows এবং MacOS এই file systemগুলিকে সমর্থন করে না – এই জাতীয় file system এর ফাইল অ্যাক্সেস করার জন্য third-party tool প্রয়োজন হবে।

ReiserFS : ReiserFS, Linux এর একটি alternative file system, যার সাহায্যে প্রচুর সংখ্যক ছোট আকারের file ভালো ভাবে রাখা যায়।

JFS : JFS file system, IBM company তাদের powerful computing system গুলির জন্য বিকশিত করেছে। এটি একটি open-source file system যা সমস্ত modern Linux version এ দেখা যায়।

Btrfs : Btrfs — “better file system” – এটি একটি নতুন Linux file system যা এখনও বিকাশাধীন।

Swap : Linux, “swap” file system টি আসলে কোনও file system নয়। “swap” হিসাবে ফর্ম্যাট করা একটি পার্টিশন অপারেটিং সিস্টেমের দ্বারা swap space হিসাবে ব্যবহার করা যেতে পারে – এটি উইন্ডোজের page file এর মতো, তবে এটির একটি dedicated partition প্রয়োজন।

File typeExtensionFunction
Executableexe, com, binRead to run machine language program
Objectobj, oCompiled, machine language not linked
Source CodeC, java, pas, asm, aSource code in various languages
Batchbat, shCommands to the command interpreter
Texttxt, docTextual data, documents
Word Processorwp, tex, rrf, docVarious word processor formats
Archivearc, zip, tarRelated files grouped into one compressed file
Multimediampeg, mov, rmFor containing audio/video information

File Directory কি?

File directory তে file সম্পর্কিত information রাখা থাকে, যেমন attributes, location এবং ownership। এর মধ্যে অধিকাংশ information ই storage সম্পর্কিত যা operating system দ্বারা বাবহ্রিত হয়।

Device directory তে যে সমস্ত information থাকে তা হল :

  • Name
  • Type
  • Address
  • Current length
  • Maximum length
  • Date last accessed
  • Date last updated
  • Owner id
  • Protection information

Directory এর সাহায্যে যে সমস্ত কাজ করা যায় সে গুলি হল :

  • Search for a file
  • Create a file
  • Delete a file
  • List a directory
  • Rename a file
  • Traverse the file system

Directory থাকার ফলে যে সুবিধা হয় তা হল :

  • Efficiency: যে কোন file সিস্টেম এর মধ্যে খুব দ্রুত খুঁজে বেড় করা যায়।
  • Naming: একই file এর পৃথক নাম বা পৃথক নামের একই file তৈরি করা সম্ভব, যার ফলে user এর বিশেষ সুবিধা হয়।
  • Grouping: file এরproperty অনুযায়ী Logical grouping করা সম্ভব।