.NET Micro Framework

.NET Micro Framework
.NET Micro Framework
Entwickler Microsoft
Aktuelle Version 4.1
(17. Juli 2010)
Kategorie Plattform
Lizenz Apache-Lizenz 2.0
Deutschsprachig nein
http://www.microsoft.com/netmf/

Das Microsoft .NET Micro Framework ist ein Abkömmling des .NET Frameworks zur Programmierung von Embedded-Systemen mit geringen Ressourcen wie Getränkeautomaten oder Bordsystemen in Automobilen.

Inhaltsverzeichnis

Überblick

So wird beispielsweise die MSN Watch mit dem .NET Micro Framework betrieben. Ein weiterer Einsatzbereich sind Sideshow Gadgets, die von Windows Vista unterstützt werden. Die Firma Digi International hat im April 2007 mit ihrem Kommunikationsmodul Digi Connect ME die erste Ethernet-Netzwerklösung vorgestellt.

Das Entwicklungskonzept basiert auf dem .NET Framework. Als Programmiersprache kommt jedoch nur C# zur Verwendung.

Technische Einzelheiten

Die Entwicklung mit dem Micro Framework ist grundlegend anders als die Entwicklung für Windows CE mit dem .NET Compact Framework. Das Micro Framework kann entweder auf einem vorhandenen Betriebssystem aufsetzen oder selbst als Betriebssystem direkt auf der Hardware arbeiten. Ein entsprechender Hardware Abstraction Layer ist im Micro Framework integriert.

Das Micro Framework ist kein Echtzeitsystem. Der Code wird nicht wie bei den anderen .NET Frameworks üblich mit Hilfe des Just-In-Time Compilers zur Laufzeit kompiliert, sondern interpretiert. Die damit einhergehenden Geschwindigkeitseinbußen können jedoch wettgemacht werden, indem die performancekritischen Codesegmente als nativer Code implementiert und über Interop aufgerufen werden.

Hardware Abstraction Layer

Der HAL kann mit Hilfe von Delegaten und Ereignissen mit der Common Language Runtime (CLR) kommunizieren. Somit ist es möglich, das Gerät in einen Schlafzustand zu versetzen, jedoch immer noch in der Lage zu sein, auf bestimmte Ereignisse zu reagieren.

Treiber im HAL

Folgende Treiber sind im HAL bereits integriert:

  • Gepufferter serieller RS232 I/O
  • Serial Peripheral Interface (SPI) mit 13,8 MHz
  • Monochrom LCD (120x96)
  • Batterieüberwachung (Temperatur, Spannung und Ladezustand)
  • Bluetooth
  • 802.15.4 low-rate Wireless Personal Area Networking (WPAN)
  • Flash (parallel) und EEPROM (seriell) Speicher
  • Kalibrierte Zeit
  • Boolesche Ausgaben (Hintergrundbeleuchtung, Vibration, etc.)
  • Boolesche Eingänge (Schaltflächen etc.)
  • PWM-Ausgänge (Piezolautsprecher, Dimmer, Vibration)

Mit dem Micro Framework ist es weiterhin möglich, Treiber in Managed Code zu schreiben.

Multithreading

Das Micro Framework stellt Multithreading bereit, selbst wenn die zu Grunde liegende Hardware dies nicht unterstützt. Genau betrachtet handelt es sich bei der Execution Engine nicht um eine multithread-fähige Engine. Vielmehr kann diese als Simulator einer solchen betrachtet werden. Der Kontextwechsel erfolgt in 20ms-Abständen, Threads sind priorisierbar und unterstützen Unterbrechungen.

Garbage Collection

Auch der Garbage Collector hat einige Änderungen erfahren. Auf Grund des meistens sehr kleinen Arbeitsspeichers auf den Zielsystemen wurde auf einen hierarchischen Garbage Collector verzichtet. Statt dessen wird ein Mark-And-Sweep-Algorithmus benutzt. Dieser wird zusätzlich durch Ablage von Metadaten auf dem Heap optimiert.

Um die Nutzung des Arbeitsspeichers weiter zu verbessern, wurde der Garbage Collector dahingehend erweitert, dass er Daten in nicht flüchtigen Speicher auslagern kann, wenn die zugehörige Anwendung inaktiv ist.

Klassenbibliothek

Das Micro Framework stellt eine Untermenge des .NET Frameworks dar. Bei der Auswahl der Namensräume wurde darauf geachtet, lediglich die Teile in das Micro Framework zu integrieren, die für den Betrieb kleiner, autonomer Geräte nötig sind.

Neben den Namensräumen des .NET Frameworks wurde der Namensraum SPOT hinzugefügt, der lediglich im Micro Framework zur Verwendung kommt. SPOT bedeutet Smart Personal Objects Technology[1] und ist die Microsoft-Terminologie für elektronische Geräte wie Uhren, Wecker, Schlüsselanhänger etc., die deren Besitzer Informationen zugänglich machen.

