Zum Inhalt springen

Linker (Computerprogramm) und Malabar (Florida): Unterschied zwischen den Seiten

aus Wikipedia, der freien Enzyklopädie
(Unterschied zwischen Seiten)
Inhalt gelöscht Inhalt hinzugefügt
 
MacPac (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
Zeile 1: Zeile 1:
'''Malabar''' ist eine Stadt im [[Brevard County]] im [[US-Bundesstaat]] [[Florida]], [[USA]], mit 2.622 Einwohnern (Stand: [[2000]]). Die geographischen Koordinaten sind: 27,99° Nord, 80,58° West. Das Stadtgebiet hat eine Größe von 34,2 km².
Unter einem '''Linker''' oder '''Binder''' (auch: "Bindelader") versteht man ein [[Computerprogramm|Programm]], das einzelne Programmmodule zu einem ausführbaren Programm zusammenstellt (verbindet).


In Malaber gibt es derzeit 2 verschiedene Kirchen aus 2 unterschiedlichen Konfessionen. Weiterhin gibt es eine zu keiner Konfession gehörende Kirche (Stand: [[2004]]).
Die meisten Programme enthalten Bestandteile oder Module, die auch in anderen Programmen Verwendung finden können. Mehrere kompilierte Module mit Funktionen (sog. ''object files'') können zu Funktionsbibliotheken (sog. ''[[Bibliothek (Software-Entwicklung)|Libraries]]'') zusammengefasst werden. Der Code wird vom Linker zum Hauptprogamm hinzugefügt, falls die entsprechende Funktion benötigt wird.


[[Kategorie:Ort in Florida]]
Um ein Programm-Modul in einem anderen Programm verwenden zu können, müssen die symbolischen Adressen der Funktionen und Variablen des Moduls in Speicheradressen umgewandelt werden. Diese Aufgabe übernimmt der Linker. Der Linkvorgang erfolgt nach der [[Compiler|Kompilation]] und ist meistens der letzte Arbeitsschritt zur Erstellung eines Programms.
[[Kategorie:Stub/USA-Geografie]]
[[en:Malabar, Florida]]
{{stub}}


{{Navigation Brevard County}}
Bezeichnend bei der von [[Unix]] über die [[C (Programmiersprache)|Programmiersprache C]] verbreiteten Art und Weise des Linkens ist ein einziger großer, nicht-hierarchischer, gemeinsamer Namensraum (''name space''). Durch diese Eigenschaft können sehr große oder sehr verzweigte Projekte in die Lage kommen, Namenskonflikte nicht mehr vermeiden zu können. Für diese Fälle gibt es die früher sehr verbreitet angewendete Möglichkeit von ''weak links'', bei denen die Linkreihenfolge entscheidet, welches Modul wo verwendet wird. Bei komplexeren, objektorientierten Programmiersprachen wie [[C-Plusplus|C++]] wird das Problem umgangen, indem Modulinhalte über hierarchisch aufgebaute Namen angesprochen werden - eine Lösung, die jedoch im Endeffekt nur Notbehelf bleibt und die zugrundeliegende Problematik nicht endgültig zu lösen in der Lage ist. Unlösbar bleibt so beispielsweise das Problem der Anwesenheit einer Library in verschiedenen Versionen.

Man unterscheidet generell zwischen statischem und dynamischem Linken.

==Statisches Linken==

Das statische Linken ist ein Vorgang, der typischerweise während der [[Produktentwicklung|Entwicklung]] des Programms erfolgt, so dass der Benutzer ein fertig zusammengesetztes Programm erhält. Dies besteht dann bei vollständig statisch gelinkten Programmen aus einer einzelnen [[Datei]].

Modernere Versionen aktueller C-Libraries unter unixartigen Betriebssystemen unterstützen '''statisches Linken''' oft nicht mehr vollständig. So erzwingt beispielsweise die GNU/Linux-''[[glibc]]'' ein dynamisches Linken bei Modulen, die die [[Authentisierung]] von Benutzern betreffen. Obwohl ein derart gelinktes Programm fast alle Module bereits enthält, ist es so dennoch auf die Anwesenheit einer passenden "Laufzeitversion" der ''glibc'' angewiesen.

==Dynamisches Linken==

Es ist auch möglich, das Auflösen der Funktions- und Variablennamen zu verschieben, bis das Programm tatsächlich ausgeführt wird. In diesem Fall spricht man von "dynamically linked library" ([[Bibliothek (Programmierung)|DLL]]) oder "shared library". Dies hat den Vorteil, dass man die Bibliothek nachträglich leicht austauschen kann, die Programme kleiner werden und dass der Speicher nur einmal benötigt wird, wenn mehrere Programme dieselbe Bibliothek verwenden. Der Nachteil besteht darin, dass man irgendwie sicherstellen muss, dass auch die richtige DLL in der richtigen Version installiert ist.

Mischformen der statischen und dynamischen Link-Art sind der Normalfall. Bei solchen Programmdateien findet der Linkvorgang praktisch zweimal statt: Einmal durch den Entwickler, und ein zweites Mal - unsichtbar - beim Anwender während der Ausführung. Im Regelfall werden die benötigten Libraries beim ersten Linkvorgang fest eincodiert; es ist aber auch möglich, dass das Programm nach Überprüfung der vorhandenen Libraries während der Laufzeit wahlweise einzelne nachlädt oder auch nicht. Solche nachgeladenen Libraries werden oft als [[Plug-In]]s bezeichnet.

Auf [[IBM]]-[[Großrechner]]systemen wird der Linker auch "linkage editor" (englisch) genannt.

[[Kategorie:Programmierung]]

[[en:Linker]]
[[es:Enlazador]]
[[et:Linkija]]
[[fr:Édition de liens]]
[[ja:リンケージエディタ]]
[[nl:Linken]]
[[zh:链接器]]

Version vom 25. Dezember 2005, 23:17 Uhr

Malabar ist eine Stadt im Brevard County im US-Bundesstaat Florida, USA, mit 2.622 Einwohnern (Stand: 2000). Die geographischen Koordinaten sind: 27,99° Nord, 80,58° West. Das Stadtgebiet hat eine Größe von 34,2 km².

In Malaber gibt es derzeit 2 verschiedene Kirchen aus 2 unterschiedlichen Konfessionen. Weiterhin gibt es eine zu keiner Konfession gehörende Kirche (Stand: 2004). Vorlage:Stub

Vorlage:Navigation Brevard County