رفتن به مطلب
مرورگر پیشنهادی آرساکیا گیم مرورگر های تحت موتور کرومیوم می‌باشد، برای دانلود روی مرورگر انتخابی خود کلیک کنید
Google Chrome Microsoft Edge Ungoogled Chromium Brave Opera GX Opera

ارسال‌های توصیه شده

به نام خداوند جان و خرد

 

سلامممممممممممممممممممممممممممممممممممممممممممممممممم می ارزم خدمت تمامی شما دوستان و همراهان همشیگی و عزیز

امیدوارم حالتون خوب, حال دلتون بهتر باشه!

 

امروز با یه موضوع عه خیلی جذابی در خدمتتونیم!

 

مبحثی که اگر نبود, شاید SSD M.2 NVMe های پرسرعت امروزی نبودن, SSD SATA های امروزی نبودن, و حتی HDD های اون زمان هم وجود نداشتن!

 

بله دوستان! فایل سیستم! که خیلی ها قطعا اسمش رو شنیدید

 

فایل سیستم ها مثل یک سیستم عامله کامل هستن برای دیسک عه شما (نگم که خود ویندوزتون رو هم که سیستم عامل اصلی هستش رو مدیریت میکنه!) که روی I/O و موارد مربوط به دیسک نظارت میکنن

شما فرض کنید یه فایل میسازید به اسم javad_is_teaching.txt, توش مینویسید:

This topic is about Filesystems

به محض اینکه Ctrl + S یا حالا CMD + S بزنید, نرم افزاری که توش هستید (مثل Notepad, Notepad++, VSCode و...) به فایل سیستم شما یه سیگنال میفرسته

میگه: عمو عمو! من میخوام اینو توی قسمتی از دیسک شما ذخیره کنم

فایل سیستم هم میره میره میره میرهههههه میگرده و کلی عملیات انجام میده و یه /bieh... چیز ببخشید یعنی یه return 0 نشون میده و میگه همه چیز فیکسه!

بعدش شما سرتونو میزارید رو بالشت و رویا پردازی میکنید که وای وای فردا با javad_is_teaching.txt چیکار حالا میخوام کنم؟

فردا میشه و شما لپ تاپتون رو باز میکنید و روی javad_is_teaching.txt دو بار کلیک میکنید

دوباره همینجا مثلا File Explorer عه شما میره میره میرهههههههههههه یه سیگنال میده میگه من اینو میخوام (دقیقا همینو!)

فایل سیستم هم میگه تو راضی یوزر راضی ولی من نارا... چیز یعنی منم راضی

پس اینم محتویات فایل

بعد شما محتویاتش رو توی Notepad عه خودتون میتونید مشاهده کنید

بعد حالا هزار تا کار میکنید و تموم میشه میره پی کارش

 

خلاصه ی موضوع اینه که فایل سیستم مسیوله مدیریته دیسک عه شما رو داره!

حالا میخواد هرچی باشه, از HDD و SATA SSD گرفته تا NVMe M.2 SSD و حتی دیسک کوانتومی گوگل و آی بی ام!

همشون در نهایت به پای فایل سیستم میوفتن!

اما بریم سراغ مود فنی تر...

 

1- فایل سیستم چیه؟

بزارین با یه مثال ساده بهتون توضیح بدم که فایل سیستم چیه

شما یه نویسنده رو در نظر بگیرید با یه کتابخونه رو

این نویسنده هه همینطوری پخش و پلا میاد مینویسه مینویسه مینویسههههههههههه بدون هیچ مرتب سازی ای

فقط مینویسه

هیچ کار دیگه ای انجام نمیده

مینویسه و میده دست کتابخونه

حالا کتابخونه که کاغذ هارو میگیره, دونه دونه میخونه, مرتب میکنه, میزاره توی قفس مخصوص به خودشون, دسته بندی میکنه, اطلاعات اظافه (Metadata) به هرکدوم میده (مثل نویسنده, تاریخ انتشار و...) و کلی کار دیگه انجام میده

مشتری هم میاد و میگرده دنبال کتاب خودش و میره

 

حالا بیاید یکم فنی ترش کنیم...

چیزی که شما میبینید, یه کاور خوشگل روی 0 و 1 هایی هستش که توی دیسکتون ذخیره شدن

ببینید, سه مرحله داریم در ذخیره کردن اطلاعات

1- تبدیل داده ها به 0 و 1

2- نوشتن اطلاعات در جای خالی دیسک

3- ساختار ذخیره سازی

دیسکی که شما دارید, در اصل متشکل از میلیون ها و حتی میلیارد ها بلوک هستش

بلوک به یه قسمتی از حافظه ی دیک شما میگن که میتونه 4 کیلوبایتی باشه هر بلوک, یا حتی دیوانه وار ترین قسمت, هر بلوک 1 بیت باشه! (یعنی هر بلوک یک فلیپ فلاپ که تقریبا هیچکس حاظر نیست همچین کار احمقانه ای رو انجام بده!!)

