مشاهده ساختار سلسله مراتبی دیسک c. ساختار دیسک Windows Explorer را بررسی کنید

دانشگاه دولتی آرخانگلسک

شعبه کوتلاس

بخش تمام وقت

دانشکده: فنی

تخصص: PGS

کار دوره

رشته: علوم کامپیوتر

موضوع: ساختار فایل دیسک

انجام

دانشجوی سال 1

ژوبروا اولگا

الکساندرونا

بررسی شد:

معرفی. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

§ 1 مفهوم یک سیستم فایل. . . . . . . . . . . . . . . . . . . .

§ 2 سیستم فایل MS-DOS. . . . . . . . . . . . . . . . . . . .

§ 3 سیستم فایل ویندوز 95. . . . . . . . . . . . . . . . . .

§ 4 سیستم فایل ویندوز NT. . . . . . . . . . . . . . . . . .

نتیجه. . . . . . . . . . . . . . . . . . . . . . . . . . . .

معرفی.

کتابچه راهنمای روش شناختی ماهیت مفهوم "سیستم فایل" را نشان می دهد.

که یکی از مفاهیم مهم در درس “نرم افزار

پشتیبانی کامپیوتری» و همچنین ساختار فایل سیستم های این چنینی را ارائه می دهد

سیستم عامل هایی مانند MS-DOS، ویندوز 95، ویندوز NT.

ساختار زمان حال با تلاش برای دستیابی به این هدف تعیین می شود.

راهنماها: مطالب موضوع به 4 قسمت اصلی تقسیم شده است (قسمت ها در

در قالب یک پاراگراف)، هر یک از قسمت ها نیز در صورت لزوم به تقسیم می شوند

قطعات با جزئیات کوچکتر

§ 1 مفهوم یک سیستم فایل.

1.1. تعریف سیستم فایل

فایل (به انگلیسی فایل) - پوشه، پوشه.

یک فایل یک ناحیه نامگذاری شده از حافظه در برخی فیزیکی است

رسانه ای که برای ذخیره اطلاعات در نظر گرفته شده است.

مجموع وجوه سیستم عاملارائه دسترسی به

اطلاعات موجود در رسانه های خارجی را سیستم مدیریت فایل یا

سیستم فایل

فایل سیستم بخشی کاربردی از سیستم عامل است.

سیستمی که وظیفه تبادل داده با حافظه خارجی را بر عهده دارد

دستگاه ها

سازماندهی دسترسی به فایل

ساختار دایرکتوری

امیدواریم ایده خوبی برای سازماندهی ذخیره کتاب در آن داشته باشید

کتابخانه و بر این اساس، روش جستجوی کتاب مورد نظر با کد آن از

کاتالوگ درک خود از این موضوع را به روشی که فایل‌ها را ذخیره می‌کنید منتقل کنید

روی دیسک و سازماندهی دسترسی به آن.

دسترسی - روش برقراری ارتباط با حافظه و فایلی که در آن قرار دارد

برای نوشتن و خواندن داده ها

نام درایو منطقی که قبل از نام فایل در مشخصات ظاهر می شود،

درایو منطقی را مشخص می کند که روی آن فایل جستجو شود. روی همون دیسک

دایرکتوری سازماندهی شده است که در آن نام کامل فایل ها و همچنین آنها وجود دارد

ویژگی ها: تاریخ و زمان ایجاد.

حجم (بر حسب بایت)؛ ویژگی های خاص مشابه سیستم کتابخانه

سازمان دایرکتوری نام کامل فایل ثبت شده در دایرکتوری،

به عنوان رمزی عمل می کند که توسط آن سیستم عامل پیدا می کند

محل فایل روی دیسک

دایرکتوری - فهرستی از فایل ها که مکان آنها را روی دیسک نشان می دهد.

دو حالت دایرکتوری وجود دارد - فعلی (فعال) و غیرفعال. ام‌اس

DOS دایرکتوری فعلی هر درایو منطقی را به خاطر می آورد.

دایرکتوری فعلی (فعال) دایرکتوری است که کاربر در آن کار می کند

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

دایرکتوری غیرفعال - دایرکتوری که با آن این لحظههیچ وقت

سیستم عامل MS DOS یک ساختار سلسله مراتبی را اتخاذ می کند

(شکل 9.1) سازمان دایرکتوری. هر دیسک همیشه دارد

یک دایرکتوری اصلی (ریشه). او در سطح 0 است

ساختار سلسله مراتبی و با نماد "\" نشان داده می شود. دایرکتوری ریشه

ایجاد شده در هنگام قالب بندی (راه اندازی اولیه، علامت گذاری) یک دیسک، است

اندازه محدود است و با استفاده از ابزارهای DOS قابل حذف نیست. به اصلی

فهرست ممکن است شامل دایرکتوری ها و فایل های دیگری باشد که توسط دستورات ایجاد می شوند

سیستم عامل و با استفاده از دستورات مناسب قابل حذف است.

برنج. 9.1. ساختار سازمانی دایرکتوری سلسله مراتبی

دایرکتوری والد دایرکتوری است که دارای دایرکتوری های فرعی است. دایرکتوری فرعی

دایرکتوری که در دایرکتوری دیگری گنجانده شده است.

بنابراین هر دایرکتوری حاوی دایرکتوری های سطح پایین تر می تواند

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

تابع دایرکتوری سطح بالا. به عنوان یک قاعده، اگر این

باعث سردرگمی نمی شود، از اصطلاح "کاتالوگ" به معنای هر یک استفاده کنید

دایرکتوری فرعی یا دایرکتوری والد بسته به زمینه.

دایرکتوری ها روی دیسک ها به صورت فایل های سیستمی سازماندهی می شوند. تنها چیزی

استثنا دایرکتوری ریشه است که یک فضای ثابت برای آن اختصاص داده شده است

دیسک دایرکتوری ها را می توان به گونه ای که گویی یک فایل معمولی هستند دسترسی داشت.

توجه داشته باشید. ساختار دایرکتوری ممکن است شامل دایرکتوری هایی باشد که نیستند

نام زیر شاخه ها مانند قوانین نامگذاری فایل ها است (نگاه کنید به.

زیر بخش 9.1). برای تفاوت های رسمی با فایل ها، معمولاً زیر شاخه ها

فقط نام ها را اختصاص دهید، اگرچه می توانید یک نوع را طبق قوانین مشابه اضافه کنید

و برای فایل ها

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

زنجیره ای از دایرکتوری های زیرمجموعه (دایرکتوری های فرعی) سطح i. در کاتالوگ

سوابق فایل ها و دایرکتوری ها را می توان در هر سطحی ذخیره کرد

سطح پایین تر. خالی نامیده می شوند.

در شکل 9.2 ساده ترین ساختار دایرکتوری را نشان می دهد، جایی که در اصلی است

دایرکتوری 0

فقط رکوردهای مربوط به فایل های دایرکتوری های سطح پایین ذخیره می شوند

وجود ندارد

در شکل شکل 9.3 ساختار سلسله مراتبی دایرکتوری را نشان می دهد که در دایرکتوری ها قرار دارد

هر سطحی رکوردهای مربوط به فایل ها و دایرکتوری ها را در سطح پایین تر ذخیره می کند. علاوه بر این

انتقال به دایرکتوری سطح پایین تر فقط می تواند سازماندهی شود

به طور متوالی از طریق دایرکتوری های فرعی.

برنج. 9.2. ساده ترین ساختار دایرکتوری بدون دایرکتوری

سطح پایین تر

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

سطح: هنگام تعیین دایرکتوری سطح پایین تر، از سه عدد استفاده می شود:

رقم اول شماره سطح را نشان می دهد. دومی شماره سریال این است

کاتالوگ در این سطح، سوم نشان می دهد که در چه سطحی است

نام او ثبت شده است هر دایرکتوری دارای یک نام KAT با فهرست است.

برای مثال، CAT342 نام دایرکتوری سطح سومی است که در آن ثبت شده است

کاتالوگ سطح دوم شماره 4

شما نمی توانید مستقیماً از دایرکتوری اصلی به دایرکتوری بروید، مثلاً سطح 5.

مرور همه دایرکتوری های سطح بالای قبلی ضروری است.

اصل توضیح داده شده در بالا برای سازماندهی دسترسی به یک فایل از طریق دایرکتوری

اساس سیستم فایل است.

فایل سیستم بخشی از سیستم عامل است که مکان و

دسترسی به فایل ها و دایرکتوری های روی دیسک

مفهوم ساختار فایل دیسک ارتباط نزدیکی با مفهوم سیستم فایل دارد.

منظور ما از نحوه قرارگیری آنها بر روی دیسک است: دایرکتوری اصلی،

زیر شاخه ها، فایل ها، سیستم عامل و اینکه کدام یک برای آنها اختصاص داده شده است

حجم بخش ها، خوشه ها، آهنگ ها.

قوانین تشکیل ساختار فایل دیسک. هنگام ایجاد یک فایل

ساختار دیسک، سیستم عامل MS DOS از تعدادی قوانین پیروی می کند:

یک فایل یا دایرکتوری را می توان با همین نام در آن ثبت کرد

دایرکتوری های مختلف، اما در یک دایرکتوری فقط یک بار.

ترتیب نام فایل ها و زیر شاخه ها در فهرست اصلی

دلخواه؛

فایل را می توان به چند قسمت تقسیم کرد که برای آن

بخش هایی از فضای دیسک با همان حجم در آهنگ های مختلف و

بخش ها

راه و دعوت

از شکل 9.1 - 9.3 می توانید ببینید که فایل از طریق دایرکتوری قابل دسترسی است

به لطف نام ثبت شده در آن این فایل. اگر دایرکتوری داشته باشد

ساختار سلسله مراتبی، سپس سیستم عامل دسترسی به فایل را سازماندهی می کند

بسته به موقعیت زیر شاخه ای که نام در آن ثبت شده است

فایل مورد نظر شما

دسترسی به فایل را می توان به صورت زیر سازماندهی کرد:

اگر نام فایل در دایرکتوری فعلی ثبت شده باشد، کافی است

برای دسترسی به یک فایل، فقط نام آن را مشخص کنید.

اگر نام فایل در دایرکتوری غیرفعال ثبت شده باشد، در حالی که در

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

دایرکتوری هایی که باید از طریق آنها به فایل دسترسی داشت.

Path زنجیره ای از دایرکتوری های فرعی است که باید در امتداد آنها پیموده شوند

ساختار سلسله مراتبی به دایرکتوری که فایل مورد نظر در آن ثبت شده است. در

هنگام تعیین یک مسیر، نام دایرکتوری ها به ترتیب نوشته شده و از هم جدا می شوند

با نماد \ از یکدیگر جدا می شوند.

تعامل کاربر با سیستم عامل با انجام می شود

با کمک خط فرمانروی صفحه نمایش نمایش داده می شود. در ابتدا

خط فرمان همیشه یک اعلان دارد که به پایان می رسد

> ممکن است اعلان نمایش دهد: نام درایو فعلی، نام جریان

دایرکتوری، زمان و تاریخ فعلی، مسیر، کاراکترهای جداکننده.

اعلان سیستم عامل یک نشانه روی صفحه نمایش اطلاعات است،

نشان می دهد که سیستم عامل برای وارد کردن دستورات کاربر آماده است.

مثال 9.8.

درایو فعلی فلاپی درایو A است.

دایرکتوری فعلی دایرکتوری اصلی است، همانطور که با نماد \ نشان داده شده است.

C:\CAT1\CAT2

دیسک فعلی است HDDج. کاتالوگ فعلی -

کاتالوگ سطح دوم CAT2، موجود در کاتالوگ سطح اول

CAT1 که به نوبه خود در اصل ثبت شده است

کاتالوگ

بسته به نوع، سه گزینه برای سازماندهی مسیر دسترسی به فایل وجود دارد

مکان های ثبت آن:

فایل در دایرکتوری فعلی است (بدون مسیر). هنگام سازماندهی

برای دسترسی به یک فایل، فقط باید نام کامل آن را مشخص کنید.

فایل در دایرکتوری غیرفعال یکی از سطوح پایین قرار دارد،

تابع دایرکتوری فعلی هنگام سازماندهی دسترسی به یک فایل

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

سطح پایینی که در این مسیر قرار دارد (از جمله دایرکتوری که در آن

این فایل ثبت شده است)؛

فایل در یک دایرکتوری غیرفعال در شاخه ای متفاوت از

محل دایرکتوری فعلی ساختار سلسله مراتبی. در

برای سازماندهی دسترسی به فایل، باید مسیر شروع را مشخص کنید

دایرکتوری اصلی، یعنی با کاراکتر \ شروع می شود. این با این واقعیت توضیح داده می شود که در

ساختار سلسله مراتبی، حرکت فقط به صورت عمودی از بالا امکان پذیر است -

انتقال افقی از دایرکتوری به دایرکتوری مجاز نیست.B

مثال های زیر نشان می دهد گزینه های ممکنراه ها.

مثال 9.9.

شرایط: فایل F1.TXT در دایرکتوری سطح 1 فعلی K1 ثبت شده است

هارد دیسکج. بنابراین دعوت C:\K1 روی صفحه نمایش داده می شود

توضیح: در این حالت مسیری وجود ندارد و برای دسترسی به فایل کافی است

فقط نام کامل آن F1.TXT را نشان دهید

مثال 9.10.

شرایط: فایل F1.TXT در دایرکتوری سطح 2 K2 هارد ثبت شده است

درایو C. دایرکتوری فعلی K1 است. بنابراین، یک دعوت نامه روی صفحه نمایش داده می شود

توضیح: در این صورت مسیر از دایرکتوری شروع می شود

