نظام التشغيل Sivelkiriya: وصف تمهيدي

مرحبا يا هابر.

تفتح هذه المقالة سلسلة من المنشورات حول نظام التشغيل Sivelkiriya ، والتي هي حاليًا في مرحلة مبكرة من التصميم والتطوير. ستوضح مقالات السلسلة بالتفصيل مشاكل النظام لأنظمة التشغيل الشائعة وتقترح طرقًا لحلها. لا يحدد المؤلف نفسه هدف إقناع أي شخص بأي شيء ويركز فقط على وصف الحلول المقترحة للاستفادة من المناقشة. سيتم النشر في أجزاء ، لأن حجم الوصف الكامل يتجاوز أي قيود معقولة على حجم المقال.

كل من يهمه الأمر ، مرحبا بكم في القطط.

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

لذلك ، توفر جميع أنظمة التشغيل الشائعة حاليًا تقريبًا الدعم للوظائف العامة على مستوى التنفيذ (النوافذ والرسومات والملفات والشبكة والمعدات) ، ولكن ليس على مستوى التعبير عن مفاهيم مجال الموضوع (رسائل الدردشة وقوائم المسار وفواتير الخدمة). الاستثناءات الحالية (قائمة جهات الاتصال ، الحافظة ، شريط الإعلام) تؤكد فقط على القاعدة. كما أن التنفيذ الفني (الملفات والعمليات والخيوط) مشابه جدًا في العديد من النواحي.

وحدة استخدام قدرات الكمبيوتر في جميع الحالات هي التطبيق ، الذي يقرر بنفسه كيفية توجيه الموارد المتاحة لتحقيق أهدافهم. لا يتم ربط التطبيقات المختلفة إلا بقدر ما اهتم مطوروها بمثل هذا الاتصال ؛ في كثير من الأحيان ، لا يمكن للبرامج التي تؤدي وظائف قريبة تبادل البيانات ، ولها واجهة مختلفة ، وتستخدم مصطلحات مختلفة ، وما إلى ذلك. هذا العزل للمكونات له جذور تقنية بحتة ، لكن المستخدم يعاني نتيجة لذلك. يتحول الكمبيوتر من أداة متكاملة إلى كومة من الحلول غير المتجانسة ، ويظل التوافق العالمي ، الذي يستحق أن يصبح المبدأ الأساسي للتصميم ، مجرد فرصة اختيارية.

حاليا ، هناك المزيد والمزيد من الحلول التي تدمج التطبيقات والخدمات المختلفة مع بعضها البعض. يبدو أن الشركات المصنعة لمنتجات البرمجيات قد أدركت أن تقليل العديد من الاحتمالات إلى نظام واحد مناسب هو الطريقة الوحيدة للتناغم والنظام ، مما يجعل حياة المستخدم أفضل وأسهل. ومع ذلك ، في كثير من الحالات ، يتم استبدال النضال الأعمى للبرامج غير المتوافقة ، التي يحاول كل منها احتضان هائلة ، بنضال أكثر شراسة من التكامل ، الذين يفعلون كل شيء ممكن لعدم السماح للمستخدم (والمطور) بالخروج من منصتهم. فبدلاً من توحيد العالم ، يفصلها القائمون على التكامل من أجل الحكم.

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

إن تطوير البرمجيات عملية تستغرق وقتًا طويلاً ، وبالتالي فإن كمية وجودة الوظائف داخل أي منتج ستكون حتمًا محدودة. في الوقت نفسه ، تم بالفعل حل حصة الأسد من المهام والمشكلات التي تم حلها بواسطة المطورين في منتجات أخرى ؛ إعادة استخدام هذه الحلول بدلاً من إعادة تطويرها سيحرر الموارد التي يمكن استخدامها لتحقيق أهداف أخرى أكثر ضرورة للمستخدم.

