64-Bit-Software

Ab Version 2010 Release 2 bietet Altova sowohl eine 32-Bit- als auch eine 64-Bit-Version aller Altova-Applikationen an, die in der Enterprise und der Professional Edition des Altova MissionKit und in der Enterprise Edition von Altova Authentic enthalten sind. Auf dieser Seite finden Sie wichtige Informationen über die Vorteile, Unterschiede und Abhängigkeiten von 64-Bit-Software, die Sie bei der Entscheidung, ob Sie nun am besten eine 64-Bit oder eine 32-Bit-Version installieren sollen, bedenken sollten.

Warum 64 Bit?

Viele moderne Software-Entwicklungs- und Datenverarbeitungsumgebungen sind durch eine vorgegebene Arbeitsspeicherobergrenze eingeschränkt. In aktuellen und früheren 32-Bit-Versionen von Microsoft Windows erhält jeder laufende Prozess - unabhängig davon wie viel realer oder virtueller Arbeitsspeicher auf einem bestimmten Rechner zur Verfügung steht - maximal 2 GB Arbeitsspeicher zugewiesen. Übersetzt in die Welt der XML-Entwicklung bedeutet das, dass XML-Dateien, die größer als 100 bis 200 MB (abhängig vom Komplexitätsgrad) sind, gar nicht geöffnet werden können.