K1 از طریق دایرکتوری زیر مجموعه خود K2 پایین می آید. بنابراین، قبل از

نام کامل فایل مسیر را از دایرکتوری فعلی K2 نشان می دهد

پس از آشنایی با مفهوم مسیر، به آنچه در بخش فرعی معرفی شد بازگردیم. 9.1

مفهوم مشخصات یک فایل مشخصات فایل کوتاه شده و

مشخصات کامل فایلی که مسیر در آن شرکت می کند. در شکل

شکل 9.4 گزینه هایی را برای قانون برای تولید مشخصات فایل نشان می دهد.

برنج. 9.4. فرمت های مشخصات (پارامتر اختیاری مشخص شده)

مثال 9.12. فرم کوتاه مشخصات فایل C:\KIT.BAS

فایل با برنامه BASIC KIT.BAS در قسمت اصلی قرار دارد

دایرکتوری هارد دیسک

مشخصات فایل فرم کامل

C:\CAT1\CAT2\BOOC1.TXT

فایل متنی BOOOK1.ТХТ در دایرکتوری دوم ثبت شده است

سطح CAT2 هارد دیسک C.

ساختار ورودی های دایرکتوری

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

با اطلاعاتی در مورد فایل های سطح پایین و زیر شاخه ها.

یک ورودی فایل در یک فهرست شامل نام و نوع فایل، اندازه فایل در است

بایت، تاریخ ایجاد، زمان ایجاد و تعدادی پارامتر دیگر مورد نیاز است

سیستم عامل برای سازماندهی دسترسی

ورودی یک زیر شاخه سطح پایین در دایرکتوری والد حاوی آن است

نام، ویژگی، تاریخ و زمان ایجاد.

بیایید گزینه های ممکن برای محتویات دایرکتوری را در نظر بگیریم. گزینه 1. در کاتالوگ

فقط رکوردهای مربوط به فایل ها ذخیره می شوند (شکل 9.5). قبل از ورود فایل

پیامی در مورد نام دایرکتوری نمایش داده می شود. در این مورد، این اصلی است

دایرکتوری فلاپی دیسک A. در انتهای محتویات دایرکتوری، پیامی در مورد ظاهر می شود

تعداد فایل های ذخیره شده روی دیسک و فضای خالی دیسک در

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

4 فایل 359560 بایت رایگان

تعداد فایل های روی دیسک حجم رایگان

فضای دیسک، گزینه byte2nd.

دایرکتوری فقط ورودی های مربوط به دایرکتوری های سطح پایین را ذخیره می کند (شکل 9.6).

برنج. 9.7. دایرکتوری اصلی فایل ها و زیر شاخه ها را ذخیره می کند

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

ورودی فوق در مورد میزان فضای خالی دیسک.

گزینه سوم: دایرکتوری سوابق فایل ها و دایرکتوری ها را ذخیره می کند

سطح پایین تر (شکل 9.7). از این ساختار مشخص است که در این دایرکتوری

3 فایل و 2 دایرکتوری سطح پایین BASIC و LEXICON وجود دارد. روی دیسک

فضای خالی 2.6575 مگابایت.

سه گزینه ارائه دایرکتوری که در بالا مورد بحث قرار گرفت، محتویات را نشان می دهد

دایرکتوری اصلی ساختار دایرکتوری، از سطح 1 و پایین تر،

یکسان است و تنها از این جهت که قبل از ورود فایل، با اصلی تفاوت دارد

و دایرکتوری های سطح پایین، دو ورودی با بیضی قرار می گیرند (شکل 9.8).

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

زیر شاخه (دایرکتوری سطح 1) KNIGA که شامل دو متن است

فایل های SVET و TON.

|دایرکتوری C:\KNIGA | | |

| |11-12-90 |09:40 |

| |10-10-91 |08:30 |

|svet txt 55700 |04-04-90 |10:05 |

|ton txt 60300 |03-05-91 |11:20 |

|2 فایل 912348 بایت رایگان | | |

|شکل 9.8. ساختار ورودی ها در یک زیر شاخه |

1.2. سیستم فایل FAT.

سیستم عامل ویندوز استفاده می شود، توسعه یافته برای

سیستم فایل DOS FAT که در آن برای هر پارتیشن و حجم DOS وجود دارد

بخش بوت، و هر پارتیشن DOS شامل دو نسخه از جدول است

جدول تخصیص فایل (FAT).

FAT ماتریسی است که رابطه را بیان می کند

بین فایل ها و پوشه های پارتیشن و موقعیت فیزیکی آنها بر روی هارد دیسک

در مقابل هر پارتیشن دیسک سخت دو پارتیشن به صورت متوالی قرار دارند

کپی های FAT پسندیدن بخش های بوت، FAT در خارج قرار دارد

ناحیه ای از دیسک که برای سیستم فایل قابل مشاهده است.

وقتی روی دیسک نوشته می شود، فایل ها لزوماً فضا را اشغال نمی کنند.

معادل اندازه آنها معمولا فایل ها به خوشه ها تقسیم می شوند

با اندازه معین، که می تواند در سراسر بخش پراکنده شود.

در نتیجه جدول FAT لیستی از فایل ها و آنها نیست

مکان ها، و لیستی از خوشه های بخش و محتویات آنها، و در پایان

ورودی های جدول FAT 12، 16 و 32 بیتی هستند

اعداد هگزادسیمال که اندازه آنها توسط برنامه FDISK تعیین می شود و

مقدار به طور مستقیم توسط برنامه FORMAT تولید می شود.

همه فلاپی دیسک ها و هارد دیسک ها تا حجم 16 مگابایت

FAT از عناصر 12 بیتی استفاده می کند. سخت و درایوهای قابل جابجاییداشتن

اندازه از 16 مگابایت یا بیشتر، معمولاً از عناصر 16 بیتی استفاده می شود.

فایل سیستم FAT در تمام نسخه های MS-DOS و در نسخه اول استفاده شد

دو نسخه OS/2 (نسخه های 1.0 و 1.1). هر جلد منطقی داشت

FAT خود، که دو عملکرد را انجام می داد: حاوی اطلاعات

توزیع برای هر فایل در حجم در قالب لیستی از انجمن های ماژول

توزیع ها (خوشه ها) و نشان داد که کدام ماژول های توزیع رایگان هستند.

زمانی که جدول FAT اختراع شد، یک راه حل عالی برای آن بود

مدیریت فضای دیسک، عمدتا به دلیل فلاپی دیسک،

اندازه ای که در آن استفاده می شد به ندرت بیشتر از چند مگابایت بود.

FAT آنقدر کوچک بود که برای همیشه در حافظه باقی بماند،

اجازه دسترسی تصادفی بسیار سریع به هر قسمت را دارد

هر فایل

زمانی که FAT به دیسکهای سخت، او خیلی بزرگ شد

برای عملکرد سیستم مقیم حافظه و کاهش یافته است.

علاوه بر این، از آنجایی که اطلاعات مربوط به فضای آزاد دیسک

فضا "در سراسر" تعداد زیادی از بخش های FAT توزیع شد،

هنگام تخصیص فضای فایل غیر عملی بود و

ثابت شده است که تکه تکه شدن فایل مانعی برای کارایی بالا است.

علاوه بر این، استفاده از خوشه های نسبتا بزرگ بر روی هارد

دیسک ها به تعداد زیادی از مناطق استفاده نشده منجر شدند، از زمانی که در

به طور متوسط، برای هر فایل، نیمی از خوشه هدر رفت.

چندین سال است که مایکروسافت و آی‌بی‌ام در حال تلاش برای گسترش این موضوع هستند

عمر فایل سیستم FAT به دلیل حذف محدودیت های حجم،

بهبود استراتژی های توزیع، ذخیره نام مسیر، و جابجایی

جداول و بافرها در حافظه توسعه یافته اما فقط می توان آنها را در نظر گرفت

به عنوان اقدامات موقت، زیرا سیستم فایل به سادگی مناسب نبود

دستگاه های دسترسی تصادفی بزرگ

§ 2 سیستم فایل سیستم عامل MS-DOS.

یکی از مفاهیم سیستم فایل MS DOS یک دیسک منطقی است.

درایوهای منطقی:

DOS، هر دیسک منطقی یک دیسک مغناطیسی جداگانه است. هر کدوم منطقی

دیسک نام منحصر به فرد خود را دارد. به عنوان یک نام درایو منطقی

از حروف الفبای انگلیسی از A تا Z (شامل) استفاده می شود.

تعداد درایوهای منطقی، بنابراین بیشتر از 26 نیست.

حروف A و B صرفاً برای فلاپی دیسک های موجود در رایانه شخصی IBM محفوظ است (

با شروع با حرف C، درایوهای منطقی (پارتیشن ها) HDD نامیده می شوند.

وینچستر).

تصاویر تصویری از یک دیسک منطقی را نشان می دهند.

اگر یک رایانه شخصی IBM فقط یک FDD داشته باشد، حرف B حذف می شود

فقط درایوهای منطقی A و C می توانند درایوهای سیستم باشند. فایل

ساختار دیسک منطقی:

برای دسترسی به اطلاعات روی دیسک (واقع در یک فایل)، شما نیاز دارید

آدرس فیزیکی اولین سکتور (Nsurfaces+Ntracks+Nsectors) را بدانید.

تعداد کل خوشه های اشغال شده توسط این فایل، آدرس بعدی

اگر اندازه فایل بزرگتر از اندازه یک خوشه باشد، خوشه و غیره. همه

بسیار مبهم، دشوار و غیر ضروری است.

MS DOS کاربر را از چنین کاری نجات می دهد و خودش آن را انجام می دهد. برای

ارائه دسترسی به فایل ها - سیستم فایل MS DOS سازماندهی و

یک ساختار فایل خاص را روی یک دیسک منطقی حفظ می کند.

عناصر ساختار فایل:

شروع بخش(بخش بوت استرپ، بخش بوت)،

ناحیه داده (فضای آزاد باقیمانده دیسک)

این عناصر توسط برنامه های خاص (در محیط MS DOS) در فرآیند ایجاد می شوند

مقداردهی اولیه دیسک

بخش شروع (بخش راه‌اندازی، بخش بوت):

در اینجا اطلاعات مورد نیاز MS DOS برای کار با دیسک است:

شناسه سیستم عامل (اگر دیسک سیستمی باشد)،

اندازه بخش دیسک،

تعداد بخش ها در خوشه،

تعداد بخش های یدکی در ابتدای دیسک،

تعداد کپی های FAT روی دیسک (استاندارد - دو)،

تعداد موارد موجود در فهرست،

تعداد سکتورهای روی دیسک،

نوع فرمت دیسک،

تعداد بخش ها در FAT،

تعداد بخش ها در هر مسیر،

تعداد سطوح

بلوک بوت سیستم عامل،

پشت بخش شروع FAT است.

FAT (جدول تخصیص فایل):

ناحیه داده دیسک (به بالا مراجعه کنید) در MS DOS به عنوان یک دنباله ارائه شده است

خوشه های شماره گذاری شده

FAT آرایه ای از عناصر است که به خوشه های ناحیه داده دیسک آدرس می دهد.

هر خوشه ناحیه داده مربوط به یک عنصر FAT است.

عناصر FAT به عنوان زنجیره ای از پیوندها برای خوشه های پرونده در منطقه عمل می کنند

FAT یک عنصر بسیار مهم از ساختار فایل است. نقض در FAT می تواند

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

به همین دلیل است که دو نسخه از FAT روی دیسک ذخیره می شود. برنامه های خاصی وجود دارد

که بر وضعیت FAT نظارت می کنند و تخلفات را اصلاح می کنند.

دایرکتوری ریشه:

این یک ناحیه خاص از دیسک است که در طول فرآیند اولیه سازی ایجاد شده است.

(قالب بندی) دیسک که حاوی اطلاعاتی در مورد فایل ها و دایرکتوری ها است،

روی دیسک ذخیره می شود

دایرکتوری ریشه همیشه روی یک دیسک فرمت شده وجود دارد. بر

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

دایرکتوری برای یک دیسک داده شده یک مقدار ثابت است، بنابراین حداکثر

تعداد فایل ها و سایر دایرکتوری های (کودک) "ضمیمه" به آن

(زیر دایرکتوری ها) - کاملاً تعریف شده است.

بنابراین، با جمع‌بندی تمام موارد فوق، می‌توان نتیجه گرفت MS-DOS - 16-

سیستم عامل بیت در حال اجرا در حالت پردازنده واقعی.

§ 4 فایل سیستم عامل سیستم های ویندوز 95.

4.1. پیشینه ایجاد FAT 32.

در زمینه کامپیوترهای شخصی، بحرانی در سال 1987 به وجود آمد.

ویژگی های سیستم فایل FAT که توسط مایکروسافت بیش از ده سال توسعه یافته است

سال ها قبل برای مترجم Standalone Disk Basic و بعد از آن

سازگار برای سیستم عامل DOS خسته شد. چربی

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

ظرفیت های بزرگتر برای کاربران رایانه شخصی کاملاً بی فایده بود.

برخی از فروشندگان مستقل راه حل های خود را ارائه کرده اند

این مشکل، اما تنها با ظهور DOS 4.0 این بحران برطرف شد -

در حالی که برای.

تغییرات قابل توجهی در ساختار سیستم فایل در DOS 4.0

به سیستم عامل اجازه داد تا با دیسک هایی با ظرفیت حداکثر 128 مگابایت کار کند. با

اضافات جزئی بعدی این حد را افزایش داد

2 گیگابایت. در آن زمان به نظر می رسید که این مقدار حافظه بیشتر از هر مقدار باشد

نیازهای قابل تصور با این حال، اگر تاریخچه رایانه های شخصی چیزی باشد

