إطار عمل .NET الصغير
| المطور(ون) | مايكروسوفت ومؤسسة .NET |
|---|---|
| الإصدار الأولي | 2007 |
| إصدار مستقر | 4.4 [1]
/ 20 أكتوبر 2015 |
| مستودع | github.com/NETMF/netmf-interpreter |
| مكتوب في | سي++ |
| نظام التشغيل | نوافذ |
| منصة | أرم ، بلاكفين |
| متوفر في | إنجليزي |
| يكتب | إطار عمل البرمجيات |
| رخصة | رخصة أباتشي 2.0 [2] |
| موقع إلكتروني | netmf.github.io/netmf-interpreter/ |
NET Micro Framework (NETMF) هو عبارة عن منصة NET Framework للأجهزة ذات الموارد المحدودة والتي تحتوي على 512 كيلو بايت على الأقل من ذاكرة الفلاش و256 كيلو بايت من ذاكرة الوصول العشوائي (RAM). وهو يتضمن إصدارًا صغيرًا من NET Common Language Runtime (CLR) ويدعم التطوير بلغات C# و Visual Basic .NET وتصحيح الأخطاء (في محاكي أو على الأجهزة) باستخدام Microsoft Visual Studio . يتميز NETMF بمجموعة فرعية من مكتبات فئة NET الأساسية (حوالي 70 فئة مع حوالي 420 طريقة)، وتنفيذ لـ Windows Communication Foundation (WCF)، وإطار عمل GUI مبني بشكل فضفاض على Windows Presentation Foundation (WPF)، ومجموعة خدمات الويب المستندة إلى Simple Object Access Protocol ( SOAP ) و Web Services Description Language (WSDL). يتميز NETMF أيضًا بمكتبات مضافة خاصة بالتطبيقات المضمنة. وهو برنامج مجاني ومفتوح المصدر تم إصداره بموجب ترخيص Apache 2.0.
يهدف إطار العمل الصغير إلى جعل تطوير الأنظمة المضمنة أسهل وأسرع وأقل تكلفة من خلال منح مطوري الأنظمة المضمنة إمكانية الوصول إلى التقنيات والأدوات الحديثة التي يستخدمها مطورو تطبيقات سطح المكتب. كما يسمح لمطوري .NET على سطح المكتب باستخدام مهاراتهم في الأنظمة المضمنة ، مما يؤدي إلى توسيع مجموعة مطوري الأنظمة المضمنة المؤهلين.
يعد إطار العمل الصغير جزءًا من مؤسسة .NET . [3] تم الإعلان عن المؤسسة في مؤتمر Build 2014، وتم إنشاؤها كمنتدى مستقل لتعزيز التطوير المفتوح والتعاون حول مجموعة متزايدة من تقنيات المصدر المفتوح لـ .NET. [4]
سمات
بالمقارنة مع منصات .NET الأخرى، فإن الميزات الفريدة لـ Micro Framework هي:
- تحتاج ذاكرة بحجم 300 كيلو بايت تقريبًا؛ وعلى النقيض من ذلك، فإن أصغر تنفيذ لـ .NET، وهو .NET Compact Framework الذي يعمل على Windows CE ، يحتاج إلى حوالي 12 ميجا بايت
- يمكن تشغيله مباشرة على جهاز عادي بدون نظام تشغيل، أو يمكن تشغيله على نظام تشغيل (OS)
- يدعم الأجهزة الطرفية المضمنة الشائعة والوصلات المتداخلة، بما في ذلك ذاكرة الفلاش ، وEEPROM ، وGPIO ، و I 2 C ، و Serial Peripheral Interface Bus (SPI)، والمنفذ التسلسلي ، و USB
- تم تحسينه لتحقيق كفاءة الطاقة في الأجهزة التي تعمل بالبطارية
- لا يحتاج إلى وحدة إدارة الذاكرة
- يوفر دعمًا متعدد الخيوط حتى عند التشغيل على أنظمة تشغيل أحادية الخيط
- تسمح طبقة التجريد المادي بالنقل إلى بنيات أخرى
- يسمح نموذج برنامج تشغيل الجهاز المُدار بكتابة برامج تشغيل للعديد من الأجهزة بلغة C#
- قيود التنفيذ للقبض على عمليات قفل الجهاز وتعطله
- دعم شفاف لتخزين الكائنات في ذاكرة غير متطايرة
نظرًا للقيود التي تعمل بموجبها، فإن إطار عمل Micro لديه بعض القيود التي تتجاوز تلك المفروضة من خلال مكتباته المبسطة. على سبيل المثال، لا تدعم المنصة المعالجة المتعددة المتماثلة ، أو المصفوفات متعددة الأبعاد، أو الأنواع المعتمدة على الآلة، أو التعليمات غير الآمنة. يعد CLR مفسرًا وليس مُجمِّعًا في الوقت المناسب، ويستخدم جامع قمامة بسيطًا للتمييز والمسح بدلاً من طريقة الجيل. يتم تطوير مُجمِّع متقدم في الوقت المناسب [5] باستخدام مُجمِّع LLVM مُعدل . يوجد حاليًا العديد من القيود على التشغيل المتبادل بين الكود المُدار والأصلي. اعتبارًا من عام 2011، دعم إطار عمل Micro لغتين .NET: C# وVisual Basic. [6]
يدعم
اعتبارًا من عام 2013، تم دعم إطار عمل .NET Micro على معالجات بنية ARM (بما في ذلك ARM7 وARM9 وCortex-M) وتم دعمه على Analog Devices Blackfin في الماضي. تتوفر مجموعة Porting Kit الآن مع الكود المصدر كتنزيل مجاني بموجب ترخيص Apache 2.0 في مركز التنزيل الخاص بشركة Microsoft.
يعود أصل إطار العمل الصغير إلى مبادرة تقنية الكائنات الشخصية الذكية (SPOT) من Microsoft وتم استخدامه في منتجات MSN Direct مثل الساعات الذكية قبل إتاحته للمطورين من جهات خارجية في أوائل عام 2007. [7] إنه منصة مشتركة لأجهزة Windows SideShow وتم اعتماده في أسواق أخرى، مثل إدارة الطاقة والرعاية الصحية والأتمتة الصناعية وشبكات الاستشعار.
تسمح Microsoft للمطورين بإنشاء تطبيقات باستخدام Micro Framework دون مقابل، وتوفر مجموعة تطوير برامج (SDK) متاحة للتنزيل المجاني والتي يمكن استخدامها مع جميع إصدارات Visual Studio، بما في ذلك إصدارات Express المجانية. [8]
تاريخ
في نوفمبر 2009، أصدرت مايكروسوفت الكود المصدري لإطار عمل Micro لمجتمع التطوير كبرنامج مجاني ومفتوح المصدر بموجب ترخيص Apache 2.0. [9]
في يناير 2010، أطلقت مايكروسوفت موقع تطوير المجتمع netmf.com لتنسيق التطوير المستمر للتنفيذ الأساسي مع مجتمع المصدر المفتوح. [10]
في 9 يناير 2010، أعلنت شركة GHI Electronics عن FEZ Domino، أول عضو في خط الإنتاج المسمى FEZ (Freakin' Easy!)، وهو مزيج من الأجهزة مفتوحة المصدر مع إصدار مغلق المصدر خاص من .NET Micro Framework. [11]
في 3 أغسطس 2010، أعلنت Secret Labs عن Netduino، أول منصة إلكترونية مفتوحة المصدر بالكامل تستخدم إطار عمل .NET Micro. [12]
في فبراير 2011، نشرت شركة Novell معاينة لمترجم Mono 2.12 C#، وهو أول مترجم مفتوح المصدر لإطار عمل .NET Micro. [13]
في 23 يناير 2017، بعد محاولات عديدة ( [14] و [15] ) لإحياء مشروع .NET Microframework وإحضاره إلى حوكمة المجتمع وفترة عمل "في الظلام"، أعلنت مجموعة من مطوري الأنظمة المضمنة علنًا عن .NET nanoFramework كمنتج فرعي لـ .NET Micro Framework. [16] كانت إعادة العمل الرئيسية على نظام البناء، وطريقة أسهل لإضافة أهداف جديدة، وواجهة برمجة تطبيقات حديثة تتبع UWP ، وملحق Visual Studio مع جميع الأدوات المطلوبة لإدارة الأهداف، وخبرة تطوير كاملة من الترميز إلى تصحيح أخطاء الكود الأصلي ودعم ARM Cortex-M وESP32 هي الاختلافات الرئيسية في ذلك الوقت. في 12 أكتوبر 2018، تم الإعلان عن أول إصدار رسمي لمكتبات الفئات وصور البرامج الثابتة. [17] في 2020-06-17 أعلن المطورون عن إصدار nanoFramework [18]
في 16 ديسمبر 2016، أعلنت شركة GHI Electronics عن تنفيذها الخاص لإطار عمل Micro Framework المسمى TinyCLR OS، مشيرة إلى عدم وجود صيانة لـ NETMF من قبل Microsoft. [19] في 7 يوليو 2017، أعلنت شركة GHI عن المعاينة الخامسة لنظام التشغيل TinyCLR OS. [20] في 2 فبراير 2018، أعلنت شركة GHI عن المعاينة الثامنة لنظام التشغيل TinyCLR OS. [21] في 5 أبريل 2018، أعلنت شركة GHI عن المعاينة العاشرة لنظام التشغيل TinyCLR OS. [22] في 27 أبريل 2022، أعلنت شركة GHI عن إصدار TinyCLR OS الإصدار 2.2. [23]
اعتبارًا من عام 2023، يواصل nanoFramework وTinyCLR OS فقط تطوير إطار عمل يمكنه تشغيل كود .NET على متحكم دقيق.
الأجهزة
يقوم العديد من البائعين بتصنيع الرقائق ومجموعات التطوير والمزيد التي تعمل بنظام Micro Framework. [24]
Netduino من شركة Wilderness Labs
Netduino عبارة عن منصة إلكترونية مفتوحة المصدر تستخدم إطار عمل Micro Framework. تم إنشاء Netduino في الأصل بواسطة Secret Labs، وتم تصنيعه وصيانته بواسطة Wilderness Labs Inc. [25] منذ الاستحواذ على Secret Labs في عام 2017. [26] يعتمد على 168 ميجا هرتز Cortex-M4 (STM32F4) مع ما يصل إلى 1408 كيلو بايت من تخزين التعليمات البرمجية و 164 كيلو بايت من ذاكرة الوصول العشوائي. USB مدمج، إيثرنت، واي فاي، فتحة بطاقة SD. بيئة التطوير هي MS Visual Studio و C#. متوافق مع دروع Arduino على الرغم من أن برامج التشغيل مطلوبة لبعض الدروع.
جي اتش اي الكترونيكس
تصنع شركة GHI Electronics عدة وحدات تدعم إطار العمل الصغير:
- وحدة EMX [27]
- وحدة ChipworkX [28]
- مجموعة شرائح USBizi144 [29] وUSBizi100، حيث يتمثل الاختلاف الوحيد بينهما في عدم دعم مضيف USB في USBizi100 [30]
تصنع شركة GHI Electronics أيضًا خط .NET FEZ من لوحات الأجهزة الصغيرة جدًا مفتوحة المصدر مع البرامج الثابتة الخاصة بها، والموجهة للمبتدئين. وهي تعتمد على مجموعة شرائح USBizi وجميع ميزاتها. توفر لوحة FEZ Domino مضيف USB. على الرغم من أن FEZ مخصصة للمبتدئين، إلا أنها أيضًا نقطة بداية منخفضة التكلفة للمحترفين الذين يرغبون في استكشاف NETMF. [31] بعض هذه اللوحات متوافقة فعليًا مع Arduino .
لا توصي شركة GHI Electronics باستخدام أجهزتها المستندة إلى Micro Framework للتصميمات الجديدة وتوصي بدلاً من ذلك بأجهزتها المستندة إلى TinyCLR. [32]
لوحات متسلق الجبال
كانت لوحات Mountaineer، وهي جزء من مجموعة Mountaineer Group، تستخدم في تصنيع مجموعة صغيرة من لوحات الأجهزة مفتوحة المصدر التي تستخدم إطار Micro Framework. وقد قامت Mountaineer بنقل إطار Micro Framework لاستخدامه في عائلة STM32 من وحدات التحكم الدقيقة الموجودة على لوحات Mountaineer الخاصة بها وفي أماكن أخرى. [33]
إس تي ميكروإلكترونيكس
تصنع شركة STMicroelectronics ، وهي الشركة المصنعة لعائلة المتحكمات الدقيقة STM32 ، لوحات اكتشاف منخفضة التكلفة لعرض المتحكمات، وتوفر منافذ لإطار عمل Micro للعمل عليها. [34]
أجهزة الشبكة
كانت Netmfdevices عبارة عن منصة إلكترونية مفتوحة المصدر تستخدم FEZHacker و.NET Micro Framework. [35]
ميكرومينت
يعد Micromint Bambino 200 أول معالج متعدد النواة متوافق مع إطار عمل .NET Gadgeteer. [36] يعمل الطراز 200 بواسطة NXP LPC4330، أول متحكم ARM Cortex-M ثنائي النواة. كل من أنوية Cortex-M4 وCortex-M0 قادرة على 204 ميجا هرتز. يحتوي على 264 كيلوبايت SRAM على متن الطائرة و4 ميجا بايت من الفلاش. يحتوي الطراز 200E على نفس ميزات الطراز 200، وذاكرة فلاش متزايدة إلى 8 ميجا بايت، و10 مقابس Gadgeteer، ومنفذ Ethernet ، ومقبس microSD ، وميزات أخرى.
أجهزة .NET Gadgeteer
تقوم العديد من الشركات المصنعة بإنتاج لوحات ووحدات متوافقة مع معيار النمذجة السريعة .NET Gadgeteer للإطار.
انظر أيضا
مراجع
- ^ ".NET Micro Framework 4.4 متاح الآن!". Microsoft . مؤرشف من الأصل في 25 أكتوبر 2017 . تم الاسترجاع 9 ديسمبر 2018 .
- ^ ".NET Micro Framework". مايكروسوفت.
- ^ مالييت، ستيف. "هل سيتم إيقاف .Net MF؟". GitHub . تم الاسترجاع في 13 أبريل 2019 .
- ^ مؤسسة .NET
- ^ "خريطة طريق LLILUM وأحدث الإضافات". مايكروسوفت. مؤرشف من الأصل في 26 أغسطس 2018. استرجاع 30 يونيو 2016 .
- ^ يدعم .NET Micro Framework فقط C# و Visual Basic
- ^ "مبادرة Microsoft SPOT تتسارع بإضافة MSN Direct إلى أجهزة الملاحة". شركة Microsoft Corporation. 8 يناير 2007. تم الاسترجاع في 2 يوليو 2024 .
- ^ "NETMF4 SDK". مايكروسوفت.
- ^ "مايكروسوفت ستجعل إطار عمل .NET Micro مفتوح المصدر". مايكروسوفت. مؤرشف من الأصل في 14 نوفمبر 2018 . تم الاسترجاع 6 فبراير 2017 .
- ^ "netmf.com". مؤرشف من الأصل في 5 يوليو 2012. اطلع عليه بتاريخ 29 يونيو 2012 .
- ^ FEZ: لوحات إلكترونية مفتوحة المصدر مع العديد من برامج تشغيل المكونات مفتوحة المصدر باستخدام .NET MF
- ^ Netduino: منصة إلكترونيات مفتوحة المصدر باستخدام .NET MF
- ^ دعم تجريبي لـ Mono لنظامي التشغيل Mac/Linux
- ^ "بيان لـ .NETMF (الحالة الحالية والمستقبل الذي نريده لها)". GitHub .
- ^ "مستقبل .NETMF (المحاولة رقم 999999)". GitHub .
- ^ "إطار الاسم، nanoFramework". مؤرشف من الأصل في 22 فبراير 2019 . استرجاع 22 فبراير 2019 .
- ^ "nanoFramework v1.0 is official!". مؤرشف من الأصل في 22 فبراير 2019 . استرجاع 22 فبراير 2019 .
- ^ تم إصدار الإصدارات المستقرة
- ^ "مقدمة لنظام التشغيل TinyCLR: مسار جديد لأجهزة NETMF الخاصة بنا". مؤرشف من الأصل في 28 يوليو 2017. استرجاع 28 يوليو 2017 .
- ^ "المعاينة الخامسة لميزات TinyCLR OS الأساسية ونقلها". مؤرشف من الأصل في 28 يوليو 2017. استرجاع 28 يوليو 2017 .
- ^ "الإصدار الثامن لنظام التشغيل TinyCLR: FEZ Hydra وWi-Fi وCortex-M7". مؤرشف من الأصل في 9 مارس 2018 . تم الاسترجاع في 15 فبراير 2018 .
- ^ الإصدار العاشر لنظام التشغيل TinyCLR: الأخطاء، وRTC، وSTM32F7
- ^ إصدار TinyCLR OS 2.2
- ^ "مصفوفة الأجهزة المتوافقة". مايكروسوفت . مؤرشف من الأصل في 23 ديسمبر 2010. تم الاسترجاع في 29 أكتوبر 2010 .
- ^ "Netduino: الصفحة الرئيسية". Wilderness Labs, Inc.
- ^ "استحوذت Wilderness Labs على Netduino". PRWeb. 20 يوليو 2017. تم الاسترجاع في 2 يوليو 2024 .
- ^ "كتالوج - أحدث المنتجات - GHI Electronics". GHI Electronics, LLC. مؤرشف من الأصل في 20 مارس 2012. تم الاسترجاع في 20 فبراير 2011 .
- ^ "كتالوج - أحدث المنتجات - GHI Electronics". مؤرشف من الأصل في 4 ديسمبر 2012. تم الاسترجاع 20 فبراير 2011 .
- ^ "USBizi144 Chipset - GHI Electronics". GHI Electronics, LLC. مؤرشف من الأصل في 7 يناير 2014. تم الاسترجاع في 20 فبراير 2011 .
- ^ "USBizi100 Chipset - GHI Electronics". GHI Electronics, LLC. مؤرشف من الأصل في 7 يناير 2014. تم الاسترجاع في 20 فبراير 2011 .
- ^ "كتالوج - أحدث المنتجات - GHI Electronics". مؤرشف من الأصل في 2 مارس 2013. تم الاسترجاع 20 فبراير 2011 .
- ^ ".NET Micro Framework Devices". GHI Electronics . تم الاسترجاع في 26 أكتوبر 2023 .
- ^ "NETMF for STM32 - Mountaineer Group". مؤرشف من الأصل في 19 نوفمبر 2018.
- ^ UM1676: البدء باستخدام .Net Micro Framework على مجموعة اكتشاف STM32F429
- ^ "Netmfdevices". مؤرشف من الأصل في 26 يونيو 2019 . استرجاع 26 يونيو 2019 .
- ^ "Micromint Bambino 200". مؤرشف من الأصل في 13 نوفمبر 2014. اطلع عليه بتاريخ 19 يونيو 2014 .
روابط خارجية
- الموقع الرسمي