همونطوری که میدونید, هر کلمه ی ASCII شامله 8 بیت (1 بایت) میشه, یعنی هر 8 0 یا 1 ای که شما میبینید, برابر هستش با یه حرف مثل T, h, i, s و...

خب, حالا تا الان ذهنتون رو خواستم گرم کنم برای مباحث اصلی

 

1- تبدیل داده ها به 0 و 1

ببینید, همونطوری که گفته شد, در مرحله ی اول فایل سیستم شما میاد و داده های فایل شما رو به زبان ماشین (0 و 1) تبدیل میکنه تا دیسک بگه: هلو بپر تو گلو

در این مرحله, همون محتویات ای که گفتیم: This topic is about Filesystems

تبدیل میشه به باینری

یعنی دیسک شما چیزی که تحولیل میگیره اینه: 

01010100 01101000 01101001 01110011 00100000 01110100 01101111 01110000 01101001 01100011 00100000 01101001 01110011 00100000 01100001 01100010 01101111 01110101 01110100 00100000 01000110 01101001 01101100 01100101 01110011 01111001 01110011 01110100 01100101 01101101 01110011

(خوشبختانه بعد از ساعت ها محاسبات باینری تونستم واستون بنویسمش ای بی نتی)

این مرحله تازه شروع ماجرا هستش

 

2- نوشتن اطلاعات در جای خالی دیسک

مزمن اصلی از اینجا شروع میشه!

فایل سیستم شما میره تمام بلوک هارو میگرده (همونطوری که گفتم هر بلوک مقداری بیت/بایت/کیلوبایت/مگابایت و... هستش که دیسک شما رو به چندین قسمت تقسیم میکنه), وقتی به اولین بلوک خالی رسید, یه ترمز میزنه, حالا بر اساس مقدار بلوکی که دیسک شما بهش تقسیم شده (اغلب 4 کیلوبایت) داده هارو تا همون اندازه مینویسه (جمع اون باینری ای که براتون نوشتم میشه 320 بیت (یعنی چیزی حدود 31 بایت))

بعدش اگر از کیلوبایت بیشتر شد (که برای متون حجیم میشه اغلب) بلوک بعدی میره, اگه بیشتر میخواست, بلوک بعدی و به همین شکل پیش میره

 

3- ساختار ذخیره سازی

کار اصلی ما تازه از اینجا شروع میشه!

 

ببین, همونطوری که گفتم فایل سیستم شما هزار تا نکیرو منکر مینویسه تازه ولم نمیکنه!

میره هزارو یکمی هم مینویسه!

 

اما نکیرو منکره بدرد بخورااا

 

حالا ببینید, خود فایل سیستم دو بخش داره:

خود داده ها (Data Content): رشته های باینری که توی مرحله ی 1 انجام شدن رو مستقیما روی بلوک های فیزیکی مینویسه!

اطلاعات فایل (Metadata - در فایل سیستم های لینوکس Inode و در ویندوز MFT Record): این بخش خیلی مهمه, فایل سیستم یه جدولی داره واسه خودش (همون نکیرو منکره), توی این جدول, یه کارت شناسایی به فایل شما تعلق میگیره, اغلب شامل موارد زیر هستش:

نام فایل: javad_is_teaching.txt (در این مثال)

نوع فایل: Text

اندازه فایل (تعداد بایت‌های متن): 31

آدرس فیزیکی: اشاره گر به بلوک هایی که داده ها روشون ذخیره شدن

مجوزا: (مثلاً اجازه خواندن و نوشتن)

تایم‌ استمپ: زمان ساخت و ویرایش فایل

 

این میشه الان فایل ما و کل فایل سیستم ها

 

البته که خب بزارید یه چند تا فایل سیستم محبوب هم معرفی کنم که نگید عمو جواد نصفه کاره مارو ول کرد رفت:

NT (New Technology - Windows) (Microsoft):

NTFS (New Technology File System): مدرن ترین فایل سیستم مایکروسافت برای ویندوز و اتاندارد و پیشفرض فعلی

 

ReFS (Resilient File System): فایل‌ سیستم جدیدتر مایکروسافت که برای سرور ها و ذخیره‌ سازی طراحی شده (از ویندوز سرور ۲۰۱۲)

FAT32 (File Allocation Table 32): قدیمی اما هنوز بسیار پرکاربرد برای فلش‌ مموری‌ ها

exFAT (Extended File Allocation Table): توسعه‌ یافته برای فلش‌ مموری‌ ها و درایوهای با حجم بالا (پشتیبانی از فایل‌های بالای ۴ گیگابایت)