و دقیقاً آموزش داد که ظرفیت «بیشتر از هر چیزی است که قابل تصور باشد

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

در واقع، هارد دیسک ها در حال حاضر به صورت تجاری در دسترس هستند

ظرفیت معمولاً 2.5 گیگابایت و بالاتر است و گاهی اوقات بسیار زیاد و

سقف 2 گیگابایتی که ما را از محدودیت ها رها کرد، به دیگری تبدیل شده است

مانعی که باید بر آن غلبه کرد

4.2. توضیحات FAT 32.

مایکروسافت افزونه جدیدی را برای سیستم های ویندوز 95 توسعه داده است.

FAT - سیستم های FAT32، بدون هیچ گونه بیانیه بلند ارائه شده در

OEM Service Pack 2.

سیستم FAT32 فقط در رایانه های شخصی جدید نصب می شود و روی آن حساب نکنید

وقتی به آن می روید آن را دریافت کنید نسخه جدیدویندوز 95 اگرچه ادعا می کند

مایکروسافت، این افزونه بخشی از بسته اصلی خواهد شد

ارتقاء ویندوز

4.2.1. مناطق دیسک

این فایل سیستم تعدادی از مناطق ویژه را فراهم می کند

دیسک اختصاص داده شده برای سازماندهی فضای دیسک در طول خود

قالب بندی - رکورد هد بوت، جدول پارتیشن دیسک، رکورد

دانلودها، جدول تخصیص فایل (که سیستم FAT از آن گرفته شده است

نام) و دایرکتوری ریشه.

بر سطح فیزیکیفضای دیسک به 512 بایت تقسیم می شود

مناطقی به نام بخش سیستم FAT فضا را برای فایل ها اختصاص می دهد

بلوک هایی که از تعداد صحیح بخش تشکیل شده اند و خوشه نامیده می شوند.

تعداد سکتورها در یک خوشه باید مضربی از توان دو باشد. در مایکروسافت

این خوشه ها واحدهای تخصیص حافظه نامیده می شوند و در

گزارش SCANDISK اندازه آنها را نشان می دهد، برای مثال "هر کدام 16384 بایت

واحد تخصیص حافظه."

4.2.2. زنجیره چربی

FAT پایگاه داده ای است که خوشه های دیسک را پیوند می دهد

فضاهای فایل این پایگاه داده برای هر خوشه فراهم می کند

فقط یک عنصر دو عنصر اول حاوی اطلاعاتی در مورد

سیستم چربی. عناصر سوم و بعدی مطابقت دارند

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

برای فایل ها عناصر FAT می توانند حاوی چندین مقدار خاص باشند،

نشان می دهد که

خوشه رایگان است، یعنی. توسط هیچ فایلی استفاده نمی شود.

خوشه شامل یک یا چند بخش با نقص فیزیکی و

نباید استفاده شود؛

این خوشه آخرین خوشه فایل است.

برای هر عنصر استفاده شده توسط فایل، اما نه آخرین خوشه

FAT شامل شماره خوشه بعدی است که توسط فایل اشغال شده است.

هر دایرکتوری - بدون توجه به ریشه یا زیر شاخه - نیز

یک پایگاه داده است. در دایرکتوری DOS برای هر فایل

یک رکورد اصلی وجود دارد (B محیط ویندوز 95 برای نام های طولانی

فایل ها، ورودی های اضافی وارد شده است). برخلاف FAT که هر عنصر

شامل یک فیلد واحد است، ورودی‌های یک فایل در یک فهرست شامل

چندین زمینه برخی از فیلدها - نام، پسوند، اندازه، تاریخ و زمان -

با استفاده از دستور DIR روی صفحه نمایش داده می شود. اما سیستم FAT فراهم می کند

فیلدی که با دستور DIR نمایش داده نمی شود فیلدی است که ابتدا شماره گذاری شده است

کلاستر اختصاص داده شده برای فایل

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

درخواست برای ارائه آن به همراه محتویات برخی از فایل ها، سیستم عامل از طریق آن نگاه می کند

یک ورودی دایرکتوری برای پیدا کردن اولین خوشه آن فایل. سپس او

به ورودی FAT برای یک خوشه معین برای یافتن خوشه بعدی دسترسی پیدا می کند

خوشه در زنجیره این فرآیند را تا زمانی که آخرین مورد شناسایی شود تکرار کنید

خوشه فایل، سیستم عامل دقیقاً مشخص می کند که کدام خوشه ها متعلق به این هستند

فایل و با چه ترتیبی از این طریق سیستم می تواند ارائه دهد

هر بخشی از فایل را که درخواست می کند برنامه ریزی کنید. این روش سازماندهی

این فایل یک زنجیره FAT نامیده می شود.

در سیستم FAT، فایل ها همیشه به تعداد صحیح خوشه ها اختصاص داده می شوند. در 1.2-

هارد دیسک گیگابایت با کلاسترهای 32 کیلوبایتی در فهرست را می توان مشخص کرد،

چه اندازه ای فایل متنیحاوی کلمات "سلام، دنیا" است

تنها 12 بایت است، اما در واقع این فایل 32 کیلوبایت فضای دیسک را اشغال می کند

فضا. قسمت استفاده نشده از خوشه فضای هدر رفته نامیده می شود

(سستی). در فایل های کوچک، تقریباً کل خوشه ممکن است از بین برود

مکان، و به طور متوسط ​​تلفات نصف اندازه خوشه است.

روی هارد 850 مگابایتی با کلاسترهای 16 کیلوبایتی در اندازه متوسط

فایل هایی در حدود 50 کیلوبایت حدود 16 درصد از فضای دیسک اختصاص داده شده برای فایل ها

فضا به فایل های استفاده نشده اما اختصاص داده شده از دست خواهد رفت

یکی از راه‌های آزاد کردن فضای دیسک استفاده از آن است

برنامه های فشرده سازی دیسک مانند DriveSpace که "از دست رفته" را برجسته می کند

space" برای استفاده توسط فایل های دیگر.

4.2.3. تغییرات دیگر در FAT32

برای اطمینان از توانایی کار با تعداد افزایش یافته از خوشه ها، در

ورودی های دایرکتوری برای هر فایل باید 4 بایت را به فایل اولیه اختصاص دهند

خوشه فایل (به جای 2 بایت در سیستم FAT16). به طور سنتی، هر ورودی در

دایرکتوری شامل 32 بایت است (شکل 1). در وسط این رکورد 10 بایت وجود دارد

استفاده شده (بایت 12 تا 21) که مایکروسافت برای آن رزرو کرده است

نیازهای خود در آینده دو مورد از آنها در حال حاضر به عنوان اختصاص داده شده است

بایت های اضافی مورد نیاز برای نشان دادن خوشه شروع در سیستم

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

نمونه های FAT، اما فقط یکی از آنها استفاده شد. با انتقال به FAT32

سیستم عامل می تواند با هر یک از این کپی ها کار کند. یکی دیگر

تغییر این است که دایرکتوری ریشه، که قبلا ثابت بود

اندازه و فضای دیسک کاملاً تعریف شده، اکنون می توانید آزادانه

در صورت نیاز رشد کنید، مانند یک زیر شاخه. الان وجود نداره

محدودیت در تعداد ورودی ها در دایرکتوری ریشه این امر به ویژه مهم است

زیرا برای هر نام فایل طولانی چندین ورودی وجود دارد

کاتالوگ

ترکیبی از رومینگ ریشه و ویژگی

استفاده از هر دو نسخه از FAT پیش نیازهای خوبی برای بدون مانع است

تغییر اندازه پویا پارتیشن های دیسک، به عنوان مثال کاهش یک پارتیشن

به منظور آزاد کردن فضا برای یک سیستم عامل دیگر. این جدید

این رویکرد نسبت به مواردی که در برنامه های شخص ثالث استفاده می شود، خطرناک تر است

برای تغییر پارتیشن های دیسک هنگام کار با FAT16.

از تمام موارد فوق می توان نتیجه گرفت:

MS-DOS یک سیستم عامل کاملاً 16 بیتی بود و اجرا می شد

حالت پردازنده واقعی که در نسخه های ویندوزقسمت 3.1 کد 16 بود

بیت و برخی 32 بیتی هستند. ویندوز 3.0 از حالت واقعی پشتیبانی می کند

عملکرد پردازنده، هنگام توسعه نسخه 3.1 تصمیم گرفته شد که آن را کنار بگذاریم

حمایت کردن.

ویندوز 95 یک سیستم عامل 32 بیتی است که

کد بیت برای سازگاری با حالت MS-DOS. ویندوز 95 32 بیتی

کد بیت

§ 5 سیستم فایل سیستم عامل ویندوز NT.

5.1. توضیح کوتاهسیستم عامل ویندوز NT.

در حال حاضر، صنعت کامپیوتر جهانی بسیار در حال توسعه است

عملکرد سیستم افزایش می یابد و بنابراین

توانایی پردازش حجم زیادی از داده ها در حال افزایش است.

سیستم عامل های کلاس MS-DOS دیگر نمی توانند با این مشکل کنار بیایند

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

کامپیوترها بنابراین در اخیراانتقال به قدرتمندتر و

پیشرفته ترین سیستم عامل های کلاس یونیکس که نمونه ای از آنهاست

ویندوز NT است که توسط شرکت مایکروسافت منتشر شده است

زمانی که کاربر برای اولین بار سیستم عامل مایکروسافت را می بیند

ویندوز NT، شباهت خارجی آشکار به

رابط مورد علاقه سیستم Windows 3.+. با این حال، این یک شباهت قابل مشاهده است

فقط جزئی است بخشی از ویندوز N.T.

ویندوز NT یک سیستم عامل 32 بیتی با

چندوظیفه ای اولویت دار به عنوان اجزای اساسی

سیستم عامل شامل ویژگی های امنیتی و

سرویس شبکه توسعه یافته

ویندوز NT همچنین سازگاری با بسیاری دیگر را فراهم می کند

سیستم عامل و فایل و همچنین شبکه ها.

همانطور که در شکل زیر نشان داده شده است، ویندوز NT است

یک سیستم عامل ماژولار (پیشرفته تر از یکپارچه) که

متشکل از ماژول های نسبتا ساده به هم پیوسته مجزا است.

ماژول های اصلی ویندوز NT (به ترتیب فهرست شده اند

دنبال کردن از سطح پایین معماری به بالا): سطح

انتزاعات سخت افزاری HAL (لایه انتزاعی سخت افزار)، هسته (هسته)،

سیستم اجرایی (Executive)، زیرسیستم های محافظت شده (محافظت شده

زیرسیستم ها) و زیرسیستم های محیطی.

ساختار ماژولار ویندوز NT

5.2. سیستم فایل ویندوز NT.

زمانی که ویندوز NT برای اولین بار منتشر شد، شامل آن شد

پشتیبانی از سه سیستم فایل این جدول تخصیص فایل (FAT) است.

ارائه سازگاری با MS-DOS، یک سیستم فایل با افزایش یافته است

عملکرد (HPFS)، ارائه سازگاری با LAN Manager و

یک سیستم فایل جدید به نام Emerging Technologies File System

NTFS در مقایسه با مواردی که روی آن استفاده می شود، مزایای زیادی داشت

آن نقطه برای اکثر سرورهای فایل سیستم های فایل است.

برای اطمینان از یکپارچگی داده ها، NTFS دارای یک گزارش تراکنش است.

این رویکرد امکان از دست دادن اطلاعات را رد نمی کند، با این حال،

به طور قابل توجهی احتمال دسترسی به سیستم فایل

حتی اگر یکپارچگی سیستم به خطر بیفتد امکان پذیر خواهد بود

سرور این امر با استفاده از یک گزارش تراکنش امکان پذیر می شود

ردیابی تلاش های ناقص برای نوشتن روی دیسک در طول بوت بعدی

ویندوز NT. گزارش تراکنش نیز برای بررسی دیسک استفاده می شود

وجود خطا به جای بررسی هر فایل، در صورت استفاده

جداول تخصیص فایل

یکی از مزایای اصلی NTFS امنیت است. NTFS

امکان ایجاد ورودی های کنترل دسترسی (Access Control

ورودی ها، ACE) به لیست کنترل دسترسی (ACL). ACE

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

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

دایرکتوری یا فایل این دسترسی ممکن است شامل توانایی خواندن باشد،

ضبط، حذف، اجرا و حتی داشتن فایل ها.

از سوی دیگر، ACL یک ظرف حاوی یک است

یا رکوردهای بیشتر ACE. این به شما امکان می دهد دسترسی به برخی موارد را محدود کنید

کاربران یا گروه های کاربری به دایرکتوری ها یا فایل های خاص در

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

حداکثر 255 کاراکتر و حاوی حروف بزرگ و کوچک در هر کدام

دنباله ها یکی از ویژگی های اصلی NTFS این است

ایجاد خودکار نام های معادل سازگار با MS-DOS.

NTFS همچنین دارای ویژگی فشرده سازی است که اولین بار در نسخه NT ظاهر شد

3.51. این قابلیت فشرده سازی هر فایل، دایرکتوری یا دیسک را فراهم می کند

NTFS. بر خلاف برنامه های فشرده سازی MS-DOS که یک دیسک مجازی ایجاد می کنند،

داشتن ظاهر یک فایل مخفی و فشرده سازی تمام داده های روی این دیسک،

ویندوز NT از یک لایه اضافی از زیر سیستم فایل برای فشرده سازی استفاده می کند

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

هنگام فشرده سازی یک بخش خاص از دیسک مفید است (به عنوان مثال،

دایرکتوری کاربر)، یا فایل هایی از یک نوع خاص

(مثلا فایل های گرافیکی). تنها عیب فشرده سازی NTFS این است

