هل تتذكر حين أدركت لأول مرة
أن جهاز حاسوبك هو أكثر
من مجرد جهاز للعرض ولوحة مفاتيح؟
أن ما بين النقر بالفأرة وتشغيل الفيديو،
كان هناك شيء التقط غايتكم،
وفهمه
وعمل على تنفيذه؟
ما هو هذا الشيء؟
هل هو عفريت؟
دعونا نتصور أننا يمكن أن نتقلص
إلى حجم الإلكترون
ونحقن أنفسنا في نقرة الفأرة.
إن قمت بتفكيك فأرتك،
سترى أنها آلة في غاية البساطة.
تملك زرين اثنين
ونظام لكشف الحركة والمسافة.
قد تكون لديك فأرة ضوئية
تجري هذه القياسات بالأضواء وأجهزة الاستشعار،
ولكن الأقدم قامت بذلك باستخدام كرة مطاطية
وبعض العجلات البلاستيكية.
نفس المبدأ
عند النقر على زر الفأرة الخاصة بك،
فهو يرسل رسالة إلى جهاز الحاسوب
بمعلومات عن موقعها.
عندما يتم تلقي نقرتك بالفأرة،
تتم معالجتها بواسطة النظام الفرعي الأساسي للإدخال/الإخراج.
ويعمل هذا النظام الفرعي مثل عيون وآذان
وفم ويدي الحاسوب.
فهو يوفر أساسا طريقة للحاسوب
للتفاعل مع بيئته.
ولكنه يعمل كذلك كمصدّ
للحفاظ على المعالج من سيطرة التشويشات.
في هذه الحالة، يقرر النظام الفرعي للإدخال والإخراج
أن نقرتك على الفأرة مهمة جداً
لذا فإنه يقاطع المعالج
"مهلا، أيها المعالج! لدي نقرة هنا "
الـمعالج، أو وحدة المعالجة المركزية،
هو العقل المدبر لجهاز الحاسوب بأكمله.
تماما كما أن دماغك لا يغطي جسمك بأكمله،
فإن وحدة المعالجة المركزية لا تغطي جهاز الحاسوب بأكمله،
لكن مع ذلك فإنها تدير العرض كل الوقت.
ووظيفة وحدة المعالجة المركزية، وظيفتها الكاملة،
هي جلب التعليمات من الذاكرة
وتنفيذها.
وبالتالي حين تقوم بالكتابة بشكل متواصل
وربما بشكل سريع جدا،
60 كلمة في الدقيقة مثلا،
تقوم وحدة المعالجة المركزية بجلب وتنفيذ
ملايير التعليمات في الثانية.
نعم، الملايير كل ثانية:
تعليمات لتحريك الماوس على الشاشة،
لتشغيل الساعة على سطح المكتب الخاص بك،
ولتشغيل راديو الأنترنيت الخاص بك،
وإدارة الملفات التي تقوم بتحريرها على القرص الصلب،
وأكثر من هذا بكثير.
معالج الكمبيوتر الخاص بك يقوم بمهام متعددة بشكل لا يتصور!
"ولكن يا إلهي
هناك نقرة فأرة هامة جداً
آتية في طريقها الآن!
لندع كل شيء ونتعامل معها!"
هناك برامج لكل شيء
يقوم به المعالج.
برنامج خاص بالفأرة،
برنامج للساعة،
وللمحطات الإذاعية عبر الأنترنيت،
والتعامل مع الحروف المرسلة من لوحة المفاتيح.
في البداية كتب كل برنامج بواسطة الإنسان
في لغة برمجة يستطيع الإنسان قراءتها،
مثل الجافا،
والسي بلس بلس،
أو بايثون.
ولكن البرامج البشرية تستغرق الكثير من المساحة
وتحتوي على الكثير من المعلومات غير الضرورية بالنسبة للحاسوب،
حيث أنها جمعت وجعلت أصغر
وخزّنت في بتات من واحدات وأصفار في الذاكرة.
تدرك وحدة المعالجة المركزية أنها بحاجة إلى تعليمات
لمعرفة كيفية التعامل مع نقرة الفأرة هاته،
ولذلك فإنها تبحث عن عنوان برنامج الفأرة
وترسل طلبا إلى النظام الفرعي للذاكرة
للحصول على الإرشادات المخزنة هناك.
كل تعليمات برنامج تشغيل معرّف الفأرة
تم جلبها وتنفيذها على النحو الواجب.
وتلك ليست حتى نهاية القصة!
لأن المعالج يعرف أنه تم النقر بالفأرة
عندما كان المؤشر فوق صورة
أو زر على شاشة العرض،
وهكذا، يطلب المعالج من ذاكرة برنامج شاشة العرض
لمعرفة ماهية ذلك الزر.
ثم على المعالج أن يطلب من الذاكرة
برنامج الزر،
مما يعني أن المعالج يحتاج
إلى برنامج شاشة العرض مجددا
لإظهار الفيديو المرتبط بالزر،
وهكذا تسير الأمور.
ودعونا نقل فقط أن هناك الكثير من البرامج المشاركة
قبل حتى أن تشاهد الزر على الشاشة
يضيء عندما تقوم بالنقر فوقه.
لذلك، فقط مهمة بسيطة كالنقر بالفأرة
تعني المرور عبر كل هذه المكونات الحاسمة
من هندسة حاسوبك:
والملحقات،
ونظام المدخلات والمخرجات الأساسي،
والمعالج،
والبرامج،
والذاكرة،
من دون تدخل عفريت واحد.