FAT16 & FAT12: نسخه‌ های بسیار قدیمی‌ تر (منسوخ شده برای دیسک‌ های سخت، اما در برخی سیستم‌ های نهفته استفاده می‌شوند)

HPFS (High Performance File System): توسط IBM و مایکروسافت برای OS/2 توسعه یافت، اما در ویندوز NT منسوخ شد

 

Linux (Linux - GNU) (Linux Foundation)

 

Btrfs (B-Tree File System): یکی از مدرن‌ ترین و پیشرفته‌ ترین فایل‌ سیستم‌ ها با قابلیت‌ هایی مثل Snapshot و فشرده‌ سازی

Ext4 (Fourth Extended Filesystem): رایج‌ ترین و استاندارد فعلی اکثر توزیع‌ های لینوکس

XFS: فایل‌ سیستم با کارایی بالا (High Performance) که اغلب در سرور ها استفاده میشه

Ext3: نسخه قدیمی‌ تر Ext4 که دارای Journaling است

Ext2: نسخه قدیمی بدون Journaling (گاهی برای درایوهای فلش استفاده می‌شود)

ReiserFS & Reiser4: فایل‌ سیستم‌ های نوآورانه اما کمتر محبوب (به شدت در زمان خودش محبوب بود, ولی سازنده ی فایل سیستم, پشمکی (منظور از پشمک از طرف من یعنی حرفه ای) به فامیلی Raiser که به شدت نوآوری کرد توی فایل سیستم ها ولی زنشو به قتل رسوند و همه ازش فاصله گرفتن)

JFS (Journaled File System): توسعه‌ یافته توسط IBM

F2FS (Flash-Friendly File System): بهینه‌ سازی شده برای حافظه‌ های SSD و فلش

ZFS (Zettabyte File System): (ریشه‌ ها در Solaris داره اما در لینوکس هم بسیار پرکاربرد است)

Minix: قدیمی و ساده، اغلب برای آموزش استفاده میشه

ISO 9660 & UDF: استانداردها برای دیسک‌ های نوری (CD/DVD)

 

macOS & iOS (Apple):

 

APFS (Apple File System): استاندارد فعلی برای macOS (از High Sierra به بعد)، iOS، iPadOS، tvOS و watchOS

HFS+ (Hierarchical File System Plus): همچنین با نام Mac OS Extended شناخته میشه, فایل‌ سیستم پیشین اپل که سال‌ ها استفاده میشد

HFS (Hierarchical File System): نسخه اصلی و قدیمی (منسوخ شده)

 

BSD (FreeBSD, NetBSD, OpenBSD, Darwin):

 

ZFS (Zettabyte File System): به خصوص در FreeBSD بسیار محبوب و پیشرفته است

UFS/FFS (Unix File System / Fast File System): فایل‌سیستم سنتی و کلاسیک BSD که هنوز هم به عنوان پیش‌ فرض در بسیاری از نسخه‌ ها استفاده میشه

UFS2: نسخه به‌ روزرسانی شده UFS برای پشتیبانی از حجم‌ های بزرگتر

HAMMER2: فایل‌ سیستم پیشرفته و اختصاصی DragonFly BSD (که از BSD مشتق شده است)

NILFS2: یک فایل‌ سیستم لاگ‌ ساختار (Log-structured) که در برخی سیستم‌های BSD-like استفاده میشه

 

Android (Linux Kernel) (Google):

 

F2FS (Flash-Friendly File System): فایل‌ سیستم پیشفرض برای پارتیشن داده‌ها (Data) در اکثر دستگاه‌ های اندرویدی مدرن (از اندروید ۸.۰ به بعد)

Ext4: برای سال‌ ها فایل‌ سیستم پیش‌ فرض اندروید بود و هنوز هم در بسیاری دستگاه‌ ها استفاده میشه

YAFFS2 (Yet Another Flash File System): در نسخه‌ های بسیار قدیمی اندروید استفاده میشد

JFFS2 (Journaling Flash File System v2): در دستگاه‌ های قدیمی‌ تر و سیستم‌ های نهفته (Embedded) مبتنی بر اندروید

F2FS / Ext4 (Dual): برخی دستگاه‌ ها از ترکیبی استفاده می‌کنند (مثلاً سیستم‌عامل روی Ext4 و داده‌ها روی F2FS)

 

و این شد از تاپیک ما

امیدوارم خوشتون اومده باشه و لذت برده باشید

خدایار و نگهدار تک تکتون باشه!

  • دوست دارم که 2
  • مرسی 2

Just Programming

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/
به اشتراک گذاری در سایت های دیگر

موضوع جالبی رو انتخاب کردی ، چیزی که بسیار مهمه ولی کمتر کسی بهش توجه می کنه.

موضوعی که توی زبان های جدید عملا فراموش شده و طریقه کار ویروس و هارد درایو رو توجیه میکنه.