در مقایسه با طرح های فشرده سازی MS-DOS، سطح پایینی دارد

فشرده سازی اما NTFS قابل اعتمادتر است و

بهره وری.

بنابراین، از تمام موارد فوق می توان نتیجه گرفت:

برای سازگاری با سیستم عامل های مختلف، ویندوز

NT شامل سیستم فایل FAT 32 است.علاوه بر این، ویندوز NT شامل سیستم فایل خود می باشد

سیستم فایل NTFS خودش که با FAT 16 سازگار نیست

سیستم فایل دارای تعدادی مزیت نسبت به FAT و همچنین

قابلیت اطمینان و عملکرد بالاتری دارد.

نتیجه.

MS-DOS - سیستم عامل 16 بیتی، به صورت واقعی اجرا می شود

حالت پردازنده در نسخه های ویندوز 3.1، برخی از کدها 16 بیتی هستند و برخی دیگر

32 بیتی. ویندوز 3.0 از حالت پردازنده واقعی پشتیبانی می کند،

در طول توسعه نسخه 3.1، تصمیم گرفته شد که پشتیبانی از آن را کنار بگذارد.

ویندوز 95 یک سیستم عامل 32 بیتی است که

فقط در حالت پردازنده محافظت شده کار می کند. هسته شامل مدیریت

حافظه و ارسال فرآیند، فقط شامل کد 32 بیتی است. این

هزینه ها را کاهش می دهد و کار را سرعت می بخشد. فقط برخی از ماژول ها دارای 16-

کد بیت برای سازگاری با حالت MS-DOS. در ویندوز 95 32 بیتی

از کد تا جایی که ممکن است استفاده می شود، که به ما امکان می دهد اطمینان حاصل کنیم

افزایش قابلیت اطمینان و تحمل خطا سیستم. علاوه بر این، برای

سازگاری با برنامه ها و درایورهای قدیمی استفاده می شود و 16-

کد بیت

ویندوز NT یک توسعه بیشتر از قبل نیست

محصولات موجود معماری آن با در نظر گرفتن از ابتدا ایجاد شده است

الزامات یک سیستم عامل مدرن تلاش

اطمینان از سازگاری سیستم عامل جدید،

توسعه دهندگان ویندوز NT رابط کاربری آشنای ویندوز را حفظ کرده و اجرا کردند

پشتیبانی از فایل سیستم های موجود (مانند FAT) و انواع مختلف

برنامه های کاربردی (نوشته شده برای MS - Dos، Windows 3.x). توسعه دهندگان نیز

در ابزارهای ویندوز NT برای کار با شبکه های مختلف گنجانده شده است

به معنای.

قابلیت اطمینان و استحکام

ارائه ویژگی های معماری که از برنامه محافظت می کند

از آسیب دیدن برنامه ها توسط یکدیگر و سیستم عامل. ویندوز NT

از مدیریت استثناهای ساختاریافته مقاوم در برابر خطا استفاده می کند

تمام سطوح معماری، که شامل فایل قابل بازیابی است

سیستم NTFS و با استفاده از سیستم داخلی محافظت می کند

امنیت و تکنیک های پیشرفته مدیریت حافظه

کاربران با نام های نمادین به فایل ها دسترسی دارند. با این حال، حافظه انسان تعداد نام اشیایی را که کاربر می تواند با نام به آنها ارجاع دهد محدود می کند. سازماندهی سلسله مراتبی فضای نام به ما اجازه می دهد تا این مرزها را به میزان قابل توجهی گسترش دهیم. به همین دلیل است که اکثر سیستم های فایل دارای ساختار سلسله مراتبی هستند که در آن سطوح با اجازه دادن به دایرکتوری سطح پایین تر در یک دایرکتوری سطح بالاتر ایجاد می شوند (شکل 19).

برنج. 19. سلسله مراتب سیستم فایل:

الف – سازمان تک سطحی؛ ب - درخت؛ در – شبکه

نموداری که سلسله مراتب دایرکتوری را توصیف می کند می تواند یک درخت یا یک شبکه باشد. دایرکتوری ها یک درخت را تشکیل می دهند اگر یک فایل اجازه داشته باشد فقط در یک دایرکتوری گنجانده شود (شکل 19، b) و یک شبکه - اگر فایل را بتوان همزمان در چندین دایرکتوری گنجاند (شکل 19، ج). به عنوان مثال، در MS-DOS و Windows، دایرکتوری ها یک ساختار درختی را تشکیل می دهند، در حالی که در یونیکس ساختار شبکه را تشکیل می دهند. در ساختار درختی، هر فایل یک برگ است. دایرکتوری سطح بالا دایرکتوری ریشه یا root نامیده می شود.

با استفاده از این سازمان، کاربر از به خاطر سپردن نام همه فایل ها رها می شود؛ او فقط باید ایده ای تقریبی از اینکه یک فایل خاص را می توان به کدام گروه اختصاص داد تا با مرور متوالی دایرکتوری ها آن را پیدا کند. ساختار سلسله مراتبی برای کار چند کاربره راحت است: هر کاربر با فایل های خود در فهرست یا زیردرخت دایرکتوری های خود محلی سازی می شود و در عین حال، همه فایل های موجود در سیستم به طور منطقی به هم متصل می شوند.

یک مورد خاص از یک ساختار سلسله مراتبی، یک سازمان تک سطحی است، زمانی که همه فایل ها در یک فهرست قرار می گیرند (شکل 19، a).

نام فایل ها

همه انواع فایل دارای نام های نمادین هستند. سیستم های فایل سازمان یافته به صورت سلسله مراتبی معمولاً از سه نوع نام فایل استفاده می کنند: ساده، مرکب و نسبی.

یک نام ساده یا کوتاه نمادین یک فایل را در یک فهرست واحد مشخص می کند. نام‌های ساده توسط کاربران و برنامه‌نویسان به فایل‌ها اختصاص داده می‌شود و باید محدودیت‌های سیستم عامل را هم در محدوده کاراکترها و هم در طول نام در نظر بگیرند. تا همین اواخر، این مرزها بسیار باریک بود. بنابراین، در سیستم فایل FAT، طول نام ها به طرح 8.3 (8 کاراکتر - خود نام، 3 کاراکتر - پسوند نام) محدود شد، و در سیستم فایل s5، که توسط بسیاری از نسخه های سیستم عامل یونیکس پشتیبانی می شود، یک نام نمادین ساده نمی تواند بیش از 14 کاراکتر داشته باشد. با این حال، کار با نام‌های طولانی برای کاربر بسیار راحت‌تر است، زیرا آنها به شما امکان می‌دهند نام‌هایی را به فایل‌ها بدهید که به راحتی به خاطر سپرده می‌شوند و به وضوح نشان می‌دهند که چه چیزی در فایل موجود است. بنابراین، سیستم‌های فایل مدرن، و همچنین نسخه‌های بهبودیافته سیستم‌های فایل از پیش موجود، تمایل دارند از نام‌های فایل نمادین طولانی و ساده پشتیبانی کنند. برای مثال، در سیستم‌های فایل NTFS و FAT32 که با سیستم عامل Windows NT ارائه می‌شوند، یک نام فایل می‌تواند حداکثر ۲۵۵ کاراکتر داشته باشد.

نمونه هایی از نام فایل ها و دایرکتوری های ساده:

مکمل CD 254L به زبان روسی.doc

فایل سیستم قابل نصب manager.doc

در سیستم های فایل سلسله مراتبی، فایل های مختلف مجاز به داشتن نام های نمادین ساده یکسان هستند، مشروط بر اینکه به فهرست های مختلف تعلق داشته باشند. یعنی طرح "فایل های متعدد - یک نام ساده" در اینجا کار می کند. برای شناسایی منحصر به فرد یک فایل در چنین سیستم هایی، به اصطلاح از یک نام کامل استفاده می شود.

نام کامل زنجیره ای از نام های نمادین ساده همه دایرکتوری ها است که مسیر از ریشه به فایل داده شده از آن عبور می کند. بنابراین، نام کامل یک نام مرکب است که در آن اسامی ساده توسط جداکننده پذیرفته شده در سیستم عامل از یکدیگر جدا می شوند. اغلب از فوروارد یا بک اسلش به عنوان جداکننده استفاده می شود و مرسوم است که نام دایرکتوری ریشه مشخص نشود. در شکل 19، b دو فایل نام ساده main.exe دارند، اما نام ترکیبی آنها /depart/main.exe و /user/anna/main exe متفاوت است.

در یک سیستم فایل درختی، یک تناظر یک به یک بین یک فایل و نام کامل آن "یک فایل - یک نام کامل" وجود دارد. در سیستم های فایلی که ساختار شبکه ای دارند، یک فایل را می توان در چندین دایرکتوری گنجاند، به این معنی که می تواند چندین نام کامل داشته باشد؛ در اینجا مکاتبات "یک فایل - بسیاری از نام های کامل" معتبر است. در هر دو مورد، فایل منحصراً با نام کامل آن مشخص می شود.

یک فایل را می توان با نام نسبی نیز شناسایی کرد. نام فایل نسبی از طریق مفهوم "دایرکتوری فعلی" تعیین می شود. برای هر کاربر، در هر زمان معین، یکی از دایرکتوری های سیستم فایل، دایرکتوری فعلی است و این دایرکتوری توسط خود کاربر بر اساس دستور سیستم عامل انتخاب می شود. سیستم فایل نام دایرکتوری فعلی را می گیرد تا بتواند از آن به عنوان مکمل نام های نسبی برای تشکیل نام فایل کاملا واجد شرایط استفاده کند. هنگام استفاده از نام های نسبی، کاربر یک فایل را با زنجیره ای از نام های دایرکتوری شناسایی می کند که مسیر از دایرکتوری فعلی به فایل داده شده از طریق آن می گذرد. به عنوان مثال، اگر دایرکتوری فعلی /user است، نام فایل نسبی /user/anna/main.exe anna/main.exe است.

برخی از سیستم عامل ها به شما امکان می دهند چندین نام ساده به یک فایل اختصاص دهید که می تواند به عنوان نام مستعار تفسیر شود. در این مورد، درست مانند یک سیستم با ساختار شبکه، مطابقت "یک فایل - نام های کامل بسیاری" برقرار می شود، زیرا هر نام فایل ساده مربوط به حداقلیک نام کامل

و اگرچه نام کامل فایل را به طور منحصربه‌فرد شناسایی می‌کند، اما اگر یک تناظر یک به یک بین فایل‌ها و نام آنها وجود داشته باشد، کار کردن با فایل برای سیستم عامل آسان‌تر است. برای این منظور یک نام منحصر به فرد به فایل اختصاص می دهد تا نسبت "یک فایل - یک نام منحصر به فرد" معتبر باشد. نام منحصر به فرد همراه با یک یا چند نام نمادین وجود دارد که توسط کاربران یا برنامه های کاربردی به فایل اختصاص داده شده است. نام منحصر به فرد یک شناسه عددی است و فقط برای سیستم عامل در نظر گرفته شده است. نمونه ای از چنین نام فایل منحصر به فردی، شماره inode in است سیستم یونیکس.

نصب

به طور کلی، یک سیستم کامپیوتری ممکن است چندین دستگاه دیسک داشته باشد. حتی یک کامپیوتر شخصی معمولی معمولا یک هارد دیسک، یک فلاپی درایو و یک درایو CD-ROM دارد. کامپیوترهای قدرتمند معمولا مجهز به مقدار زیاددرایوهای دیسکی که بسته های دیسکی روی آنها نصب شده است. علاوه بر این، حتی یک دستگاه فیزیکی، با استفاده از ابزارهای سیستم عامل، می تواند به عنوان چندین دستگاه منطقی، به ویژه با تقسیم فضای دیسک به پارتیشن، نمایش داده شود. این سوال مطرح می شود: چگونه ذخیره سازی فایل را در یک سیستم با چندین دستگاه سازماندهی کنیم؟ حافظه خارجی?

راه حل اول این است که هر دستگاه یک سیستم فایل مستقل را میزبانی می کند، یعنی فایل های واقع در این دستگاه توسط درخت دایرکتوری توصیف می شوند که به هیچ وجه به درخت های دایرکتوری در دستگاه های دیگر متصل نیست. در این حالت، برای شناسایی منحصر به فرد فایل، کاربر باید شناسه منطقی دستگاه را به همراه نام فایل نمادین مرکب مشخص کند. نمونه ای از چنین وجود مستقلی از سیستم های فایل، سیستم عامل MS-DOS است که در آن نام کامل فایل شامل شناسه نامه درایو منطقی است. بنابراین، هنگام دسترسی به فایلی که در درایو A قرار دارد، کاربر باید نام این درایو را مشخص کند: A:\privat\letter\uni\let1.doc.

گزینه دیگر سازماندهی ذخیره سازی فایل است که در آن به کاربر این فرصت داده می شود تا سیستم های فایل واقع در دستگاه های مختلف را در یک سیستم فایل واحد که توسط یک درخت دایرکتوری توضیح داده شده است ترکیب کند. به این عملیات نصب می گویند. بیایید ببینیم که چگونه این عملیات با استفاده از سیستم عامل یونیکس به عنوان مثال انجام می شود.

در بین تمام دستگاه های دیسک منطقی موجود در سیستم، سیستم عامل یک دستگاه را متمایز می کند که سیستم یک نامیده می شود. اجازه دهید دو سیستم فایل بر روی درایوهای منطقی مختلف قرار داشته باشند (شکل 20)، و یکی از درایوها درایو سیستم است.