Ein 64-Bit-System ist nicht durch diese Arbeitsspeicherobergrenzen limitiert. Der maximal adressierbare Arbeitsspeicher ist bei einem 64-Bit-Prozessor so groß, dass er in mehreren Petabytes ((1 Petabyte = 1 Million Gigabyte) gemessen wird. Derzeit unterstützen 64-Bit-Versionen von Microsoft Windows 7 bis zu 192 GB installierten Arbeitsspeicher. In der Praxis ist die maximale Größe einer XML-Datei, die von einer 64-Bit-Applikation verarbeitet werden kann, nur durch die Größe des installierten physischen Arbeitsspeichers beschränkt.

In der Abbildung unten sehen Sie eine 2,7 GB-Datei, geöffnet in der 64-Bit-Version von XMLSpy. Diese XML-Datei enthält den Wikipedia XML Feed und ist über 35 Millionen Zeilen lang.

Eine sehr große Datei für die Bearbeitung in der 64-Bit-Version von XMLSpy

(Selbst ohne genügend physischen Arbeitsspeicher können sehr große Dateien von 64-Bit-Systemen mit Hilfe des virtuellen Arbeitsspeichers verarbeitet werden, allerdings bedeutend langsamer.)

Außerdem können Dateien, die kleiner als 100 MB sind, effizienter von einem 64-Bit-System verarbeitet werden, das einen großen physischen Arbeitsspeicher hat, da das System im Arbeitsspeicher einen viel größeren Cache der Festplattendaten behalten kann.

Häufige Fragen zu 64-Bit-Software

Im Folgenden finden Sie Antworten auf die häufigsten Fragen (FAQ) zu 32-Bit-Software im Vergleich zu 64-Bit-Software.

  • Läuft eine 32-Bit-Applikation auf einer 64-Bit-Version von Windows?

    Ja. Beachten Sie allerdings, dass die Altova Version 2010 die früheste Version ist, die mit Windows 7 kompatibel ist.

  • Läuft eine 64-Bit-Applikation auf einer 32-Bit-Version von Windows?

    Nein.

  • Woher weiß ich, ob mein System auf einer 32- oder einer 64-Bit-Version von Windows läuft?

    Öffnen Sie die Windows-Systemsteuerung, wählen Sie die "Klassische Ansicht" (Vista) oder "Symbole" (Windows 7) und öffnen Sie das Symbol "System". In der Zeile mit der Bezeichnung "Systemtyp" finden Sie entweder die Information "32-Bit-Betriebssystem" oder "64-Bit-Betriebssystem".

  • Auf meinem System läuft eine 64-Bit-Version von Windows. Soll ich 32-Bit- oder 64-Bit-Software-Applikationen verwenden?

    Das hängt davon ab. Lesen Sie sich zuerst die zusätzlichen Informationen, die weiter unten genauer erläutert sind, durch.

Installationsoptionen

Ab Version 2010 Release 2 unterstützen gültige Keycodes für die Enterprise und die Professional Edition von Altova-Applikationen sowohl 32-Bit- als auch 64-Bit-Versionen. Dies ermöglicht Flexibilität in einigen wichtigen Aspekten:

  • Upgrade-Pfad – Wenn ein Benutzer derzeit ein 32-Bit-System installiert hat, muss er 32-Bit-Versionen von Altova-Software installieren. Wenn der Benutzer später einen 64-Bit-Rechner verwendet, kann die 32-Bit-Version vom alten System deinstalliert werden und der Benutzer kann denselben Keycode für eine 64-Bit-Version auf dem neuen 64-Bit-Rechner verwenden.
  • Gemischte Umgebungen – Eine Mehrplatzlizenz lässt sich sehr gut in gemischten Umgebungen verwenden. So können z.B. bei einer Lizenz für 10 Benutzer einige Benutzer die 32-Bit-Version und andere die 64-Bit-Version verwenden. Jede Kombination ist hier möglich.
  • Gemischte Anforderungen – Ein einzelner Benutzer, der derzeit mit einem 64-Bit-System arbeitet, kann auf demselben Rechner die 32-Bit- und die 64-Bit-Version von Altova-Applikationen installieren und dafür einen einzigen gültigen Lizenz-Keycode verwenden.
  • D.h. ein Entwickler kann jede beliebige der Applikationen aus dem gesamten MissionKit-Paket sowohl in einer 32-Bit als auch in einer 64-Bit-Version installieren und die jeweils gewünschte Version für jede einzelne Aufgabe verwenden. So muss eventuell zum Herstellen einer Verbindung zu einer Datenbank aufgrund eines Treiberproblems die 32-Bit-Version von MapForce gestartet werden. Später an diesem Tag kann der Entwickler zum Arbeiten mit einer besonders großen XML-Datei die 64-Bit-Version von XMLSpy verwenden.
  • Um Verwechslungen vorzubeugen, sind die 64-Bit-Versionen der einzelnen Altova-Applikationen auf dem Desktop-Shortcut, in der Statusleiste am unteren Rand des Applikationsfensters und im Willkommensbildschirm speziell gekennzeichnet.
  • In der Abbildung unten sehen Sie den Willkommensbildschirm und die Statusleiste der 64-Bit-Version von XMLSpy.
Willkommensbildschirm und Statusleiste der 64-Bit-Version von XMLSpy

Probleme im Zusammenhang mit der 64-Bit-Software:

Arbeitsspeicherbedarf

Eine 64-Bit-Applikation benötigt zum Öffnen einer Datei mehr Arbeitsspeicher als eine 32-Bit-Applikation, da die Adressgröße von Basisadressregistern und anderen Strukturen automatisch größer wird. Eine Daumenregel für XML-Dateien ist, dass der Speicherbedarf um etwa 50 bis 60 % ansteigt. Das bedeutet, ein Benutzer sollte mindestens 4 GB Arbeitsspeicher installiert haben, um eine 64-Bit-Applikation nutzen zu können.

Anbindung an Datenbanken

Im Allgemeinen wird für eine 64-Bit-Applikation ein 64-Bit-Treiber benötigt, um eine Verbindung zur Datenbank herstellen zu können. Hier einige spezifische Punkte dazu:

  • ODBC – Mit 64-Bit-Applikationen können nur 64-Bit-Versionen von ODBC-Treibern verwendet werden. Um herauszufinden, was für ein ODBC-Treiber auf einem bestimmten Computer installiert ist, können Sie das ODBC-Konfigurationstool verwenden. Es gibt auf einem 64-Bit-Rechner zwei Treiberkonfigurationstools. Beide haben verwirrenderweise den Namen “odbcad32.exe”, befinden sich aber in unterschiedlichen Ordnern:
  • Windows\system32\odbcad32.exe ist für 64-Bit-Versionen von ODBC-Treibern zuständig
  • Windows\sysWOW64\odbcad32.exe ist für 32-Bit-Versionen von ODBC-Treibern zuständig
  • Andere Datenbanken – Einige Datenbanken haben noch keinen 64-Bit-Treiber. Bei anderen gibt es Probleme mit der Treiberinstallation oder sie sind noch nicht mit Windows 7 kompatibel. Nähere Informationen dazu finden Sie auf der Website des jeweiligen Datenbankentwicklers.

Verwendung von 64-Bit-Applikationen mit Microsoft Access-Datenbankdateien

Der Microsoft Jet-Datenbankprozessor stammt aus Windows 95 oder früheren Versionen und war der Datenbankprozessor, der anfangs zur Verarbeitung von mit Microsoft Access erstellten *.mdb-Dateien verwendet wurde. In allen Microsoft Windows-Versionen bis Windows 7 sind Versionen von Jet enthalten, mit deren Hilfe 32-Bit-Applikationen eine Verbindung zu den in *.mdb-Dateien enthaltenen Access-Datenbanken herstellen.

Seit Office 2007 hat Microsoft Access nun ein neues Dateiformat mit der Dateierweiterung *.accdb sowie zusätzlichen Funktionalitäten. Access 2007-Datenbanken (und höhere Versionen) werden vom neuen Microsoft ACE (Access Database Engine)-Treiber unterstützt..

Der Microsoft Jet-Datenbankprozessor gilt als Auslaufprodukt. Zwar ist der Prozessor in Windows 7 noch enthalten, doch gibt es offenbar keine Pläne, eine 64-Bit-Version davon herauszubringen. Der Microsoft ACE-Datenbankprozessor ist in einer Version für 64-Bit-Systeme erhältlich und der Treiber dafür kann direkt von der folgenden Webseite heruntergeladen werden:

Außerdem kann der Microsoft ACE-Datenbankprozessor auch unter folgender Adresse als Bestandteil der x64-Version von Microsoft Office 2010 heruntergeladen werden:

Leider gibt es derzeit eine Einschränkung für den 64-Bit ACE-Treiber – Er darf nicht auf einem Rechner installiert werden, auf dem eine 32-Bit-Version von Microsoft Office verwendet wird.

Um Access-Datenbanken von 64-Bit-Versionen von Altova MissionKit-Applikationen aus zu öffnen, wird derzeit der x64-ACE-Treiber von Microsoft benötigt, egal ob die Dateierweiterung *.mdb oder *.accdb lautet.

Bestehende Dateien, die mit 32-Bit-Versionen von Altova-Applikationen erstellt wurden, wie z.B. MapForce-Mappings oder StyleVision Stylesheets, enthalten unter Umständen Informationen, in denen der 32-Bit Jet OLEDB-Provider (Microsoft.Jet.OLEDB.4.0) definiert. ist. Die 64-Bit-Applikationen von Altova konvertieren diese älteren Dateien automatisch in ACE-Treiber-Verbindungen (Microsoft.ACE.OLEDB.12.0). Der Benutzer muss nur mehr den 64-Bit ACE-Treiber wie oben beschrieben installieren.

Versionskontrollsysteme

Altova hat die Microsoft Source Code Control Interface (MSSCCI) v1.1 - v1.3 in XMLSpy und UModel implementiert und seine Produkte mit vielen gängigen Versionskontrollsystemen getestet. DiffDog kann außerdem bei Verwendung eines Standalone-Versionskontrollsystems als Standardtool für den Vergleich und die Zusammenführung von Dateien verwendet werden.

Da die meisten CSS Clients keine 64-Bit-Versionen haben, bietet Altova eine eigene SCC-Überbrückungssoftware an, mit deren Hilfe 64-Bit-Versionen von Altova-Applikationen mit SCC 32-Bit-Applikationen arbeiten können. Diese Überbrückungssoftware ist eng integriert und funktioniert von der Benutzerperspektive her transparent, wenn kein 64-Bit SCC-Client verfügbar ist.

Browser Plugins

Für einen 32-Bit Browser sind 32-Bit-Plug-ins und für einen 64-Bit-Browser sind 64-Bit-Plug-ins erforderlich. Derzeit steht nur Internet Explorer in beiden Versionen zur Verfügung, daher stehen auch die Altova Authentic Browser Plug-ins für Internet Explorer sowohl in einer 32-Bit- als auch einer 64-Bit-Version zur Verfügung. FireFox ist derzeit nur als 32-Bit-Applikation erhältlich. In der Dokumentation zum Authentic Browser Plug-in finden Sie HTML-Beispielcode, in dem gezeigt wird, wie man Anweisungen zum Herunterladen und Installieren der richtigen Version des Authentic Browser Plug-in in eine HTML-Seite einbettet.

Integration mit Visual Studio und Eclipse

Visual Studio ist nur als 32-Bit-Applikation erhältlich. Daher sind Altova Integrationspakete für Visual Studio ebenfalls nur in 32-Bit-Versionen verfügbar.

Da Visual Studio nur in einer 32-Bit Version verfügbar ist, müssen Sie die 32-Bit-Version von XMLSpy, MapForce, StyleVision, UModel oder Authentic installieren, wenn Sie die IDE nahtlos in die Visual Studio Umgebung integrieren möchten. Unabhängig davon, ob Sie eine 32- oder eine 64-Bit Windows-Version verwenden, muss auch die 32-Bit-Version des jeweiligen Integrationspakets installiert werden.

Eclipse steht in einer 32-Bit- und einer 64-Bit-Applikation zur Verfügung und benötigt ein entsprechendes Plug-in. Altova bietet seit Release Version 2007 32-Bit-Integrationspakete für Eclipse an. Derzeit sind Integrationskomponenten sowohl für die 32-Bit- als auch für die 64-Bit-Version verfügbar.

Microsoft Word Integration

Microsoft Word steht in einer 32-Bit- und einer 64-Bit-Version zur Verfügung. Altova StyleVision kann komplexe Berichte unter anderem im Microsoft Word 2007+ (OOXML)- und im RTF-Format darstellen und anzeigen. DiffDog enthält eine spezielle Vergleichsfunktion für Microsoft Word-Dokumente ab Version 2003.

Um Microsoft Word-Dokumente entweder in StyleVision oder DiffDog anzeigen zu können, muss die im Hilfebildschirm von Microsoft Word angezeigte Version mit der Version des installierten Altova-Tools übereinstimmen. D.h. wenn Sie eine 32-Bit-Version von Microsoft Word verwenden, müssen Sie auch eine 32-Bit-Version von StyleVision bzw. DiffDog verwenden. Wenn Sie eine 64-Bit-Version von Word verwenden, müssen Sie eine 64-Bit-Version des Altova-Tools verwenden.

ActiveX-Schnittstellen

Mit Hilfe einer ActiveX-Schnittstelle kann die Benutzeroberfläche und Funktionalität einer Altova-Applikation in Ihre eigene Applikation integriert werden. Wenn es sich bei Ihrer Applikation um eine 32-Bit-Applikation handelt, müssen Sie eine 32-Bit-Version der Altova Software installieren. Für eine 64-Bit-Applikation benötigen Sie eine 64-Bit-Version der Altova-Software.

COM-Schnittstellen

COM-Schnittstellen automatisieren die Funktionalitäten von Altova-Applikationen ohne Benutzeroberflächenintegration über die API. Standardmäßig macht Windows eine 32-Bit COM für eine 32-Bit-Applikation und eine 64-Bit COM für eine 64-Bit-Applikation sichtbar. Eine gemischte Verwendung ist möglich, dazu müssen allerdings einige zusätzliche Schritte durchgeführt werden: Wenn Sie z.B. nur eine 64-Bit-Version von Altova-Software installiert haben und diese von Ihrer 32-Bit-Applikation aus verwenden möchten, müssen Sie vorher folgende Schritte durchführen:

connect to an application:
CComPtr <IUnknown >ipApplication;
HRESULT hRes;
DWORD dwClsContext = CLSCTX_ALL;
hRes = ::CoCreateInstance( m_clsidOfApplication, NULL, dwClsContext, IID_IUnknown,
(void **)&ipApplication.p );
if ( !SUCCEEDED( hRes ) )
{
#if defined( _WIN64 )
dwClsContext |= CLSCTX_ACTIVATE_32_BIT_SERVER,
#else // _WIN64
dwClsContext |= CLSCTX_ACTIVATE_64_BIT_SERVER,
#endif // _WIN64
hRes = ::CoCreateInstance( m_clsidOfApplication, NULL, dwClsContext, IID_IUnknown,
(void **)&ipApplication.p );
}
if ( SUCCEEDED( hRes ) )
{
// some code
...
}
open CLSID in correct view:
LONG OpenCLSID( LPCTSTR strCLSID, REGSAM samDesired, hObjCLSIDKey )
{
HKEY hCLSIDKey;
LONG rc = RegOpenKeyEx( HKEY_CLASSES_ROOT,_T("CLSID"), 0, samDesired, &hCLSIDKey );
if ( rc == ERROR_SUCCESS )
{
LONG lRet = RegOpenKeyEx( hCLSIDKey, strCLSID, 0, samDesired, &hObjCLSIDKey );
RegCloseKey(hCLSIDKey);
if ( lRet != ERROR_SUCCESS && samDesired == KEY_READ )
{
#if defined( _WIN64 )
samDesired |= KEY_WOW64_32KEY;
#else // _WIN64
samDesired |= KEY_WOW64_64KEY;
#endif // _WIN64
// try other view
rc = OpenCLSID( strCLSID, samDesired, hObjCLSIDKey );
}
}
return rc;
}
...
HKEY hObjCLSIDKey;
if ( OpenCLSID( <a class id >, KEY_READ, hObjCLSIDKey ) == ERROR_SUCCESS )
{
// one can now open subkeys using this key as parent
...
}

Beachten Sie bitte: Wenn eine Altova-Applikation die andere aufruft, versucht sie zuerst, die entsprechende Pendantversion aufzurufen. Falls keine gefunden wird, wird, falls vorhanden, die andere Version aufgerufen. Das bedeutet, wenn Sie z.B. eine 64-Bit-Version von MapForce und eine 32-Bit-Version von XMLSpy installiert haben, können einander die beiden Versionen gegenseitig aufrufen, um ein in einem MapForce-Mapping referenziertes XML-Schema in XMLSpy zu bearbeiten oder von einem XMLSpy-Projekt aus eine MapForce-Transformation durchzuführen.

Kundenkommentare

“Meiner Erfahrung nach gibt es keinen Ersatz für Qualitätstools. Und Ihr MissionKit ist wirklich ein Qualitätstool - bei weitem die beste Ressource für Unternehmensentwicklung, die mir je untergekommen ist, und selbst ein hervorragendes Beispiel für gute Software. Kompliment für dieses exzellente Produkt.”

Thomas D. Blersch Senior Software Engineer, Exeter Government Services LLC