کارایی سیستم فایل
فایل ساختمند ، یک ساختار دادهای ( ساده یا پیچیده ) ذخیره شده در حافظه خارجی است . اگر تمام اطلاعات در حافظه اصلی ذخیره شود، دستیابی به دادهها طبعاً خیلی سریع میشود . ولی عملاً استفاده از سلسله مراتب حافظهها اجتناب ناپذیر است زمان دستیابی به حافظه اصلی حدود 100000 بار سریعتر از زمان دستیابی به دیسک است . بنابراین از عوامل بسیار موثر در بهبود کارایی سیستم فایل ، زمان دستیابی به دادهها است . اما عوامل دیگری هم وجود دارند، هر چند نهایتاً زمان دستیابی به داده و دفعات دستیابی لازم برای بدست آوردن داده مرود نظر و انجام عملیات روی داده ، تعیین کننده کارایی سیستم است . عوامل مهمتر موثر در کارایی سیستم فایل عبارتند از :
سلسله مراتب حافظهها
پارامترهای ظرفیتی و زمان رسانه(بویژه دیسک )
اندازه بلاک و تکنیک بلاک بندی
لوکالیتی رکوردهای فایل
چگونگی بافرینگ و اندازه و تعداد بافرها
تکنیکها و طرح های بکار رفته در ایجاد و مدیریت فایلها در خود سیستم فایل
تکنیکهای کاهش زمان استوانهجویی و زمان درنگ دورانی
تکنیکهای تسریع پردازش فایل
سیستم فایل کاراتر (مثلا LFS) )
ساختار فایل کاراتر
بافر و بافرینگ
بافر ناحیه است واسط در عملیات ورودی و خروجی و در این ناحیه اقلا یک رکورد ( در حالت فایل بلاک بندی نشده ) و یا اقلا یک بلاک در حالت فایل بلاک بندی شده جای داده میشود و اساسا برای ایجاد هماهنگی بین عملیات پردازنده ورودی/ خروجی و واحد پردازش مرکزی در شرایطی تسریع این عملیات به کار میرود.
در سیستم فایل , بافر معمولا از منطقهای از حافظه اصلی به برنامه فایل پرداز تخصیص داده میشود که به آن منطقه بافر میگویند (و گاه از حافظه نهان استفاده میشود.)
بافرها به سه روش ساخته میشود.
با ایجاد ناحیهای از حافظ در برنامه و با اجرای یک ماکرو که محتوای بافر را با فایلهای تحت پردازش مرتبط میکند(در این حالت برنامهساز خود را ایجاد میکند)
یا اجرای یک ماکرو, که از سیستم در خواست ایجاد بافر میکند.
خود سیستم عامل وقتی که فایل باز میشود , اقدام به ایجاد (ها) میکند و پس از بسته شدن فایل , بافر(ها) را باز پس میگیرد.
چگونگی دستیابی برنامه به محتوای بافر
برنامه به دو صورت میتواند به محتوای بافر دستیابی داشته باشد:
روش موسوم به اسلوب انتقالی
روش موسوم به اسلوب مکان نمایی یا مکان گیری (یا اسلوب تعویض)
در روش اول , رکود از بافر ورودی به ناحیه کاری برنامه انتقال داده میشو و یا از ناحیه کاری به بافر خروجی عمل بلاک بنید و بلاک گشایی توسط سیستم انجام میشود و برنامه به بافر دستیابی ندارد و بافر خاص خود را دارد .(همان ناحیه کاری کاربر)
در این حالت, یک فرمان کانال برای هریک از بافرها وجود دارد و عملیات ورودی /خروجی نمیتوانند هر دو از یک بافر انجام پذیرد و روشن است که کاربر نیاز به ناحیه کاری خاصی دارد . در روش دوم, سیستم مکان بافر حاوی رکورد نظر کاربر را به نحوی به برنامه فایل پرداز مینمایاند, مثلاً از طریق گذاشتن آدرس آن در یک ثبات قرار دادی یا در ناحیه ای تعریف شده توسط برنامه در واقع کاربر از همان بافر به عنوان ناحیه کاری استفاده میکند و عمل بلاک بندی و بلاک گشایی را خون برنام انجام میدهد.
توجه داریم که بکارگیری دو اسلوب انتقالی و مکان نمایی , در هر یک از دو عمل ورودی یا خروجی , یا هر دو امکان پذیر است.
انواع بافرینگ
از نظر تعداد بافرهایی که به عملیات ورودی / خروجی برنامه فایل پرداز تخصیص میدیابد , انواع زیر وجود دارد:
بافرینگ ساده
بافرینگ مضاعف
بافرینگ چند گانه
-----------------------------------------------------------
بافرینگ ساده
در این بافرینگ ,یک بافر در اختیار برنامه فایل پرداز قرار داده میشود . در بافرینگ ساده طبعاً زمان انتظار واحد پردازش مرکزی و اجرای برنامه افزایش مییابد در اثنایی که بافر پر میشود , واحد پردازش مرکزی حالت عاطل دارد . در محیط چند برنامهای میتوان از زمان برای برنامههای دیگر استفاده کرد. میبینیم که در این حالت امکان همروندی عملیات CPU و عملیات پردازشگر ورودی/ خروجی وجود ندارد . البته در اسلوب مکان نمایی , در اسلوب انتقالی چون برنامه بافر خاص خود را دارد و در صورتیکه فایل بلاک بنید نشده باشد, این همروندی تا حدی امکان پذیر است . ضمن اینکه این موضع به نوع رسانه نیز بستگی دارد