سیستم فایل واقع در دیسک سیستم، به root اختصاص داده شده است. برای پیوند دادن سلسله مراتب فایل ها در سیستم فایل ریشه، یک دایرکتوری موجود انتخاب شده است، در این مثال دایرکتوری man. پس از اتمام mount، فهرست man انتخاب شده به فهرست اصلی سیستم فایل دوم تبدیل می شود. از طریق این دایرکتوری، سیستم فایل نصب شده به عنوان یک درخت فرعی به درخت عمومی متصل می شود (شکل 21).

برنج. 20. دو فایل سیستم قبل از نصب

برنج. 21. فایل سیستم اشتراکی پس از نصب

هنگامی که یک سیستم فایل مشترک نصب می شود، هیچ تفاوت منطقی برای کاربر بین سیستم فایل ریشه و نصب شده وجود ندارد؛ به ویژه، نامگذاری فایل به همان روشی انجام می شود که گویی در ابتدا یک سیستم فایل واحد بوده است.

ویژگی های فایل

مفهوم "پرونده" نه تنها شامل داده ها و نام هایی است که ذخیره می کند، بلکه ویژگی های آن را نیز شامل می شود. ویژگی های فایل اطلاعاتی هستند که ویژگی های یک فایل را توصیف می کنند. نمونه هایی از ویژگی های فایل ممکن:

 نوع فایل (فایل معمولی، دایرکتوری، فایل ویژه و غیره)؛

 صاحب فایل؛

 سازنده فایل؛

 رمز عبور برای دسترسی به فایل؛

 اطلاعات در مورد عملیات مجاز دسترسی به فایل؛

 زمان ایجاد، آخرین دسترسی و آخرین تغییر;

 اندازه فایل فعلی؛

حداکثر اندازهفایل؛

 علامت «فقط خواندنی»؛

 علامت "پرونده پنهان"؛

 علامت " فایل سیستمی”;

 امضای "پرونده بایگانی"؛

 ویژگی "باینری/شخصیت"؛

 ویژگی "موقت" (پس از تکمیل فرآیند حذف شود).

 علامت مسدود کردن؛

 طول رکورد در فایل؛

 اشاره گر به فیلد کلید در رکورد.

 طول کلید.

مجموعه ویژگی های فایل با ویژگی های سیستم فایل تعیین می شود: در سیستم های فایل انواع متفاوتمجموعه های مختلفی از ویژگی ها را می توان برای مشخص کردن فایل ها استفاده کرد. به عنوان مثال، در سیستم های فایلی که از فایل های مسطح پشتیبانی می کنند، نیازی به استفاده از سه ویژگی آخر لیست مربوط به ساختار فایل نیست. در یک سیستم عامل تک کاربره، مجموعه ای از ویژگی ها فاقد ویژگی های مرتبط با کاربران و امنیت هستند، مانند صاحب فایل، سازنده فایل، رمز ورود به فایل، اطلاعات مربوط به دسترسی مجاز به فایل.

کاربر می تواند با استفاده از امکاناتی که برای این منظور توسط سیستم فایل ارائه شده است به ویژگی ها دسترسی داشته باشد. به طور معمول، شما می توانید مقادیر هر ویژگی را بخوانید، اما فقط برخی را تغییر دهید. به عنوان مثال، یک کاربر می تواند مجوزهای یک فایل را تغییر دهد (به شرطی که مجوزهای لازم برای انجام این کار را داشته باشد)، اما نمی تواند تاریخ ایجاد یا اندازه فعلی فایل را تغییر دهد.

مقادیر ویژگی فایل را می توان مستقیماً در فهرست ها قرار داد، همانطور که در سیستم فایل MS-DOS انجام می شود (شکل 22، a). شکل ساختار یک ورودی دایرکتوری حاوی یک نام نمادین ساده و ویژگی های فایل را نشان می دهد. در اینجا حروف ویژگی های فایل را نشان می دهد: R - فقط خواندنی، A - بایگانی شده، H - پنهان، S - سیستم.

برنج. 22. ساختار دایرکتوری:

الف – ساختار ورودی دایرکتوری MS-DOS (32 بایت)؛ b – ساختار ورودی دایرکتوری سیستم عامل یونیکس

گزینه دیگر قرار دادن ویژگی ها در جداول خاص است، زمانی که کاتالوگ ها فقط پیوندهایی به این جداول دارند. این رویکرد به عنوان مثال در سیستم فایل ufs سیستم عامل یونیکس پیاده سازی شده است. در این فایل سیستم ساختار دایرکتوری بسیار ساده است. رکورد هر فایل حاوی یک نام فایل نمادین کوتاه و یک اشاره گر به توصیفگر فهرست فایل است، این نام در ufs برای جدولی است که مقادیر ویژگی فایل در آن متمرکز شده است (شکل 22، ب).

در هر دو نسخه، دایرکتوری ها پیوندی بین نام فایل ها و خود فایل ها ایجاد می کنند. با این حال، رویکرد جداسازی نام فایل از ویژگی های آن، سیستم را انعطاف پذیرتر می کند. به عنوان مثال، یک فایل به راحتی می تواند در چندین فهرست به طور همزمان گنجانده شود. ورودی های این فایل در دایرکتوری های مختلف ممکن است نام های ساده متفاوتی داشته باشند، اما فیلد پیوند دارای شماره inode یکسانی خواهد بود.

مقالات برای خواندن:

خوشه بندی سلسله مراتبی | دانشگاه استنفورد

یک شی با طول متغیر به نام فایل.

فایل -دنباله ای نامگذاری شده از بایت ها با طول دلخواه است. از آنجایی که طول یک فایل می تواند صفر باشد، ایجاد یک فایل شامل نام گذاری و ثبت آن در سیستم فایل است - این یکی از عملکردهای سیستم عامل است.

معمولا در فایل جداگانهذخیره داده های متعلق به همان نوع در این حالت نوع داده تعیین می شود نوع فایل.

از آنجایی که هیچ محدودیتی در اندازه در تعریف فایل وجود ندارد، می توان فایلی را با 0 بایت تصور کرد (فایل خالی)و فایلی با هر تعداد بایت.

هنگام تعریف یک فایل، توجه ویژه ای به نام می شود. در واقع داده های آدرس را حمل می کند که بدون آن داده های ذخیره شده در فایل به دلیل عدم وجود روشی برای دسترسی به آن تبدیل به اطلاعات نمی شود. علاوه بر توابع مربوط به آدرس دهی، نام فایل می تواند اطلاعات مربوط به نوع داده های موجود در آن را نیز ذخیره کند. این برای ابزارهای خودکار برای کار با داده ها مهم است، زیرا بر اساس نام فایل (یا بهتر است بگوییم پسوند آن)، آنها می توانند به طور خودکار روش مناسبی را برای استخراج اطلاعات از فایل تعیین کنند.

ساختار فایل - ساختار سلسله مراتبی که در آن سیستم عامل فایل ها و دایرکتوری ها (پوشه ها) را نمایش می دهد.

به عنوان بالای سازه عمل می کند نام حامل، جایی که فایل ها ذخیره می شوند. بعد، فایل ها در گروه بندی می شوند دایرکتوری ها (پوشه ها)که در آن می توان ایجاد کرد دایرکتوری های تو در تو

نام رسانه های ذخیره سازی خارجیدیسک هایی که اطلاعات روی رایانه ذخیره می شود نام های خاص خود را دارند - هر دیسک با یک حرف از الفبای لاتین و به دنبال آن یک دونقطه نامگذاری شده است. بنابراین، فلاپی دیسک ها همیشه حروفی هستند آ:و که در:. نام درایوهای منطقی هارد دیسک با حرف شروع می شود با:. همه نام‌های درایوهای منطقی با نام درایوهای CD دنبال می‌شوند. به عنوان مثال، نصب شده: یک فلاپی درایو، یک هارد دیسک تقسیم شده به 3 درایو منطقی و یک درایو CD. حروف تمام رسانه های ذخیره سازی را شناسایی کنید. آ:- درایو فلاپی دیسک؛ با:, د:, E:- درایوهای منطقی هارد دیسک؛ F:- درایو سی دی.

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

برای سیستم عامل، مهم نیست که داده ها در کجا قرار دارند - روشن دیسک لیزری، روی پارتیشن هارد دیسک یا درایو فلش. برای یکسان سازی مناطق نمایش داده شده حافظه بلند مدت، مفهوم دیسک منطقی معرفی شده است.

علاوه بر اطلاعات ذخیره شده، حجم شامل شرحی از سیستم فایل است - به عنوان یک قاعده، این جدولی است که همه فایل ها و ویژگی های آنها را فهرست می کند (جدول تخصیص فایل، FAT). جدول مشخص می کند که یک فایل خاص در کدام دایرکتوری (پوشه) قرار دارد. به همین دلیل، هنگام انتقال یک فایل از یک پوشه به پوشه دیگر در همان حجم، داده ها از قسمتی از دیسک فیزیکی به قسمت دیگر منتقل نمی شوند، بلکه به سادگی ورودی در جدول تخصیص فایل را تغییر می دهند. اگر فایلی از یک درایو منطقی به درایو دیگر منتقل شود (حتی اگر هر دو درایو منطقی در یک درایو فیزیکی قرار داشته باشند)، انتقال فیزیکی داده ها الزاماً اتفاق می افتد (در صورت موفقیت، کپی با حذف بیشتر نسخه اصلی).

به همین دلیل، قالب‌بندی و یکپارچه‌سازی هر درایو منطقی تأثیری بر دیگران ندارد.

کاتالوگ (پوشه) - فضای دیسک (فایل سیستمی ویژه) که اطلاعات سرویس در مورد فایل ها (نام، پسوند، تاریخ ایجاد، اندازه و غیره) را ذخیره می کند.. دایرکتوری ها در سطوح پایین تر در داخل دایرکتوری های سطوح بالاتر قرار گرفته اند و برای آنها هستند تو در تو. دایرکتوری سطح بالا (ابر دایرکتوری) در رابطه با دایرکتوری های سطح پایین، دایرکتوری والد نامیده می شود.سطح بالای تودرتو از ساختار سلسله مراتبی است دایرکتوری ریشهدیسک (شکل 1). دایرکتوری که کاربر در حال حاضر با آن کار می کند نامیده می شود جاری.

قوانین نامگذاری دایرکتوری هیچ تفاوتی با قوانین نامگذاری یک فایل ندارد، اگرچه معمولاً تعیین پسوند نام برای دایرکتوری ها مرسوم نیست. هنگام نوشتن یک مسیر دسترسی به فایل از طریق سیستمی از زیر شاخه ها، همه دایرکتوری های میانی با یک نماد خاص از هم جدا می شوند. بسیاری از سیستم‌عامل‌ها از "\" (اسلش معکوس) به عنوان این کاراکتر استفاده می‌کنند.

الزام برای نام فایل منحصر به فرد واضح است - بدون این، تضمین دسترسی بدون ابهام به داده ها غیرممکن است. در وسایل فناوری رایانهالزام منحصر به فرد بودن نام به طور خودکار تضمین می شود - نه کاربر و نه اتوماسیون نمی توانند فایلی با نامی مشابه با نام موجود ایجاد کنند.

وقتی از فایلی استفاده می‌شود که در فهرست فعلی نیست، برنامه‌ای که به فایل دسترسی پیدا می‌کند باید مشخص کند که فایل دقیقاً کجا قرار دارد. این کار با مشخص کردن مسیر فایل انجام می شود.

مسیر فایل- این نام رسانه (دیسک) و دنباله ای از نام های دایرکتوری است که با کاراکتر "\" در سیستم عامل ویندوز از هم جدا شده اند (کاراکتر "/" در سیستم عامل خط UNIX استفاده می شود).این مسیر مسیر دایرکتوری که فایل مورد نظر در آن قرار دارد را مشخص می کند.

برای تعیین مسیر فایل از دو روش مختلف استفاده می شود. در حالت اول هر فایل داده می شود نام مسیر مطلق (نام کامل فایل)،شامل نام همه دایرکتوری ها از ریشه تا پوشه حاوی فایل و نام خود فایل است. مثلا مسیر C:\Abby\Doc\otchet.docیعنی دایرکتوری ریشه دیسک با:شامل یک دایرکتوری است ابی، که به نوبه خود شامل یک زیر شاخه است Docجایی که فایل در آن قرار دارد گزارش.doc. نام مسیرهای مطلق همیشه با نام رسانه و دایرکتوری ریشه شروع می شود و منحصر به فرد است. نیز اعمال می شود نام مسیر نسبیهمراه با مفهوم استفاده می شود پوشه کنونی.کاربر می تواند یکی از دایرکتوری ها را به عنوان دایرکتوری کاری فعلی تعیین کند. در این حالت، تمام نام مسیرهایی که با یک کاراکتر جداکننده شروع نمی شوند، نسبی در نظر گرفته می شوند و نسبت به فهرست فعلی شمارش می شوند. به عنوان مثال، اگر دایرکتوری فعلی باشد ج: ابی، سپس به فایل با مسیر مطلق ج:\ابی\می توان به عنوان تماس گرفت Doc\otchet.doc.

با توجه به اینکه ساختار فایل یک کامپیوتر می تواند قابل توجه باشد، اسناد لازم را جستجو کنیدبا پیمایش ساده ساختار فایلهمیشه راحت نیست معمولاً اعتقاد بر این است که هر کاربر رایانه باید ساختار پوشه هایی را که اسناد را در آنها ذخیره می کند بداند (و به خاطر بسپارد). با این حال، مواقعی وجود دارد که اسناد خارج از این ساختار ذخیره می شوند. به عنوان مثال، بسیاری از برنامه‌ها اسناد را در پوشه‌های پیش‌فرض ذخیره می‌کنند، اگر کاربر فراموش کرده باشد که به صراحت محل ذخیره‌سازی سند را مشخص کند. این پوشه پیش فرض می تواند پوشه ای باشد که آخرین بار ذخیره شده است، پوشه ای که خود برنامه در آن قرار دارد، نوعی پوشه سرویس، به عنوان مثال \ اسناد منو غیره که در موارد مشابهفایل های سند را می توان در انبوه داده های دیگر "از دست داد".