Die vollständig oder teilweise geerbten Namensräume der .NET Base Class Libraries:

  • System
  • System.Collections
  • System.Diagnostics
  • System.Globalization
  • System.IO
  • System.Net
  • System.Net.Sockets
  • System.Reflection
  • System.Resources
  • System.Runtime.CompilerServices
  • System.Runtime.InteropServices
  • System.Runtime.Remoting
  • System.Runtime.Text

Die neu hinzugefügten Namensräume für intelligente persönlichen Objekte:

  • Microsoft.SPOT
  • Microsoft.SPOT.Cryptography
  • Microsoft.SPOT.Hardware
  • Microsoft.SPOT.Input
  • Microsoft.SPOT.Net.NetworkInformation
  • Microsoft.SPOT.Presentation
  • Microsoft.SPOT.Presentation.Controls
  • Microsoft.SPOT.Presentation.Media
  • Microsoft.SPOT.Presentation.Shapes

Änderungen in Version 2.5

Das .NET Micro Framework 2.5 wurde mit einem TCP/IP-Stack erweitert. Darauf aufbauend wurde ein Devices Profile for Web Services (DPWS)-Stack in das Micro Framework integriert. Dieser DPWS-Stack wurde eigens für das Micro Framework in Managed Code entwickelt und trägt den Namen MFDPWS. Er stellt eine Untermenge des DPWS-Standards dar. Durch den DPWS-Stack ist es nun möglich, Web-Services for Devices (WSD) zu nutzen. Dabei kommunizieren die Netzwerkteilnehmer über SOAP und können Dienste des jeweils anderen Teilnehmers nutzen.

Technische Voraussetzungen

Aktuell unterstützt das Micro Framework ARM7 und ARM9 Prozessoren sowie Analog Devices Blackfin. Das Zielsystem muss über mindestens ~128 KB RAM und 512 KB Flash/ROM zur Entwicklung verfügen. Im laufenden Betrieb hat das Micro Framework mindestens eine Größe von 390 KB. Die Größe ist abhängig von der Menge der verwendeten Funktionen.

Für die Installation und das Debugging benötigt das Gerät eine serielle, USB- oder Netzwerkschnittstelle.

Entwicklungsumgebung

Als Entwicklungsumgebung kommt Microsofts Visual Studio 2008 oder höher in Verbindung mit dem .NET Micro Framework SDK zum Einsatz. Außerdem benötigt man das Board Support Package für das jeweilige Gerät.

Siehe auch

Literatur

  • Jens Kuhner: Expert .NET Micro Framework. 2. Auflage 2009, Apress Verlag

Weblinks

Einzelnachweise

  1. Microsoft PressPass: Microsoft Launches Smart Personal Object Technology Initiative

Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • .NET Micro Framework — The .NET Micro Framework is a .NET platform for extremely resource constrained devices. It includes a small version of the .NET CLR and supports development in C# and debugging (in an emulator or on hardware), both using Microsoft Visual Studio.… …   Wikipedia

  • .NET Micro Framework — У этого термина существуют и другие значения, см. .NET. .NET Micro Framework Тип Компьютерная платформа Разработчик Microsoft Операционная система не требуется Последняя версия 4.2 Лицензия Apache 2.0, MS EULA …   Википедия

  • .NET Compact Framework — The Microsoft .NET Compact Framework (.NET CF) is a version of the .NET Framework that is designed to run on resource constrained mobile/embedded devices such as personal digital assistants (PDAs), mobile phones, factory controllers, set top… …   Wikipedia

  • .NET Compact Framework — У этого термина существуют и другие значения, см. .NET. .NET Compact Framework Тип Компьютерная платформа Разработчик Microsoft Операционная система Основанная на Windows CE Последняя версия 3.5 (25 января 2008) Лицензия …   Википедия

  • ADO.NET Entity Framework — в составе .NET Framework ADO.NET Entity Framework (EF)  объектно ориентированная технология доступа к данным, является object relational mapping (ORM) решением для .NET Framework от M …   Википедия

  • ASP.NET MVC Framework — Тип Веб фреймворк Разработчик Microsoft Написана на C# Операционная система Кроссплатформенное ПО Аппаратная платформа .NET Framework, Mono …   Википедия

  • .NET-Framework — Basisdaten Entwickler: Microsoft Aktuelle Version …   Deutsch Wikipedia

  • .NET-Klassenbibliothek — NET Framework Basisdaten Entwickler: Microsoft Aktuelle Version …   Deutsch Wikipedia

  • .NET 3.0 — NET Framework Basisdaten Entwickler: Microsoft Aktuelle Version …   Deutsch Wikipedia

  • .NET Framework — Basisdaten Entwickler: Microsoft Aktuelle Version …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”