أخيرًا ، غالبًا ما يكون سلوك البرنامج غير أخلاقي. بدلاً من مساعدة المستخدم في عملهم ، تضايقه البرامج بتعليقات واقتراحات مزعجة. بدلاً من تطوير طريقة ملائمة لتقديم الخدمات على أساس الاحترام المتبادل ، فإنها تمزج المحتوى الإعلاني مع الهدف. والنتيجة هي حالة لا يتحكم فيها حتى مالك الجهاز بسلوكه.

يهدف نظام التشغيل Sivelkiriya إلى حل ما ورد أعلاه وبعض المشاكل الأخرى. وفقًا للخطة والتصميم ، يجب أن تساعد بشكل مركزي ، وباحترام ، في ظل الظروف ذات المنفعة المتبادلة ، في تحقيق الفئات التالية من المشاركين في عملية تطوير البرمجيات واستخدامها:

  1. — , , , .
  2. — , , , , — , - .
  3. — , , .
  4. — , , , .
  5. — , , , .

سنصف أدناه بنية نظام التشغيل هذا وكيف يساعد على تصحيح الوضع. ستفحص المزيد من المقالات في السلسلة بالتفصيل المشاكل التي تحلها من أجل إظهار أنها تتطلب نهجًا منهجيًا. أخيرًا ، سيتم عرض مزايا وعيوب الحل المقترح وكيف يمكن أن يتحول من مفهوم إلى منتج نهائي.

مفهوم OS Sivelkiriya


يبدأ نظام التشغيل Sivelkiriya بمراجعة الأساسيات ، حيث يتم حذف أو استبدال جزء من المفاهيم المقبولة بشكل عام. الكيانات التالية ، التي عادة ما تكون أساس نظام التشغيل ، غير موجودة داخل نظام التشغيل Sivelkiriya:

  1. تطبيق.
  2. معالجة.
  3. ملف كمنطقة بيانات على القرص.
  4. نظام الملفات من طرف إلى طرف ، والملاحة محدودة فقط من خلال حقوق الوصول.
  5. سطر الأوامر كبيئة لتشغيل التطبيقات الفردية.
  6. مخطوطات عالمية.
  7. توفر API نظام التشغيل الأساسي لأي مكون.
  8. القدرة على نقل المكتبات القياسية لمعظم لغات البرمجة الحديثة مباشرة. ونتيجة لذلك ، القدرة على نقل البرامج الموجودة مباشرة من أنظمة التشغيل الأخرى ، باستثناء حالات معينة.
  9. دعم لغات البرمجة دون اتجاه الكائن.

هذه القائمة ليست كاملة. هذا لا يعني بأي حال من الأحوال الحد من قدرات المبرمج أو المستخدم ويشير فقط إلى أنه في إطار نظام التشغيل Sivelkiriya ، يتم تحقيق نفس الأهداف بشكل مختلف عن معظم أنظمة التشغيل الموجودة.

بعد التخلي عن هذه الكيانات القائمة ، ننوي بناء نظام تشغيل قائم على المبادئ التالية:

  1. «» - , , , . , , , , . . , , .
  2. . , , , , .
  3. , . , ( ). ( ) . , ( ) .
  4. , , , , . , .
  5. كل وحدة متاحة فقط البيانات وطرق التفاعل مع نظام التشغيل اللازمة لأداء وظيفتها (المحددة بواسطة النموذج الأولي). لا يمكن لأي وحدة نمطية الوصول إلى جميع وظائف نظام التشغيل. لا يُسمح بتكرار الوظائف المعينة بالفعل لنموذج أولي معين داخل الوحدة النمطية المتعلقة بنموذج أولي آخر.
  6. يتم تطوير واجهات البيانات ووحدات النموذج الأولي بشكل مستمر ، من خلال الجهود المشتركة لمطوري البرامج ومطوري نظام التشغيل. يتم تعديل الواجهات والنماذج الأولية واستكمالها حسب الحاجة.


ستوضح المقالات التالية في السلسلة بالتفصيل كيفية تطبيق هذه المبادئ وغيرها في الممارسة العملية.

المقال الثاني من الدورة متاح هنا . النص الكامل متاح على موقع المشروع .

Source: https://habr.com/ru/post/undefined/


All Articles