نیاز به جستجوی فایل‌ها به‌ویژه اغلب در طول کار راه‌اندازی ایجاد می‌شود. یک مورد معمولی زمانی است که در جستجوی منبع تغییرات کنترل نشده در سیستم عامل، باید تمام فایل هایی را که اخیراً تغییر کرده اند پیدا کنید. به وسیله جستجوی خودکارفایل‌ها نیز به طور گسترده توسط متخصصانی که سیستم‌های کامپیوتری را راه‌اندازی می‌کنند استفاده می‌شود - برای آنها دشوار است که ساختار فایل "بیگانه" را هدایت کنند. کامپیوتر شخصی، و جستجو کنید فایل های لازمبا ناوبری همیشه برای آنها مفید نیست.

ابزار جستجوی اولیه ویندوز XPاز منوی اصلی با دستور اجرا کنید Start > Find > Files and Folders. یکی دیگر از گزینه های راه اندازی کمتر راحت نیست - از هر پنجره پوشه (نمایش > نوارهای کاوشگر > جستجو > فایل‌ها و پوشه‌هایا کلید F3).

کنترل های ارائه شده در پانل جستجو به شما امکان می دهد منطقه جستجو را بر اساس اطلاعات موجود در مورد نام و آدرس فایل بومی سازی کنید. هنگام وارد کردن نام فایل، کاراکترهای Wildcard مجاز هستند «*» و «?» . سمبل «*» هر تعداد کاراکتر دلخواه و کاراکتر را جایگزین می کند «?» جایگزین هر یک از شخصیت ها می شود. بنابراین، برای مثال، جستجوی فایلی با نام *. txtبا نمایش تمام فایل هایی که پسوند نام دارند به پایان می رسد. txt، و نتیجه جستجوی فایل های با نام *.??tلیستی از تمام فایل های با پسوند نام خواهد بود. txt، .bat، .datو غیره

هنگام جستجوی فایل هایی با نام های "طولانی"، باید به خاطر داشته باشید که اگر نام "طولانی" حاوی فاصله باشد (و این قابل قبول است)، پس هنگام ایجاد یک کار جستجو، چنین نامی باید در گیومه ها قرار داده شود، به عنوان مثال: "کار فعلی.doc".

نوار جستجو دارای کنترل های مخفی اضافی است. وقتی روی فلش رو به پایین در حال گسترش کلیک می کنید ظاهر می شوند.

· سوال آخرین تغییرات چه زمانی انجام شد؟به شما امکان می دهد دامنه جستجو را با تاریخ ایجاد، آخرین تغییر یا باز کردن فایل محدود کنید.

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

· پاراگراف گزینه های اضافیبه شما امکان می دهد نوع فایل را مشخص کنید، اجازه مشاهده را بدهید فایل های مخفیو پوشه ها، و همچنین تنظیم برخی از پارامترهای جستجوی دیگر.

در مواردی که یک سند متنی بدون قالب جستجو می شود، نه تنها با ویژگی های فایل، بلکه بر اساس محتوای آن نیز می توان جستجو کرد. متن مورد نظر را می توان در فیلد وارد کرد یک کلمه یا عبارت در یک فایل.

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

19.فشرده سازی داده ها و آرشیو فایل.

یکی از ویژگی های بارز اکثر انواع داده های "کلاسیک" که افراد به طور سنتی با آن کار می کنند، افزونگی خاصی است. درجه افزونگی به نوع داده بستگی دارد. علاوه بر این، میزان افزونگی داده ها به سیستم کدگذاری اتخاذ شده بستگی دارد. بنابراین، برای مثال، می توانیم بگوییم که کدگذاری اطلاعات متنیبا استفاده از زبان روسی (با استفاده از الفبای روسی) به طور متوسط ​​20-30٪ افزونگی بیشتری نسبت به رمزگذاری اطلاعات کافی با استفاده از زبان انگلیسی می دهد.
افزونگی همچنین نقش مهمی در پردازش اطلاعات دارد. با این حال، وقتی نوبت به پردازش نمی‌شود، بلکه به ذخیره اسناد نهایی یا انتقال آنها می‌رسد، افزونگی را می‌توان کاهش داد که اثر فشرده‌سازی داده‌ها را می‌دهد.
اگر روش‌های فشرده‌سازی اطلاعات برای اسناد تکمیل‌شده اعمال شود، اصطلاح فشرده‌سازی داده اغلب با عبارت آرشیو داده جایگزین می‌شود. نرم افزارکسانی که این عملیات را انجام می دهند، بایگانی نامیده می شوند.
بسته به شیئی که داده های فشرده شده در آن قرار دارد، موارد زیر وجود دارد:
- فشرده سازی (بایگانی) فایل ها؛
- فشرده سازی (بایگانی) پوشه ها؛
- فشردگی دیسک
اگر محتوای داده ها در طول فشرده سازی داده ها تغییر کند، روش فشرده سازی برگشت ناپذیر است و هنگامی که داده ها از یک فایل فشرده بازیابی می شوند، دنباله اصلی به طور کامل بازیابی نمی شود. چنین روش هایی را روش های فشرده سازی کنترل شده با تلفات نیز می نامند. آنها فقط برای آن دسته از داده هایی قابل اجرا هستند که از دست دادن رسمی بخشی از محتوا منجر به کاهش قابل توجه خواص مصرف کننده نمی شود. اول از همه، این برای داده های چند رسانه ای اعمال می شود: دنباله های ویدیویی، ضبط های موسیقی، ضبط صدا و نقاشی ها. روش های فشرده سازی با اتلاف معمولاً نسبت تراکم بسیار بالاتری نسبت به روش های برگشت پذیر ارائه می دهند، اما نمی توان آنها را برای اسناد متنی، پایگاه های داده و به خصوص به کد برنامه. فرمت های فشرده سازی معمولی با تلفات عبارتند از:
- JPG برای داده های گرافیکی.
- MPG برای داده های ویدئویی.
- . M RZ برای داده های صوتی.
اگر فشرده سازی داده ها فقط ساختار آن را تغییر دهد، روش فشرده سازی برگشت پذیر است. از کد به دست آمده، می توانید آرایه اصلی را با اعمال روش معکوس بازیابی کنید. روش های برگشت پذیر برای فشرده سازی هر نوع داده ای استفاده می شود. فرمت های فشرده سازی معمولی بدون تلفات عبارتند از:
- .گیف، نکته،. PCX و بسیاری دیگر برای داده های گرافیکی؛
- .AVI برای داده های ویدئویی.
- .ZIP، .ARJ، .BAR، .LZH، .LH، .CAB و بسیاری دیگر برای هر نوع داده.
فرمت‌های فشرده‌سازی داده‌های "کلاسیک" که به طور گسترده در کارهای روزمره کامپیوتری استفاده می‌شوند، فرمت‌های .ZIP و ARJ. به تازگی فرمت محبوب .RAR به آنها اضافه شده است.
کارکردهای اساسی که اکثر مدیران آرشیو مدرن انجام می دهند عبارتند از:
- استخراج فایل ها از آرشیو.
- ایجاد آرشیو جدید؛
- اضافه کردن فایل ها به آرشیو موجود
- ایجاد آرشیوهای خود استخراجی؛
- ایجاد آرشیوهای توزیع شده در رسانه های کم ظرفیت؛
- آزمایش یکپارچگی ساختار آرشیو؛
- بازسازی کامل یا جزئی بایگانی های آسیب دیده؛
- حفاظت از آرشیو در برابر مشاهده و اصلاح غیر مجاز.
بایگانی های خود استخراجی: بایگانی خود استخراجی بر اساس یک آرشیو معمولی با چسباندن یک ماژول نرم افزاری کوچک به آن تهیه می شود. خود آرشیو یک نام پسوند.EXE دریافت می کند که برای فایل های اجرایی معمول است.
آرشیوهای توزیع شده برخی از مدیران (به عنوان مثال WinZip) تقسیم را مستقیماً بر روی فلاپی دیسک انجام می دهند، و برخی (مثلا WinRAR و WinArj) به شما اجازه می دهند که آرشیو را از قبل به قطعاتی با اندازه معین روی هارد دیسک تقسیم کنید. پس از آن، می توان آنها را با کپی به رسانه های خارجی منتقل کرد.
هنگام ایجاد بایگانی های توزیع شده، مدیر WinZip دارای این کار است ویژگی ناخوشایند: هر جلد حاوی فایل هایی با نام های مشابه است. در نتیجه نمی توان اعداد حجم ذخیره شده در هر فلاپی دیسک را با نام فایل تعیین کرد.مدیران آرشیو WinArj و WinRAR تمامی فایل های بایگانی توزیع شده را با نام های مختلف برچسب گذاری می کنند و بنابراین چنین مشکلاتی را ایجاد نمی کنند.
حفاظت از آرشیو در بیشتر موارد، بایگانی‌ها با استفاده از رمز عبور محافظت می‌شوند که زمانی که می‌خواهید بایگانی را مشاهده، بسته‌بندی یا تغییر دهید، درخواست می‌شود.
به توابع اضافیمدیران بایگانی شامل توابع خدماتی هستند که کار را راحت‌تر می‌کنند. آنها اغلب اجرا می شوند اتصال خارجیامکانات اضافی و ارائه:
- مشاهده فایل ها با فرمت های مختلف بدون استخراج آنها از آرشیو.
جستجو برای فایل ها و داده ها در بایگانی.
نصب برنامه ها از بایگانی بدون باز کردن اولیه.
چک غیبت ویروس های کامپیوتریدر بایگانی قبل از اینکه بسته بندی شود.
حفاظت رمزنگاری از اطلاعات آرشیوی؛
رمزگشایی پیام پست الکترونیک;
فشرده سازی "شفاف" فایل های اجرایی.EXE و DLL.
ایجاد آرشیوهای چند جلدی خود استخراج؛
انتخاب یا تنظیم نسبت فشرده سازی اطلاعات

می توانید روی نماد پوشه دوبار کلیک کنید، پس از آن Explorer راه اندازی می شود و محتویات پوشه انتخاب شده را به شما نشان می دهد (شکل 21.1 را ببینید).

هنگامی که روی نماد یک فایل دوبار کلیک می کنید، برنامه ای که آن فایل را ایجاد کرده راه اندازی می شود و محتویات آن را نمایش می دهد. اگرچه در واقع ممکن است همان برنامه ای نباشد که فایل را ایجاد کرده است. مثلا، فایل های گرافیکیمیتواند باز شود با برنامه ویژهبرای مشاهده آنها، نه برنامه ویرایش گرافیکی که آنها را ایجاد کرده است.

وقتی باز میکنی فایل برنامه، برنامه شروع می شود.

پس از باز کردن یک پوشه، محتوای آن را در پنجره پوشه مشاهده خواهید کرد. می توانید ویندوز را طوری پیکربندی کنید که هر پوشه در پنجره خودش باز شود. در اینجا نحوه انجام آن آمده است.

1. در پنجره پوشه، Tools=>Folder Options را انتخاب کنید.

کادر محاوره ای گزینه های پوشه ظاهر می شود.

2. در تب General، Open every folder in a جداگانه را انتخاب کنید.

3. روی OK کلیک کنید.

وقتی کارتان تمام شد، فراموش نکنید که تمام پنجره های پوشه را ببندید.

مشاهده ساختار درختی

سخت‌ترین بخش کار با پوشه‌ها و فایل‌ها، سازماندهی آنها به شکلی است که دانشمندان کامپیوتر آن را ساختار درختی می‌نامند. ساختار درختی به وضوح در سمت چپ پنجره Explorer قابل مشاهده است. این قسمت از پنجره Folders نامیده می شود (شکل 21.1 را ببینید). اگر این لیست را نمی بینید، روی دکمه Folders در نوار ابزار کلیک کنید. یا از منو View^Browser Panels^Folders را انتخاب کنید.

با استفاده از ماوس، می توانید به سرعت هر پوشه ای را در ساختار درختی پیدا کنید، البته اگر بدانید کجا باید آن را جستجو کنید. پس از کلیک بر روی یک پوشه، محتوای آن در سمت راست در پنجره نمایش داده می شود.

با کلیک بر روی علامت "+" (بعلاوه) در کنار پوشه مربوطه، می توانید تمام زیرپوشه های آن را مشاهده کنید. شاخه ای از سازه درختی

با کلیک بر روی علامت "-" (منهای) در کنار یک پوشه، شاخه مربوطه از ساختار درختی را می بندید.

چگونه یک ساختار درختی را پنهان کنیم؟

هنگامی که پنل Folders بسته می شود، پنجره Explorer لیستی از وظایف فایل ها و پوشه ها را نمایش می دهد، همانطور که در شکل نشان داده شده است. 21.2. این لیست شامل عملیات اساسی با فایل های موجود در یک پوشه معین، انتقال به دایرکتوری های دیگر در رایانه و سایر کارهای مشابه است.

لیست وظایف به نوع پوشه ای که مشاهده می کنید، فایل انتخابی و نوع آن بستگی دارد.

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

بخش اولیه هارد دیسک حاوی رکورد اصلی ریشه است که در حافظه بارگذاری شده و اجرا می شود.

آخرین بخش این بخش شامل جدول پارتیشن - یک جدول 4 عنصری با عناصر 16 بایتی است. این جدول توسط برنامه FDISK (یا یک ابزار معادل در یک سیستم عامل دیگر) دستکاری می شود.

