البرمجيات
تحتاج معدات الحاسوب إلى برامج لتشغيلها والبرنامج program عبارة عن مجموعة من التعليمات المتسلسلة التي تخبر الحاسوب ماذا يفعل، أما البرمجيات (software) فهو عبارة عن مصطلح عام يطلق على أي برنامج منفرد أو مجموعة من البرامج والبيانات والمعلومات المخزنة. وبمقارنة البرمجيات مع المعدات التي تتكون من مواد فيزيائية كالمعدن والبلاستيك فإن البرمجيات تبنى من المعرفة والتخطيط والفحص ويسمى الشخص الذي يصنع البرنامج المبرمج (programmer) ويستخدم المبرمجون معرفتهم بكيفية عمل الحاسوب من أجل وضع مجموعة من التعليمات التي تنجز وظائف مفيدة، وتدخل هذه التعليمات إلى الحاسوب ويتم فحصها وتعديلها مراراً حتى تعطي النتائج الصحيحة المطلوبة.
أنواع البرمجيات:
هناك نوعان من البرمجيات هي:
- برمجيات النظم (system software)
- والبرمجيات التطبيقية (Applications Software)
أولاً: برمجيات النظم (system software)
هي البرمجيات التي يستخدمها الحاسوب ليقوم بعمله على أكمل وجه. وبعض هذه البرمجيات تبنى داخل الحاسوب، وبعضها يخزن على الأقراص الممغنطة ويجب شراؤها بشكل منفصل، ومن هذه البرمجيات لغات البرمجة والمترجمات ونظم التشغيل.
(ا) لغات البرمجة (Programming Languages)
يتم تطوير برامج الحاسوب باستخدام لغات البرمجة. وتتكون لغة البرمجة من مجموعة من الرموز والقواعد –كأي لغة أخرى- لتوجيه العمليات في الحاسوب وهناك العديد من لغات البرمجة المستخدمة، ويتم تصميم كل منها لحل نوع خاص من المشكلات ومن أهم لغات البرمجة المعروفة: الفورتران (Fortran) والكوبول (Cobol) والباسكال (Pascal) وسي (c) وجافا (java).
(ب) المترجمات والمفسرات: (Compilers And Interpreters)
المترجم أو المفسر عبارة عن برنامج يحول البرنامج المصدري (Source- code) المكتوب بلغة عالية المستوى إلى البرنامج الهدفي (Object – code) المكتوب بلغة الآلة والفرق بين المترجم والمفسر كما يلي: المترجم يترجم جميع برنامج المستوى الحالي مرة واحدة فقط. بينما يقوم المفسر بترجمة وتنفيذ جملة واحدة في الوقت الواحد بمجرد إدخالها إلى الحاسوب والمفسر ينفذ بصورة أبطأ ويأخذ حيزاً أكبر في الذاكرة الرئيسية من المترجم.
(ج) نظم التشغيل (Operating System)
يعرّف نظام التشغيل على أنه مجموعة من البرامج التي تتحكم وتشرف وتدعم معدات الحاسوب والحزم التطبيقية ولا يمكن لأي جهاز حاسوب أن يعمل إلا عند توفر نظام التشغيل الذي يعمل من الذاكرة الثانوية (الأقراص الممغنطة) إلى الذاكرة الرئيسية عند تشغيل الجهاز ليبدأ بإدارة العمل في الجهاز، ويتكون نظام التشغيل من مجموعة من البرامج المتكاملة تعمل كفريق، كل منها يؤدي مهمات معينة. برنامج التحكم الرئيسي في نظام التشغيل هو المشرف (Supervisor) ويعرف بالمراقب (Monitor) أو المنفذ (Executive) وهو مسؤول عن توجيه النشاطات لجميع أجزاء نظام التشغيل. وعند تشغيل الحاسوب لأول مرة فإن المشرف هو أول برنامج يحمل من جهاز إقامة النظام إلى الذاكرة الرئيسة.
وظائف نظم التشغيل:
1- تشغيل الحاسوب والاستعداد للعمل.
2- يمثل واجهة ربط مع المستخدم تمكنه من تشغيل البرمجيات الأخرى.
3- إدارة المصادر والمهام مثل إدارة الذاكرة الرئيسة ووحدات الإدخال والإخراج وإدارة وحدة المعالجة وإدارة وحدات التخزين الثانوي.
4- مراقبة النظام بأكمله وإعادة العمليات الغير مسموح بها Illegal Operations
5- إدارة الملفات وتنظيمها في المجلدات والفهارس ونسخها ونقلها ... إلخ.
6- المحافظة على سرية النظام ومنع الوصول غير المخول لبيانات برمجيات الجهاز.
من أنواع نظم التشغيل:
1- متعدد المهام: مثل Windows والذي يمكنك من تنفيذ أكثر من مهمة في نفس الوقت مثل طباعة وثيقة ورسم صورة في نفس الوقت.
2- متعدد المعالجة: ويستخدم في الحواسيب التي تحتوي أكثر من CPU فيها لتوزيع إدارة العمل بين هذه الوحدات.
3- المشاركة الزمنية: ويستخدم عندما يكون أكثر من مستخدم يتصل كل من طرفه مع نفس الجهاز حيث يعطي لكل منهم شريحة زمنية لتنفيذ الأوامر.
4- نظام تشغيل شبكات الحاسوب.
5- نظام تشغيل أجهزة الوقت الحقيقي: مثل الأجهزة الطبية والتي تحدث فيها عمليات الإدخال والمعالجة والإخراج في نفس اللحظة.
ثانياً: البرمجيات التطبيقية:
هذه البرمجيات تطوّع الحاسوب من أجل تنفيذ وظائف مفيدة عامة مثل معالجة النصوص، الجداول الإلكترونية، قواعد البيانات، البريد الإلكتروني، برامج الرسم، أدوات العرض، الألعاب، الوسائط المتعددة، ومعالجة الحسابات باستخدام برنامج المحاسب المثالي، وإدارة وجدولة المواد الدراسية والرسم الهندسي باستخدام برنامج Auto CAD. ويتم شراء هذه البرمجيات حسب الطلب من شركات الحاسوب المعنية بالبرمجة. من البرمجيات التطبيقية: برمجيات معالجة النصوص وبرمجيات الجداول الإلكترونية وبرمجيات قواعد البيانات وبرمجيات العرض والتقديم وبرمجيات النشر المكتبي وبرمجيات تعدد الوسائط وبرمجيات المحاسبة والمالية وبرمجيات التصميم والتصنيع والبرمجيات التعليمية والبرمجيات الترفيهية.
الواجهة في البرمجيات Interfaces
الواجهة Interface هي الطريقة التي يتخاطب بها مستخدم البرمجة مع الحاسوب وهي نوعان:
1- التخاطب بكتابة الأوامر: (Command Line Interface) حيث يكتب المستخدم الأمر كاملا من خلال لوحة المفاتيح ليظهر على الشاشة، وهذه الطريقة قديمة وبطيئة وتحتاج لمعرفة أكثر بنظام الحاسوب.
2- الواجهة الرسومية: (Graphical User Interface) تستخدم الصور والأيقونات والقوائم حيث يختار المستخدم الأمر المطلوب أو الأيقومة بتوجيه الفأر والنقر عليها لتفعيل الأمر، وهذه الطريقة تتميز بالسهولة والمتعة.