مبحث بافر و بافرینگ

مبحث بافر و بافرینگ

 

the topic of buffering

دپارتمان آموزش کامپیوتر – کیش تک؛

بافر و بافرينگ

  • سيستم فايل: قسمتي از سيستم‌عامل كه با فايل در ارتباط است و به دو ناحيه منطقي و فيزيكي تقسيم ميشود:

سیستم فایل

 

  • بخش منطقي: دستورات كاربر مانند باز و بسته كردن فايل و خواندن و نوشتن فايل را انجام ميدهد.
  • بخش فيزيكي: به طور مستقيم به فايلهاي موجود بر روي حافظه جانبي دسترسي دارد. اين بخش درخواستهاي دريافتي از بخش منطقي را جهت ارسال به ديسك تبديل به دستورات مناسبي ميكند.
  • سه عمل اصلي در محيط فيزيكي انجام ميشود:

  سه عمل اصلی در محیط فیزیکی

 

بافر

  • ناحيه‌اي از حافظه‌ي اصلي است كه جهت هماهنگي در عمليات ورودي و خروجي و عمليات CPU به كار ميرود.
  • بافر ناحيه‌اي است كه بتواند حداقل يك بلاك را در خود جاي دهد چون در هر بار عمليات خواندن و نوشتن از ديسك حداقل يك بلاك تبادل مي‌شود.
  • چنانچه فايل را بلاك‌بندي كرده باشيم معمولاً براي انجام عمليات ورودي و خروجي بر روي فايلها از دو بافر ورودي و خروجي استفاده ميشود.

 

انواع بافر از نظر محل ايجاد

– سخت افزاري: بافر موجود در دستگاه هاي جانبي مثل :ديسك-پرينتر و….. اين بافرها معمولا قابليت ذخيره سازي حجم زيادي از اطلاعات را دارند. اين نوع بافر با سرعت دستگاه ذخيره‌سازي پر شده و پس از آن كه بافر پر شد، محتوي آن به كامپيوتر و از آنجا به بافر نرم‌افزاري منتقل مي‌شود.

– نرم افزاري: ناحيه‌اي كه توسط سيستم عامل در حافظه اصلي ايجاد مي‌گردد و در اختيار برنامه ها قرار مي گيرد.

 

بافرها به سه روش ايجاد ميشوند:

 

روش های ایجاد بافر

 

نحوه دستيابي سيستم فايل به محتويات بافر

  • روش انتقالي يا حالت حركت (move mode)
  • روش مكان نمايي يا تعيين محل (locate mode)

 

روش انتقالي يا حالت حركت (move mode)

  1. در اين روش برنامه بافر خاص خود را دارد (همان ناحيه كاري كاربر) و به بافر جداگانه‌اي دسترسي ندارد.
  2. ركورد از بافر ورودي به ناحيه كاري كاربر دي برنامه منتقل شده و يا از ناحيه كاري كاربر به بافر خروجي منتقل ميشود.
  3. عمل بلاك بندي و بلاك گشايي در اين روش توسط سيستم عامل صورت ميگيرد.

 

نحوه دستيابي سيستم فايل به محتويات بافر move mode

 

روش مكان نمايي يا تعيين محل(locate mode)

  1. در روش  مكان نمايي ناحيه كاري خاص كاربر وجود ندارد.
  2. در اين روش  بافر از ناحيه‌ي كاري كاربر (مكاني از حافظه كه برنامه در آن در حال اجرا است) جدا مي باشد.
  3. در اين روش برنامه به طور مستقيم عمليات نقل و انتقال داده‌ها را بر روي بافر ورودي/خروجي انجام ميدهد.
  4. در واقع كاربر از همان بافر به عنوان ناحيه كاري استفاده ميكند.
  5. در اين روش بلاك بندي و بلاك گشايي توسط برنامه انجام مي پذيرد.

 

نحوه دستيابي سيستم فايل به محتويات بافر locate mode

 

جهت ثبت نام در دوره های کامپیوتر ما اینجا کلیک کنید.

 

انواع بافرينگ

انواع بافرينگ از نظر تعداد بافرهايي كه به برنامه اختصاص داده مي‌شود:

  1. بافرينگ ساده يا استاندارد (Single  Buffering)
  2. بافرينگ مضاعف-دوگانه (Double  Buffering)   
  3. بافرينگ چندگانه (Multiple  Buffering) 

 بافرينگ ساده

  • يك بافر در اختيار برنامه قرار داده مي شود و در اين حالت در زمانهايي كه بافر در حال پر شدن است نمي توان از محتويات آن استفاده كرد.
  • CPU در اين روش ميبايست زمان انتظاري را سپري كند (idle time).
  • در سيستم هاي چند برنامه‌اي،CPU ميتواند در زمان انتظار اجراي ديگر برنامه‌ها را دنبال كند.

 

بافرینگ ساده

 

بافرينگ مضاعف

  • در اين روش، هنگامي كه يك بلاك خوانده شده و به يك بافر منتقل ميشود ميتوان به طور همزمان بافر ديگري را پردازش كرد.
  • در پردازش فايل ها به صورت پي‌درپي و انبوه، حتما لازم است دو بافر در اختيار داشته باشيم؛ چرا كه در غير اين صورت سرعت و كارايي عمليات پايين خواهد آمد.
  • از آنجايي كه در هنگام پر شدن يك بافر ميتوانيم بافر ديگر را مورد استفاده قرار دهيم مي‌بايست زماني كه CPU براي پردازش يك بافر صرف ميكند كمتر از زمان پر شدن بافر ديگر باشد.

بافرينگ مضاعف

 

بافرينگ چندگانه

  • در پردازش انبوه فايلها، سيستم فايل با استفاده از بافرينگ چندگانه ميتواند ركوردهاي فايل را از قبل خوانده و در بافر قرار دهد.
  • اين امر بدين معني است كه در هر لحظه، ركورد بعدي در بافر قرار دارد.
  • چنين تكنيكي به صف‌بندي موسوم است.

 

بافرينگ چندگانه

 

بافر و بافرينگ (جمع بندی)

  • بافرينگ به منظور ايجاد هماهنگي بين پردازشگر مركزي و پردازشگر ورودي/خروجي است.
  • در بافرينگ مضاعف، همروندي بين عمليات دو بخش ذكر شده امكان‌پذير ميشود اما گاهي ممكن است ميانگين درخواستهاي پردازش بيش از حدي باشد كه پردازشگر بتواند پاسخگو باشد.
  • در اين حالت حتي بافرينگ مضاعف نيز ممكن است پاسخگو نباشد، زيرا ممكن است تمام بافرها پر شوند و پردازشگر مركزي مجبور به انتظار باشد.
  • اما در محيطهاي چندبرنامه‌اي (Multi-task) وقتي كه فعاليتهاي گوناگون ورودي و خروجي و پردازشهاي متعدد وجود دارند،‌بافرينگ ميتواند كارايي سيستم و برنامه‌ها را افزايش دهد.

ارتباط‌با‌ما : 

تلفن : ۰۲۱۶۶۱۷۶۱۹۶       ۰۲۱۶۶۵۶۹۷۶۲      ۰۹۰۵۹۶۲۶۹۰۰

نشانی : خیابان جمالزاده‌شمالی بعد از بلوار‌کشاورز پلاک ۴۱۴ طبقه ۳ واحد ۵

شبکه‌های اجتماعی پردیس‌فناوری‌کیش :

سامانه آموزش‌مجازی رهیاران : www.rahyaranlms.ir 

کانال‌تلگرام kishtech@ 

 اینستاگرام    rahyaranlms            kishtech.ir  

آپارات     kishtech