در طول بوت، ROM-BIOS ورودی اصلی اصلی را بارگذاری می کند و کنترل را به کد آن منتقل می کند. این کد جدول پارتیشن را می خواند تا پارتیشن مشخص شده به عنوان فعال را مشخص کند. سپس بخش ریشه صحیح در حافظه خوانده شده و اجرا می شود.

میز 1.ساختار ورودی اصلی اصلی و جدول پارتیشن

جدول 2.ساختار توصیفگر بخش

کد پارتیشن برای تعیین حضور و مکان پارتیشن های اصلی و توسعه یافته روی دیسک استفاده می شود. هنگامی که پارتیشن مورد نظر قرار گرفت، اندازه و مختصات آن را می توان از فیلدهای توصیفگر مربوطه استخراج کرد. اگر در قسمت کد پارتیشن 0 نوشته شود، توصیفگر خالی در نظر گرفته می شود، یعنی هیچ پارتیشنی روی دیسک تعریف نمی کند.

جدول 3.کدهای پارتیشن سیستم عامل مایکروسافت

کدنوع بخشاندازهنوع چربیسیستم عامل
ساعت 01پایه ای0-15 مگابایتFAT12MS-DOS 2.0
ساعت 04پایه ای16-32 مگابایتFAT16MS-DOS 3.0
ساعت 05پیشرفته0-2 گیگابایت- MS-DOS 3.3
ساعت 06پایه ای32 مگابایت-2 گیگابایتFAT16MS-DOS 4.0
0Bhپایه ای512 مگابایت-2 گیگابایتFAT32OSR2
0Chپیشرفته512 مگابایت-2 ترابایتFAT32OSR2
0 هپایه ای32 مگابایت-2 گیگابایتFAT16ویندوز 95
0Fhپیشرفته0-2 گیگابایت- ویندوز 95

کدهای زیر برای سیستم عامل های دیگر شرکت ها محفوظ است:

  • 02h - بخش CP/M;
  • 03h - بخش Xenix;
  • 07h - پارتیشن OS/2 (سیستم فایل HPFS).

