في نظام التشغيل، كان علينا إعطاء المدخلات إلى وحدة المعالجة المركزية، وتقوم وحدة المعالجة المركزية بتنفيذ التعليمات وتعطي المخرجات في النهاية. ولكن كانت هناك مشكلة في هذا النهج. في الوضع الطبيعي، يتعين علينا التعامل مع العديد من العمليات، ونعلم أن الوقت المستغرق في عملية الإدخال/الإخراج كبير جدًا مقارنة بالوقت الذي تستغرقه وحدة المعالجة المركزية لتنفيذ التعليمات. لذا، في الطريقة القديمة، ستوفر عملية واحدة الإدخال بمساعدة جهاز الإدخال، وخلال هذا الوقت، تكون وحدة المعالجة المركزية في حالة خمول.
com.execvp
ثم تقوم وحدة المعالجة المركزية بتنفيذ التعليمات، ويتم تسليم الإخراج مرة أخرى إلى بعض أجهزة الإخراج، وفي هذا الوقت، تكون وحدة المعالجة المركزية أيضًا في حالة خمول. بعد إظهار المخرجات، تبدأ العملية التالية في تنفيذها. لذلك، في معظم الأوقات، تكون وحدة المعالجة المركزية في وضع الخمول، وهو أسوأ حالة يمكن أن نواجهها في أنظمة التشغيل. وهنا يأتي دور مفهوم التخزين المؤقت.
ما هو التخزين المؤقت
التخزين المؤقت هو عملية يتم فيها الاحتفاظ بالبيانات مؤقتًا لاستخدامها وتنفيذها بواسطة جهاز أو برنامج أو نظام. يتم إرسال البيانات وتخزينها في الذاكرة أو غيرها من وحدات التخزين المتطايرة حتى يطلبها البرنامج أو الكمبيوتر للتنفيذ.
SPOOL هو اختصار لـ العمليات الطرفية المتزامنة عبر الإنترنت . بشكل عام، يتم الاحتفاظ بالتخزين المؤقت على الذاكرة الفعلية للكمبيوتر، أو المخازن المؤقتة، أو المقاطعات الخاصة بجهاز الإدخال/الإخراج. تتم معالجة التخزين المؤقت بترتيب تصاعدي، ويعمل بناءً على خوارزمية FIFO (الوارد أولاً يخرج أولاً).
يشير التخزين المؤقت إلى وضع بيانات وظائف الإدخال/الإخراج المختلفة في مخزن مؤقت. هذا المخزن المؤقت عبارة عن منطقة خاصة في الذاكرة أو القرص الصلب يمكن لأجهزة الإدخال/الإخراج الوصول إليها. يقوم نظام التشغيل بالأنشطة التالية المتعلقة بالبيئة الموزعة:
- يتعامل مع التخزين المؤقت لبيانات جهاز الإدخال/الإخراج نظرًا لأن الأجهزة لها معدلات وصول مختلفة إلى البيانات.
- يحافظ على المخزن المؤقت للتخزين المؤقت، الذي يوفر محطة انتظار حيث يمكن أن تبقى البيانات بينما يلحق الجهاز الأبطأ بالمهمة.
- يحافظ على الحساب المتوازي بسبب عملية التخزين المؤقت حيث يمكن للكمبيوتر إجراء عمليات الإدخال/الإخراج بترتيب متوازي. يصبح من الممكن جعل الكمبيوتر يقرأ البيانات من الشريط، ويكتب البيانات على القرص، ويكتبها على طابعة الشريط أثناء قيامه بمهمة الحوسبة الخاصة به.
كيف يعمل التخزين المؤقت في نظام التشغيل
في نظام التشغيل، يتم التخزين المؤقت بالخطوات التالية، مثل:
- يتضمن التخزين المؤقت إنشاء مخزن مؤقت يسمى SPOOL، والذي يُستخدم لإيقاف المهام والبيانات حتى يصبح الجهاز الذي تم إنشاء SPOOL فيه جاهزًا لاستخدام هذه المهمة وتنفيذها أو العمل على البيانات.
- عندما يقوم جهاز أسرع بإرسال البيانات إلى جهاز أبطأ لإجراء بعض العمليات، فإنه يستخدم أي ذاكرة ثانوية متصلة كمخزن مؤقت للتخزين المؤقت (SPOOL). يتم الاحتفاظ بهذه البيانات في التخزين المؤقت حتى يصبح الجهاز الأبطأ جاهزًا للعمل على هذه البيانات. عندما يكون الجهاز الأبطأ جاهزًا، يتم تحميل البيانات الموجودة في SPOOL على الذاكرة الرئيسية لإجراء العمليات المطلوبة.
- يعتبر التخزين المؤقت الذاكرة الثانوية بأكملها بمثابة مخزن مؤقت ضخم يمكنه تخزين العديد من المهام والبيانات للعديد من العمليات. تتمثل ميزة التخزين المؤقت في أنه يمكنه إنشاء قائمة انتظار من المهام التي يتم تنفيذها بترتيب FIFO لتنفيذ المهام واحدة تلو الأخرى.
- يمكن للجهاز الاتصال بالعديد من أجهزة الإدخال، الأمر الذي قد يتطلب بعض العمليات على بياناتها. لذلك، يمكن لجميع أجهزة الإدخال هذه وضع بياناتها في الذاكرة الثانوية (SPOOL)، والتي يمكن بعد ذلك تنفيذها واحدًا تلو الآخر بواسطة الجهاز. سيؤدي هذا إلى التأكد من أن وحدة المعالجة المركزية ليست خاملة في أي وقت. لذلك، يمكننا القول أن التخزين المؤقت هو مزيج من التخزين المؤقت وقائمة الانتظار.
- بعد أن تقوم وحدة المعالجة المركزية بإنشاء بعض المخرجات، يتم حفظ هذا الإخراج أولاً في الذاكرة الرئيسية. يتم نقل هذا الإخراج إلى الذاكرة الثانوية من الذاكرة الرئيسية، ومن هناك، يتم إرسال الإخراج إلى أجهزة الإخراج المعنية.
مثال على التخزين المؤقت
أكبر مثال على التخزين المؤقت هو الطباعة . يتم تخزين المستندات المراد طباعتها في SPOOL ثم يتم إضافتها إلى قائمة الانتظار للطباعة. خلال هذا الوقت، يمكن للعديد من العمليات تنفيذ عملياتها واستخدام وحدة المعالجة المركزية دون الانتظار بينما تقوم الطابعة بتنفيذ عملية الطباعة على المستندات واحدة تلو الأخرى.
يمكن أيضًا إضافة العديد من الميزات إلى عملية الطباعة Spooling، مثل تحديد الأولويات أو الإشعار عند اكتمال عملية الطباعة أو تحديد أنواع الورق المختلفة للطباعة عليها وفقًا لاختيار المستخدم.
مزايا التخزين المؤقت
فيما يلي المزايا التالية للتخزين المؤقت في نظام التشغيل، مثل:
- لا يهم عدد أجهزة الإدخال/الإخراج أو العمليات. يمكن للعديد من أجهزة الإدخال/الإخراج العمل معًا في وقت واحد دون أي تداخل أو تعطيل لبعضها البعض.
- أثناء التخزين المؤقت، لا يوجد أي تفاعل بين أجهزة الإدخال/الإخراج ووحدة المعالجة المركزية. وهذا يعني أنه ليست هناك حاجة لانتظار وحدة المعالجة المركزية حتى تتم عمليات الإدخال/الإخراج. تستغرق مثل هذه العمليات وقتًا طويلاً للانتهاء من تنفيذها، لذا لن تنتظر وحدة المعالجة المركزية حتى تنتهي.
- لا تعتبر وحدة المعالجة المركزية في حالة الخمول فعالة للغاية. يتم إنشاء معظم البروتوكولات لاستخدام وحدة المعالجة المركزية بكفاءة في أقل وقت ممكن. في التخزين المؤقت، تظل وحدة المعالجة المركزية مشغولة معظم الوقت ولا تنتقل إلى حالة الخمول إلا عند استنفاد قائمة الانتظار. لذلك، تتم إضافة كافة المهام إلى قائمة الانتظار، وسوف تنهي وحدة المعالجة المركزية كل تلك المهام ثم تنتقل إلى حالة الخمول.
- فهو يسمح للتطبيقات بالعمل بسرعة وحدة المعالجة المركزية أثناء تشغيل أجهزة الإدخال/الإخراج بسرعاتها الكاملة.
عيوب التخزين المؤقت
في نظام التشغيل، التخزين المؤقت له العيوب التالية، مثل:
- يتطلب التخزين المؤقت قدرًا كبيرًا من التخزين اعتمادًا على عدد الطلبات المقدمة بواسطة الإدخال وعدد أجهزة الإدخال المتصلة.
- ونظرًا لأن SPOOL يتم إنشاؤه في وحدة التخزين الثانوية، فإن وجود العديد من أجهزة الإدخال التي تعمل في وقت واحد قد يشغل مساحة كبيرة على وحدة التخزين الثانوية وبالتالي يزيد من حركة مرور القرص. وينتج عن هذا أن يصبح القرص أبطأ فأبطأ مع زيادة حركة المرور أكثر فأكثر.
- يتم استخدام التخزين المؤقت لنسخ البيانات وتنفيذها من جهاز أبطأ إلى جهاز أسرع. يقوم الجهاز الأبطأ بإنشاء ملف SPOOL لتخزين البيانات التي سيتم تشغيلها عليها في قائمة الانتظار، وتعمل وحدة المعالجة المركزية عليها. هذه العملية في حد ذاتها تجعل التخزين المؤقت غير مجدي للاستخدام في بيئات الوقت الفعلي حيث نحتاج إلى نتائج في الوقت الفعلي من وحدة المعالجة المركزية. وذلك لأن جهاز الإدخال أبطأ وبالتالي ينتج بياناته بوتيرة أبطأ بينما يمكن لوحدة المعالجة المركزية أن تعمل بشكل أسرع، لذلك تنتقل إلى العملية التالية في قائمة الانتظار. ولهذا السبب يتم إنتاج النتيجة أو المخرجات النهائية في وقت لاحق بدلاً من إنتاجها في الوقت الفعلي.
الفرق بين التخزين المؤقت والتخزين المؤقت
التخزين المؤقت والتخزين المؤقت هما الطريقتان اللتان تعمل بهما أنظمة الإدخال / الإخراج الفرعية على تحسين أداء وكفاءة الكمبيوتر باستخدام مساحة تخزين في الذاكرة الرئيسية أو على القرص.
الفرق الأساسي بين التخزين المؤقت والتخزين المؤقت هو أن التخزين المؤقت يتداخل مع الإدخال/الإخراج لوظيفة واحدة مع تنفيذ وظيفة أخرى. بالمقارنة، يتداخل التخزين المؤقت مع الإدخال/الإخراج لوظيفة واحدة مع تنفيذ نفس الوظيفة. فيما يلي بعض الاختلافات الإضافية بين التخزين المؤقت والتخزين المؤقت، مثل:
الخلية ليست متساوية
شروط | التخزين المؤقت | التخزين المؤقت |
---|---|---|
تعريف | التخزين المؤقت، وهو اختصار لـ Simultaneous Peripheral Operation Online (SPOOL)، يضع البيانات في منطقة عمل مؤقتة ليتم الوصول إليها ومعالجتها بواسطة برنامج أو مورد آخر. | التخزين المؤقت هو عملية تخزين البيانات مؤقتًا في المخزن المؤقت. يساعد في مطابقة سرعة تدفق البيانات بين المرسل والمستقبل. |
متطلبات الموارد | يتطلب التخزين المؤقت إدارة أقل للموارد نظرًا لأن الموارد المختلفة تدير العملية لوظائف محددة. | يتطلب التخزين المؤقت مزيدًا من إدارة الموارد حيث يدير المورد نفسه عملية نفس المهمة المقسمة. |
التنفيذ الداخلي | يتداخل التخزين المؤقت مع مدخلات ومخرجات مهمة واحدة مع حساب مهمة أخرى. | يتداخل التخزين المؤقت مع مدخلات ومخرجات مهمة واحدة مع حساب نفس الوظيفة. |
فعال | التخزين المؤقت أكثر كفاءة من التخزين المؤقت. | التخزين المؤقت أقل كفاءة من التخزين المؤقت. |
المعالج | يمكن للتخزين المؤقت أيضًا معالجة البيانات في المواقع البعيدة. يجب على التخزين المؤقت فقط إعلامك عند اكتمال العملية في الموقع البعيد لتخزين العملية التالية إلى الجهاز البعيد. | التخزين المؤقت لا يدعم المعالجة عن بعد. |
الحجم على الذاكرة | يعتبر القرص بمثابة مخزن مؤقت أو مخزن مؤقت ضخم. | المخزن المؤقت هو منطقة محدودة في الذاكرة الرئيسية. |