و اینکه This topic is about Filesystems رو اشتباه باینری کردی یا مشکل تایپ شدن فرومه

-------

( 01011010 )A = 65( 01000001 ) - Z=90

( 01111010 )a=97( 01100001 ) - z=122

-------

ولی در کل مطالب بسیار کامل و جامع ، گیرایی برای مخاطب هم نسبتا عالی

در کل عالی❤️

فقط شماره معلم املاتو بده کارش دارم 😂

Carl.png

 

.Ah shit, here we go again

 

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1143843
به اشتراک گذاری در سایت های دیگر

هم اکنون، Carl گفته است:

موضوع جالبی رو انتخاب کردی ، چیزی که بسیار مهمه ولی کمتر کسی بهش توجه می کنه.

موضوعی که توی زبان های جدید عملا فراموش شده و طریقه کار ویروس و هارد درایو رو توجیه میکنه.

و اینکه This topic is about Filesystems رو اشتباه باینری کردی یا مشکل تایپ شدن فرومه

-------

( 01011010 )A = 65( 01000001 ) - Z=90

( 01111010 )a=97( 01100001 ) - z=122

-------

ولی در کل مطالب بسیار کامل و جامع ، گیرایی برای مخاطب هم نسبتا عالی

در کل عالی❤️

فقط شماره معلم املاتو بده کارش دارم 😂

دمت گرم عمو سی جی

ای بابا محاسباتمون به فنا رفتن پس 😂

شماره معلم املامم ندارم وگرنه خودمم خیلی کارش دارم ( فرض کن بهمون تو عید اندازه ی منشور هخامنشیان تکلیف داده :))) )

  • هاها 1

Just Programming

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1144503
به اشتراک گذاری در سایت های دیگر

در ۱۴۰۵/۱/۴ در 03:43، Integer گفته است:

مینویسه مینویسه مینویسههههههههههه

میره میره میرهههههههههههه

باحال بود خفن بود کسی تا حالا بهش اشاره نکرده بووووووودددددد

تو عمل صفر فقط استاد نظری

Wandy

d73412_267fe717-247ad702-24tumblr-3991be

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1152070
به اشتراک گذاری در سایت های دیگر

32 دقیقه قبل، Wandy گفته است:

باحال بود خفن بود کسی تا حالا بهش اشاره نکرده بووووووودددددد

ممنوووووووووووووننننننننننن ❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️

  • دوست دارم که 1

Just Programming

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1152127
به اشتراک گذاری در سایت های دیگر

خسته نباشی داداش واقعا خفن بود

HeMoSo 

                                             

                                                           

 

                                                

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1152578
به اشتراک گذاری در سایت های دیگر

2 ساعت قبل، Hemoso گفته است:

خسته نباشی داداش واقعا خفن بود

ممنونم عزیزم ❤️

Just Programming

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1152812
به اشتراک گذاری در سایت های دیگر

اونایی که خیلی سعی کردن بفهمن قضیه چیه و چیزی نفهمیدن درکنارش یچیزایی هم فهمیدن ولی متوجه نشدن چی بود 

1237981-Nalengi

1261044-Dembele

...

7b23-InShot-20260610-211428393.gif

 

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1153006
به اشتراک گذاری در سایت های دیگر

3 ساعت قبل، NalenGi گفته است:

اونایی که خیلی سعی کردن بفهمن قضیه چیه و چیزی نفهمیدن درکنارش یچیزایی هم فهمیدن ولی متوجه نشدن چی بود 

اونایی که فهمیدن قضیه چیه و اونایی که نفهمیدن قضیه چیه اما اونایی که میدونن قضیه چیه میدونن اگه بگن به اونایی که نمیدونن قضیه چیه بگن قضیه چیه تا اونایی که نمیدونن قضیه چیه بفهمن چیه براشون بد میشه:

Just Programming

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1153448
به اشتراک گذاری در سایت های دیگر

56 دقیقه قبل، Integer گفته است:

اونایی که فهمیدن قضیه چیه و اونایی که نفهمیدن قضیه چیه اما اونایی که میدونن قضیه چیه میدونن اگه بگن به اونایی که نمیدونن قضیه چیه بگن قضیه چیه تا اونایی که نمیدونن قضیه چیه بفهمن چیه براشون بد میشه:

@Slap Core :

1237981-Nalengi

1261044-Dembele

...

7b23-InShot-20260610-211428393.gif

 

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1153572
به اشتراک گذاری در سایت های دیگر

10 دقیقه قبل، NalenGi گفته است:

@Slap Core :

@Slap فیکه من جواد خیابانی عه واقعیم :D

 

Just Programming

لینک به دیدگاه
https://forum.arsacia.ir/topic/109884-file-systems/#findComment-1153590
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است!

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری
  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی، در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...