یادداشت:

  1. اعداد سیلندر و بخش به ترتیب 10 و 6 بیت را اشغال می کنند:
    15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
    ججججججججججسسسسسس

    آنها طوری چیده شده اند که وقتی CX را با مقدار 16 بیتی بارگذاری می کنید، آماده فراخوانی وقفه INT 13h برای خواندن قسمت مورد نظر از دیسک است. بنابراین، پس از خواندن رکورد بارگذاری اصلی در ناحیه حافظه sect_buf، کد CMP بایت ptr sect_buf، 80h است.

    بررسی می کند که آیا پارتیشن اول فعال است و کد

    MOV CX، sect_buf

    CX را برای فراخوانی INT 13h برای خواندن بخش ریشه پارتیشن شماره 1 بارگذاری می کند.

  2. مقدار "بخش نسبی" در افست 08 ساعت در هر پارتیشن معادل سر، سکتور و استوانه آدرس شروع پارتیشن است. بخش نسبی 0 با سیلندر 0، سر 0، سکتور 1 منطبق است. تعداد بخش نسبی ابتدا برای هر بخش روی سر، سپس برای هر سر، و در نهایت برای هر سیلندر افزایش می‌یابد.

    فرمول قابل اجرا:

    Rel_sec = (#Cyl * sec_per_cyl * heads) + (#Goal * sec_per_cyl) + (#Sec -1)

    پارتیشن ها از یک عدد سیلندر زوج شروع می شوند، به استثنای پارتیشن اول، که می تواند از سیلندر 0، سر 0، سکتور 2 شروع شود (زیرا سکتور 1 توسط Master Boot Record اشغال شده است).

    هنگامی که ورودی پارتیشن ریشه کنترل را به دست می آورد، DS:SI به ورودی جدول پارتیشن مربوطه اشاره می کند.

ساختار بخش ریشه

جدول 4.فرمت بخش ریشه فلاپی دیسک یا پارتیشن دیسک سخت

00 ساعت3 JMPxx xxنزدیک پرش برای دانلود کد
ساعت 038 "من""ب""M" "4" "." "0" نام شرکت OEM و نسخه سیستم
0Bh2 SectSizتعداد بایت ها در بخش (همیشه 512)شروع BPB
0Dh1 ClustSizتعداد بخش ها در خوشه
0 ه2 ResSecsتعداد بخش‌های یدکی (بخش‌های قبل از FAT #1)
ساعت 101 FatCntتعداد جداول FAT
ساعت 112 RootSizتعداد عناصر 32 بایتی دایرکتوری ریشه (برای FAT32 - 0)
ساعت 132 TotSecsتعداد کل بخش ها در رسانه (پارتیشن DOS)
ساعت 151 رسانه هانوع رسانه (همانند بایت اول FAT)
ساعت 162 FatSizeتعداد بخش ها در یک FATپایان BPB
ساعت 182 TrkSecs تعداد بخش ها در هر مسیر
1 آه2 HeadCnt تعداد سرها
1 فصل4 HidnSecتعداد سکتورهای پنهان (مورد استفاده در طرح های پارتیشن)
ساعت 204 TotSecsمجموع بخش ها در صورت اندازه > 32 مگابایت
24 ساعت1 128 شماره دیسک فیزیکی
25 ساعت1 ذخیره
ساعت 261 ساعت 29 نشانه ساختار توسعه یافته
ساعت 274 شناسه حجم (شماره سریال)
2 بایت ساعتBh برچسب (NO NAME)
36 ساعت8 شناسه سیستم فایل (FAT12)
3 ه شروع بارگذاری کد و داده

یادداشت:

  1. انواع رسانه های ذخیره سازی:
    • F0h - فلاپی دیسک، 2 طرف، 18 بخش در هر آهنگ.
    • F8h - هارد دیسک؛
    • F9h - فلاپی دیسک، 2 طرف، 15 بخش در هر آهنگ.
    • FCh - فلاپی دیسک، 1 طرف، 9 بخش در هر آهنگ.
    • FDh - فلاپی دیسک، 2 طرف، 9 بخش در هر آهنگ.
    • FEh - فلاپی دیسک، 1 سمت، 8 بخش در هر آهنگ.
    • FFh - فلاپی دیسک، 2 طرف، 8 بخش در هر آهنگ.
  2. برای خواندن این بخش از خواندن مطلق INT 25h (DX=0) استفاده کنید. یا:
    • فلاپی دیسک: بخش ریشه = BIOS INT 13h head 0, track 0, section 1;
    • سخت: Partition_Table را برای head/track/sector BIOS بخوانید.
  3. BPB (Blook Parameter BIOS) زیر مجموعه ای از داده های موجود در root_sector است. درخواست درایور "Build BPB" از راننده می خواهد که بلوک ذکر شده در بالا را پر کند. طول BPB = 13 بایت

جدول پارامترهای فلاپی دیسک

این ساختار 10 بایتی به عنوان "جدول پایه دیسک" نیز شناخته می شود. در آدرس برداری وقفه INT 1Eh (آدرس 4 بایت در 0:0078) قرار دارد. این جدول چند متغیر مهم برای دستگاه های فلاپی دیسک را مشخص می کند. توسط ROM-BIOS راه اندازی شده و توسط DOS برای بهبود عملکرد فلاپی دیسک اصلاح شده است.

جدول 5.فرمت جدول پارامتر فلاپی دیسک

جانبداریطولمحتوا
00 ساعت1 بایت اول مشخصات:
بیت 0-3 - زمان بارگذاری سر؛
بیت 4-7 - مدت زمان گام سر
ساعت 011 بایت دوم مشخصات:
بیت 0 - پرچم حالت DMA.
بیت 1-7 - زمان بارگذاری سر
ساعت 021 تاخیر قبل از خاموش کردن موتور (با تیک های ساعت سیستم)
ساعت 031 اندازه بخش (بایت): 0 - 128، 1 - 256، 2 - 512، 3 - 1024
ساعت 041 تعداد بخش ها در هر مسیر
ساعت 051 طول شکاف متقاطع برای عملیات خواندن/نوشتن
ساعت 061 طول منطقه داده
ساعت 071 طول شکاف متقاطع برای عملیات قالب
ساعت 081 کاراکتر متغیر برای قالب‌بندی (معمولاً 0F6h، یعنی "Ў")
ساعت 091 زمان نصب هد (بر حسب میلی ثانیه)
0 آه1 زمان شروع موتور (در 1/8 ثانیه)

جدول پارامترهای هارد دیسک

این ساختار 16 بایتی در آدرس برداری وقفه INT 41h (آدرس 4 بایت در 0:0104) قرار دارد. پارامترهای هارد دوم (در صورت وجود) در آدرس برداری INT 46h قرار دارند. این جداول چند متغیر مهم برای عملیات هارد دیسک تعریف می کند.

جدول 6.فرمت جدول هارد دیسک

جانبداریطولمحتوا
00 ساعت2 تعداد سیلندر
ساعت 021 تعداد سرها
ساعت 032 استفاده نشده (همیشه 0)
ساعت 052 شماره سیلندر شروع پیش جبران
ساعت 071 حداکثر طول بلوک ECC
ساعت 081 بایت کنترل:
بیت 0-2 - استفاده نشده (همیشه 0)؛
بیت 3 - اگر تعداد هدها بیش از 8 باشد تنظیم کنید.
بیت 4 - استفاده نشده (همیشه 0)؛
بیت 5 - اگر سازنده نقشه نقص را با شماره "حداکثر سیلندر کار + 1" روی سیلندر قرار داده باشد تنظیم کنید.
بیت 6 - ممنوعیت بررسی مجدد ECC.
بیت 7 - کنترل ECC غیرفعال است
ساعت 091 استفاده نشده (همیشه 0)
0 آه1 استفاده نشده (همیشه 0)
0Bh1 استفاده نشده (همیشه 0)
0Ch2 شماره سیلندر منطقه پارکینگ
0 ه1 تعداد بخش ها در هر مسیر
0Fh1 ذخیره

جدول تخصیص فایل (FAT)

اندازه فایل ممکن است در طول زمان تغییر کند. اگر اجازه می‌دهید فایلی فقط در بخش‌های مجاور ذخیره شود، وقتی اندازه فایل افزایش می‌یابد، سیستم‌عامل باید آن را به طور کامل در سایز مناسب دیگری (آزاد) ناحیه دیسک بازنویسی کند. برای ساده سازی و سرعت بخشیدن به عملیات افزودن داده های جدید به یک فایل، سیستم عامل های مدرن از جداول توزیع فایل (جدول تخصیص فایل، به اختصار FAT) استفاده می کنند که به شما امکان می دهد یک فایل را در چندین بخش غیر پیوسته ذخیره کنید.

هنگام استفاده از FAT، ناحیه داده یک درایو منطقی به بخش هایی با اندازه مساوی تقسیم می شود - خوشه ها. یک خوشه می تواند شامل یک یا چند بخش باشد که به صورت متوالی روی یک دیسک قرار دارند. تعداد سکتورها در یک خوشه باید مضربی از 2 N باشد و می تواند مقادیری از 1 تا 64 داشته باشد (اندازه خوشه بستگی به نوع FAT استفاده شده و اندازه دیسک منطقی دارد).

به هر خوشه عنصر جدول FAT اختصاص داده شده است. دو عنصر اول FAT رزرو شده اند - اگر خوشه های داده K روی دیسک وجود داشته باشد، تعداد عناصر FAT K+2 خواهد بود. نوع FAT با مقدار K تعیین می شود:

  1. اگر ک<4085 - используется FAT12;
  2. اگر 4084>K<65525 - используется FAT16;
  3. اگر 65524> K - FAT32 استفاده شود.

نام انواع FAT از اندازه عنصر گرفته شده است. بنابراین یک عنصر FAT12 دارای اندازه 12 بیت، FAT16 - 16 بیت، FAT32 - 32 بیت است. لطفاً توجه داشته باشید که در FAT32، چهار بیت باینری مهم رزرو شده و در حین کارکرد سیستم عامل نادیده گرفته می‌شوند (یعنی فقط هفت بیت هگزادسیمال عنصر دارای کم‌اهمیت هستند).

FAT یک لیست پیوندی است که سیستم عامل از آن برای پیگیری موقعیت فیزیکی داده ها روی دیسک و یافتن حافظه آزاد برای فایل های جدید استفاده می کند.

دایرکتوری فایل (جدول محتویات) برای هر فایل حاوی تعداد عنصر شروع در جدول FAT است که مربوط به اولین خوشه در زنجیره توزیع فایل است. عنصر FAT مربوطه یا پایان زنجیره را نشان می دهد یا به عنصر بعدی و غیره اشاره دارد. مثال:

این نمودار مفاهیم اساسی FAT را نشان می دهد. از آن مشخص است که:

  1. MYFILE.TXT 10 خوشه را اشغال می کند. اولین خوشه خوشه 08 است، آخرین خوشه 1Bh است. زنجیره خوشه ای - 08h، 09h، 0Ah، 0Bh، 15h، 16h، 17h، 19h، 1Ah، 1Bh. هر عنصر به عنصر بعدی در زنجیره اشاره می کند و آخرین عنصر شامل کد ویژه(جدول 7 را ببینید).
  2. Cluster 18h به عنوان معیوب مشخص شده است و در زنجیره توزیع گنجانده نشده است.
  3. خوشه های 06h، 07h، 0Ch-14h و 1Ch-1Fh خالی هستند و برای توزیع در دسترس هستند.
  4. زنجیره دیگری با خوشه 02h شروع می شود و با خوشه 05h پایان می یابد. برای پیدا کردن نام فایل، باید عنصر فهرست محتویات را با شماره کلاستر شروع 02h پیدا کنید.

جدول 7.مقادیر عنصر FAT

FAT معمولاً از بخش منطقی 1 در پارتیشن DOS شروع می شود (یعنی می توان آن را با INT 25h با DX=1 خواند). به طور کلی، ابتدا باید root_sector را بخوانید (DX=0) و مقدار افست 0Eh را بگیرید. این نشان می دهد که چند بخش ریشه و ذخیره در مقابل FAT قرار دارند. سپس از این عدد (معمولاً 1) به عنوان محتویات DX برای خواندن FAT از طریق INT 25h استفاده کنید.

ممکن است چندین نسخه از FAT وجود داشته باشد. به طور معمول دو نسخه یکسان نگهداری می شود. در این موارد، تمام کپی ها مستقیماً در کنار یکدیگر قرار می گیرند.

اظهار نظر:

  • بر اساس یک تصور غلط رایج، اعتقاد بر این است که FAT 16 بیتی اجازه نمی دهد DOS با دیسک های بزرگتر از 32 مگابایت کار کند. در واقع، محدودیت این است که INT 25h/26h نمی تواند با اعداد SECTOR بزرگتر از 65535 کار کند. از آنجایی که اندازه بخش معمولاً 512 بایت یا نیم کیلوبایت است، این محدودیت 32 مگابایتی را دیکته می کند. از طرف دیگر، هیچ چیز مانع از داشتن بخش های بزرگتر نمی شود، بنابراین DOS از نظر تئوری می تواند با هر دیسکی کار کند.
  1. عدد خوشه را در 3 ضرب کنید.
  2. اگر عدد عنصر زوج باشد، و کلمه read و ماسک 0FFFh باشد. اگر عدد عنصر فرد است، مقدار را 4 بیت به سمت راست تغییر دهید. در نتیجه مقدار مورد نظر عنصر FAT را دریافت خواهید کرد.

حالا بیایید به روند نوشتن یک عنصر در FAT12 نگاه کنیم.

  1. عدد خوشه را در 3 ضرب کنید.
  2. نتیجه را بر 2 تقسیم کنید (طول عنصر 1.5 (3/2) بایت است).
  3. یک کلمه 16 بیتی از FAT را با استفاده از نتیجه عملیات قبلی به عنوان آدرس بخوانید.
  4. اگر عدد عنصر زوج است، یک عملیات AND روی کلمه read و ماسک 0F000h و سپس یک عملیات OR روی نتیجه حاصل و مقدار عنصر نوشته شده انجام دهید. اگر عدد عنصر فرد باشد، و کلمه خوانده شده و ماسک 0F000h باشد، سپس مقدار را به سمت چپ 4 بیت و OR نتیجه عملیات قبلی را تغییر دهید.
  5. کلمه 16 بیتی حاصل را دوباره به FAT بنویسید.

اظهار نظر:

  • یک عنصر 12 بیتی می تواند از مرز دو بخش عبور کند، بنابراین اگر در یک زمان یک بخش FAT را می خوانید مراقب باشید.
    عناصر 16 بیتی ساده تر هستند - هر عنصر شامل افست 16 بیتی (از ابتدای FAT) عنصر بعدی در زنجیره است.
    عناصر 32 بیتی - هر عنصر حاوی افست 32 بیتی عنصر بعدی در زنجیره است.

در برنامه های زبان اسمبلی، اغلب به جای دستور MUL از الگوریتم shift-and-ad برای انجام ضرب در 3 استفاده می شود: عدد اصلی کپی می شود، کپی عدد یک جا به چپ منتقل می شود (ضرب در 2) و سپس هر دو عدد اضافه می شوند (x + 2x = 3x). به جای دستور DIV، یک بیت به سمت راست شیفت کنید.

عنصر FAT شامل شماره خوشه است، اما هنگام کار با دیسک در سطح پایین، واحد آدرس پذیر داده، بخش است، نه خوشه.

یک فلاپی دیسک (یا پارتیشن دیسک سخت) به صورت زیر ساخته شده است:

  1. بخش های ریشه و ذخیره؛
  2. FAT#1;
  3. چربی شماره 2؛
  4. دایرکتوری ریشه (در FAT32 وجود ندارد)؛
  5. منطقه داده

هر بخش در این ساختار دارای طول متغیر است و برای تبدیل صحیح شماره خوشه به شماره بخش، باید طول هر بخش را بدانید.

برای به دست آوردن شماره بخش شروع خوشه از شماره خوشه ClustNum (از قسمت مربوطه در ورودی دایرکتوری یا زنجیره FAT بخوانید)، می توانید از تابع OS 32h غیرمستند استفاده کنید یا بخش ریشه را بخوانید و فرمول های زیر را اعمال کنید:

root_sectors = (RootSiz * 32) / 512 start_data = ResSecs + (FatSize * FatCnt) + root_sectors start_sector = start_data + ((ClustNum - 2) * ClustSiz) ,

که در آن مقادیر متغیرهای: RootSiz، ResSecs، FatSize، FatCnt، ​​ClustSiz از بخش ریشه یا از BPB بازیابی می شوند.

DX=start_sector را قبل از عملیات خواندن INT 25h یا نوشتن INT 26h تنظیم کنید.

دایرکتوری های فایل

فهرست فایل آرایه ای از عناصر 32 بایتی - توصیفگرهای فایل است. از دیدگاه سیستم عامل، همه دایرکتوری ها (به جز دایرکتوری ریشه در سیستم های FAT12 و FAT16) شبیه فایل ها هستند و می توانند شامل تعداد دلخواه ورودی باشند.

دایرکتوری ریشه دایرکتوری اصلی دیسک است که درخت دایرکتوری فرعی از آن شروع می شود. برای دایرکتوری ریشه در FAT12 و FAT16، یک فضای خاص با اندازه ثابت (16 کیلوبایت) در ناحیه سیستم دیسک منطقی اختصاص داده شده است که برای ذخیره 512 عنصر طراحی شده است. در یک سیستم FAT32، دایرکتوری ریشه یک فایل با هر اندازه است.

جدول 8.ساختار آیتم کاتالوگ

جانبداریطولمحتوا
00 ساعت11 نام فایل کوتاه
0Bh1 ویژگی های فایل
0Сh1 * برای Windows NT محفوظ است (باید حاوی 0 باشد)
0Dh1 * فیلدی که زمان ایجاد فایل را مشخص می کند (در ده ها میلی ثانیه).
مقدار فیلد می تواند از 0 تا 199 متغیر باشد
0 ه2 *زمان ایجاد فایل
ساعت 102 *تاریخ ایجاد فایل
ساعت 122 *تاریخ آخرین دسترسی به فایل برای نوشتن یا خواندن داده ها
ساعت 142 *مهم ترین کلمه از شماره اولین خوشه فایل
ساعت 162 زمان آخرین عملیات نوشتن روی فایل
ساعت 182 تاریخ آخرین عملیات نوشتن روی فایل
1 آه2 کلمه کم اولین شماره خوشه فایل
1 فصل4 اندازه فایل بر حسب بایت (تعداد 32 بیتی)

علامت "*" به این معنی است که فیلد فقط در سیستم فایل FAT32 پردازش می شود. در سیستم های FAT12 و FAT16 فیلد رزرو شده در نظر گرفته شده و حاوی مقدار 0 است.

نام فایل کوتاه از دو فیلد تشکیل شده است: یک فیلد 8 بایتی حاوی نام فایل واقعی و یک فیلد 3 بایتی حاوی پسوند. اگر نام فایل وارد شده توسط کاربر کوتاه‌تر از هشت کاراکتر باشد، با فاصله (کد فاصله - 20h) پر می‌شود، اگر پسوند وارد شده کوتاه‌تر از سه کاراکتر باشد، با فاصله نیز پر می‌شود.

برخی از توابع DOS به یک بایت ویژگی فایل به عنوان پارامتر نیاز دارند. در صورتی که فایل دارای خاصیت مربوطه باشد، بیت های بایت ویژگی روی 1 تنظیم می شوند:

  • بیت 0 - فقط خواندن
  • بیت 1 - پنهان؛
  • بیت 2 - سیستم؛
  • بیت 3 - شناسه حجم؛
  • بیت 4 - فهرست؛
  • بیت 5 - بایگانی شده؛
  • بیت های 6 و 7 رزرو شده اند (بر روی 0 تنظیم می شوند).

فیلد زمان ایجاد فایل و فیلد زمان آخرین عملیات نوشتن روی فایل دارای فرمت زیر هستند:

15 9 8 5 4 0

هنگام ایجاد فایل‌ها، تاریخ‌ها از ابتدای دوران MS-DOS شمارش می‌شوند، یعنی. مورخ 01/01/1980. بیت های 9-15 حاوی عدد سال منهای 1980 هستند (مقادیر معتبر از 0 تا 127).

نام فایل های طولانی

با شروع ویندوز 95، می توان به یک فایل (علاوه بر یک نام کوتاه) یک نام به اصطلاح طولانی اختصاص داد. برای ذخیره یک نام طولانی، از عناصر دایرکتوری خالی مجاور عنصر اصلی - توصیفگر فایل - استفاده می شود. وجود یکی در بیت‌های 0-3 بایت‌های مشخصه نشانه آن است که یک عنصر دایرکتوری آزاد برای ذخیره بخشی از نام فایل طولانی استفاده می‌شود (این ترکیب برای توصیف‌کننده‌های فایل و دایرکتوری ممکن نیست). نام فایل کوتاه و بلند منحصر به فرد است، به عنوان مثال. نباید دو بار در یک فهرست نمایش داده شود.

یک نام طولانی نه با کاراکترهای ASCII، بلکه در قالب یونیکد نوشته شده است، جایی که هر الفبای ملی دارای مجموعه ای از کدهای مربوطه است. هزینه ای که برای جهانی بودن یونیکد باید پرداخت شود، کاهش تراکم ذخیره سازی اطلاعات است - هر کاراکتر دو بایت (کلمه 16 بیتی) را اشغال می کند. در عناصر دایرکتوری خالی، نام طولانی به صورت قطعه قطعه شده نوشته می شود (جدول 9 را ببینید).

جدول 9.ساختار یک عنصر دایرکتوری که قطعه ای از نام فایل طولانی را ذخیره می کند

نام طولانی ابتدا در دایرکتوری نوشته می شود و قطعات به ترتیب معکوس قرار می گیرند و با آخرین مورد شروع می شود:

همه دایرکتوری ها، به استثنای دایرکتوری ریشه، به جای توصیف کننده فایل، دارای پیوندهای ویژه در دو عنصر اول هستند. عنصر شماره 0 حاوی یک اشاره گر به خود دایرکتوری است و فیلد نام حاوی یک نقطه (".") است. عنصر شماره 1 حاوی یک اشاره گر به دایرکتوری والد است و فیلد نام شامل دو نقطه (.") است. اگر مرجع جدول FAT برای مورد شماره 1 دارای مقدار تهی باشد، دایرکتوری فعلی در دایرکتوری ریشه است.

بلوک اطلاعات دیسک توسط تابع UNDOCUMENTED DOS 32h تشکیل شده است.

تمام اطلاعات موجود در اینجا را می توان با خواندن بخش ریشه و فراخوانی تعدادی دیگر از توابع سیستم عامل با برخی محاسبات به دست آورد، اما بلوک اطلاعات از این جهت مفید است که همه داده ها را با هم در بر می گیرد. این تنها تماسی است که آدرس هدر درایور دستگاه را برمی گرداند.

جدول 10.دیاگرام بلوک اطلاعات دیسک

جانبداریطولمحتوا
00 ساعت1 شماره دیسک (0=A، 1=B و غیره)
ساعت 011 شماره دستگاه فرعی از هدر دستگاه (یک راننده می تواند چندین درایو را مدیریت کند)
ساعت 022 اندازه بخش به بایت
ساعت 041 تعداد بخش در هر خوشه -1 (حداکثر بخش در هر خوشه)
ساعت 051 یک خوشه را به یک بخش تغییر دهید (خوشه = 2 # بخش) (بخش در هر خوشه در توان دو: 2 برای 4، 3 برای 8)
ساعت 062 تعداد سکتورهای یدکی (ریشه، شروع بخش ریشه) (N اولین بخش FAT)
ساعت 081 تعداد جداول FAT
ساعت 092 حداکثر تعداد عناصر در فهرست مطالب ریشه
0Bh2 شماره بخش برای خوشه شماره 2 (اولین خوشه داده)
0Dh2 مجموع خوشه ها +2 (بالاترین تعداد خوشه)
0Fh1 تعداد بخش های اشغال شده توسط یک FAT
ساعت 102 شماره بخش ابتدای فهرست ریشه مطالب
ساعت 124 آدرس Device_header
ساعت 161 بایت media_descriptor
ساعت 171 پرچم دسترسی: 0 در صورت دسترسی به دستگاه
ساعت 184 آدرس بلوک اطلاعات دیسک بعدی
(0FFFFh اگر بلوک آخرین مورد باشد)

پرچم های بیت حالت باز کردن:

  1. 0-2: حقوق دسترسی به فرآیند در شبکه
    000 - خواندن؛ 001 - رکورد؛ 010 - خواندن و نوشتن.
  2. 4-6: حالت تقسیم:
    000 - حالت سازگاری
    001 = ضبط انحصاری فایل
    010 = رد ورودی
    011 = رد خواندن
    100 = چیزی را رد نکنید
  3. 7: ارث:
    1 - فایل خصوصی برای این فرآیند 0 - به ارث برده شده توسط پردازش های فرزند

اگر بایت ویژگی فایل فقط خواندنی را نشان دهد، این پرچم ها را لغو می کند.

مجوزهای شبکه و بیت‌های حالت اشتراک‌گذاری تنها زمانی تأثیر می‌گذارند که برنامه SHARE نصب شده باشد.