<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=.NET_Micro_Framework</id>
	<title>.NET Micro Framework - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=.NET_Micro_Framework"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=.NET_Micro_Framework&amp;action=history"/>
	<updated>2026-05-17T12:27:44Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=.NET_Micro_Framework&amp;diff=921327&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=.NET_Micro_Framework&amp;diff=921327&amp;oldid=prev"/>
		<updated>2025-09-29T18:57:24Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Veraltet|dieses Artikels|Seit 2010 keine substanzielle Erweiterung des Artikels. Z.&amp;amp;nbsp;B. fehlt die Übergabe des Codes an die Community gänzlich.|seit=2010}}&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Hersteller           = [[Microsoft]]&lt;br /&gt;
|Erscheinungsjahr     = ca. 2007&lt;br /&gt;
|AktuelleVersion      = &amp;lt;!-- Wikidata --&amp;gt;&lt;br /&gt;
|Kategorie            = [[Plattform (Computer)|Plattform]]&lt;br /&gt;
|Lizenz               = [[Apache-Lizenz 2.0]]&lt;br /&gt;
|Deutsch              = nein&lt;br /&gt;
|Website              = [http://www.netmf.com/ www.netmf.com/]&amp;lt;br /&amp;gt;[http://netmf.github.io/ netmf.github.io/] &amp;lt;small&amp;gt;(ab Version 4.4)&amp;lt;/small&amp;gt;&amp;lt;br /&amp;gt;[http://netmf.codeplex.com/ netmf.codeplex.com/] &amp;lt;small&amp;gt;(bis Version 4.3)&amp;lt;/small&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Das  &amp;#039;&amp;#039;&amp;#039;.NET Micro Framework&amp;#039;&amp;#039;&amp;#039; von [[Microsoft]] ist ein Abkömmling des [[.Net-Framework|.NET Frameworks]] zur Programmierung von [[Eingebettetes System|Embedded-Systemen]] mit geringen Ressourcen wie Getränkeautomaten oder Bordsystemen in Automobilen.&lt;br /&gt;
&lt;br /&gt;
== Überblick ==&lt;br /&gt;
So wird beispielsweise die MSN Watch mit dem .NET Micro Framework betrieben. Ein weiterer Einsatzbereich sind [[Windows SideShow|Sideshow Gadgets]], die von [[Microsoft Windows Vista|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.&lt;br /&gt;
&lt;br /&gt;
Das Entwicklungskonzept basiert auf dem .NET Framework. Als Programmiersprache kommt jedoch nur [[C-Sharp|C#]] zur Verwendung.&lt;br /&gt;
&lt;br /&gt;
== Technische Einzelheiten ==&lt;br /&gt;
Die Entwicklung mit dem Micro Framework ist grundlegend anders als die Entwicklung für [[Microsoft Windows CE|Windows CE]] mit dem [[.NET Compact Framework]]. Das Micro Framework selbst fungiert als Betriebssystem direkt auf der Hardware. Eine entsprechende [[Hardwareabstraktionsschicht]] ist im Micro Framework integriert.&lt;br /&gt;
&lt;br /&gt;
Das Micro Framework ist kein [[Echtzeitsystem]]. Der Code wird nicht wie bei den anderen .NET Frameworks üblich mit Hilfe des [[Just-in-time-Kompilierung|Just-in-time-Compilers]] zur Laufzeit kompiliert, sondern [[Interpreter|interpretiert]]. Die damit einhergehenden Geschwindigkeitseinbußen können jedoch kompensiert werden, indem die performancekritischen Codesegmente als nativer Code implementiert und über &amp;#039;&amp;#039;Interop&amp;#039;&amp;#039; aufgerufen werden.&lt;br /&gt;
&lt;br /&gt;
=== Hardwareabstraktionsschicht ===&lt;br /&gt;
Die [[Hardwareabstraktionsschicht]] (HAL) kann mit Hilfe von Delegaten und Ereignissen mit der [[Common Language Runtime|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.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Treiber im HAL&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Folgende Treiber sind im HAL bereits integriert:&lt;br /&gt;
&lt;br /&gt;
* Gepufferter serieller [[RS-232]] I/O&lt;br /&gt;
* [[Serial Peripheral Interface|Serial Peripheral Interface (SPI)]] mit 13,8&amp;amp;nbsp;MHz&lt;br /&gt;
* Monochrom [[Flüssigkristallanzeige|LCD]] (120 × 96)&lt;br /&gt;
* Batterieüberwachung (Temperatur, Spannung und Ladezustand)&lt;br /&gt;
* [[Bluetooth]]&lt;br /&gt;
* 802.15.4 low-rate Wireless Personal Area Networking ([[Wireless Personal Area Network|WPAN]])&lt;br /&gt;
* [[Flash-Speicher|Flash]] (parallel) und [[Electrically Erasable Programmable Read-Only Memory|EEPROM]] (seriell) Speicher&lt;br /&gt;
* Kalibrierte Zeit&lt;br /&gt;
* Boolesche Ausgaben (Hintergrundbeleuchtung, Vibration etc.)&lt;br /&gt;
* Boolesche Eingänge (Schaltflächen etc.)&lt;br /&gt;
* [[Pulsdauermodulation|PWM]]-Ausgänge ([[Ferroelektrischer Lautsprecher|Piezolautsprecher]], Dimmer, Vibration)&lt;br /&gt;
&lt;br /&gt;
Mit dem Micro Framework ist es weiterhin möglich, Treiber in [[Programmcode|Managed Code]] zu schreiben.&lt;br /&gt;
&lt;br /&gt;
=== Multithreading ===&lt;br /&gt;
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 20-ms-Abständen, Threads sind priorisierbar und unterstützen Unterbrechungen.&lt;br /&gt;
&lt;br /&gt;
=== Garbage Collection ===&lt;br /&gt;
Auch der [[Garbage Collection|Garbage Collector]] hat einige Änderungen erfahren. Auf Grund des meistens sehr kleinen Arbeitsspeichers auf den Zielsystemen wurde auf einen hierarchischen Garbage Collector verzichtet. Stattdessen wird ein [[Garbage Collection#Mark-and-Sweep-Algorithmus|Mark-And-Sweep]]-Algorithmus benutzt. Dieser wird zusätzlich durch Ablage von Metadaten auf dem Heap optimiert.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== Klassenbibliothek ===&lt;br /&gt;
Das Micro Framework enthält eine Untermenge der Klassen des [[.Net-Framework|.NET Frameworks]]. Bei der Auswahl der [[Namensraum|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.&lt;br /&gt;
&lt;br /&gt;
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&amp;lt;ref&amp;gt;Microsoft News Center: &amp;#039;&amp;#039;[https://news.microsoft.com/2002/11/17/microsoft-launches-smart-personal-object-technology-initiative/ Microsoft Launches Smart Personal Object Technology Initiative]&amp;#039;&amp;#039;&amp;lt;/ref&amp;gt; und ist die Microsoft-Terminologie für elektronische Geräte wie Uhren, Wecker, Schlüsselanhänger etc., die deren Besitzer Informationen zugänglich machen.&lt;br /&gt;
&lt;br /&gt;
Die vollständig oder teilweise &amp;#039;&amp;#039;geerbten&amp;#039;&amp;#039; Namensräume der .NET Base Class Libraries:&lt;br /&gt;
* System&lt;br /&gt;
* System.Collections&lt;br /&gt;
* System.Diagnostics&lt;br /&gt;
* System.Globalization&lt;br /&gt;
* System.IO&lt;br /&gt;
* System.Net&lt;br /&gt;
* System.Net.Sockets&lt;br /&gt;
* System.Reflection&lt;br /&gt;
* System.Resources&lt;br /&gt;
* System.Runtime.CompilerServices&lt;br /&gt;
* System.Runtime.InteropServices&lt;br /&gt;
* System.Runtime.Remoting&lt;br /&gt;
* System.Runtime.Text&lt;br /&gt;
&lt;br /&gt;
Die neu hinzugefügten Namensräume für intelligente persönliche Objekte:&lt;br /&gt;
* Microsoft.SPOT&lt;br /&gt;
* Microsoft.SPOT.Cryptography&lt;br /&gt;
* Microsoft.SPOT.Hardware&lt;br /&gt;
* Microsoft.SPOT.Input&lt;br /&gt;
* Microsoft.SPOT.Net.NetworkInformation&lt;br /&gt;
* Microsoft.SPOT.Presentation&lt;br /&gt;
* Microsoft.SPOT.Presentation.Controls&lt;br /&gt;
* Microsoft.SPOT.Presentation.Media&lt;br /&gt;
* Microsoft.SPOT.Presentation.Shapes&lt;br /&gt;
&lt;br /&gt;
== Änderungen in Version 2.5 ==&lt;br /&gt;
Das .NET Micro Framework 2.5 wurde mit einem [[Transmission Control Protocol/Internet Protocol|TCP/IP]]-[[Protokollstapel|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.&lt;br /&gt;
&lt;br /&gt;
== Technische Voraussetzungen ==&lt;br /&gt;
Aktuell unterstützt das Micro Framework [[ARM-Architektur|ARM7]] und ARM9 Prozessoren sowie [[Analog Devices]] [[Blackfin]]. Das Zielsystem muss über mindestens ~128&amp;amp;nbsp;KB RAM und 512&amp;amp;nbsp;KB Flash/ROM zur Entwicklung verfügen. Im laufenden Betrieb hat das Micro Framework mindestens eine Größe von 390&amp;amp;nbsp;KB. Die Größe ist abhängig von der Menge der verwendeten Funktionen.&lt;br /&gt;
&lt;br /&gt;
Für die Installation und das Debugging benötigt das Gerät eine serielle, USB- oder [[Netzwerkschnittstelle]].&lt;br /&gt;
&lt;br /&gt;
== Entwicklungsumgebung ==&lt;br /&gt;
Als [[Integrierte Entwicklungsumgebung]] kommt Microsofts [[Visual Studio|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.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Eingebettetes System]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Jens Kuhner: &amp;#039;&amp;#039;Expert .NET Micro Framework&amp;#039;&amp;#039;. 2. Auflage 2009, Apress Verlag&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://msdn.microsoft.com/en-US/netframework/bb267253.aspx .NET Micro Framework bei Microsoft]&lt;br /&gt;
* [https://msdn.microsoft.com/de-de/embedded/bb278106.aspx Microsoft-Artikel: „What is .NET Micro Framework?“]&lt;br /&gt;
* [http://www.netmf.com/ Webportal zum .NET Micro Framework]&lt;br /&gt;
* [http://www.elektronikpraxis.vogel.de/themen/embeddedsoftwareengineering/implementierung/articles/92518/ Übersichtsartikel unabhängiger Autoren zu .NET Micro Framework]&lt;br /&gt;
* [http://www.digi.com/products/embeddedsolutions/digiconnectme.jsp Produktwebseite des Digi Connect ME]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Net Micro Framework}}&lt;br /&gt;
[[Kategorie:.NET|Micro Framework]]&lt;br /&gt;
[[Kategorie:Laufzeitumgebung]]&lt;br /&gt;
[[Kategorie:Programmierwerkzeug]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>