Unterschied zwischen den ausführbaren Dateien von python3 und python3m

116

Was ist der Unterschied zwischen /usr/bin/python3und /usr/bin/python3mausführbaren Dateien?

Ich beobachte sie unter Ubuntu 13.04, aber Google schlägt vor, dass sie auch auf anderen Distributionen existieren.

Die beiden Dateien haben dieselbe md5sum, scheinen jedoch keine symbolischen oder festen Links zu sein. Die beiden Dateien haben unterschiedliche Inode-Nummern, die von zurückgegeben werden, ls -liund beim Testen werden find -xdev -samefile /usr/bin/python3.3keine anderen Dateien zurückgegeben.

Jemand hat eine ähnliche Frage zu AskUbuntu gestellt , aber ich wollte mehr über den Unterschied zwischen den beiden Dateien herausfinden.

James Mishra
quelle
11
Dies wird in dem PEP behandelt , der in der Antwort auf die verknüpfte Frage erwähnt wird.
Chepner
Ah, Danke! Bevor ich diese Frage schrieb, las ich die ersten Zeilen des PEP, war aber zu faul, um das Ganze zu lesen ...
James Mishra

Antworten:

117

Das Verdienst dafür geht an chepner, der darauf hingewiesen hat, dass ich bereits den Link zur Lösung hatte.

Python-Implementierungen KÖNNEN gegebenenfalls zusätzliche Flags in das Dateinamen-Tag aufnehmen. Auf POSIX-Systemen tragen diese Flags beispielsweise auch zum Dateinamen bei:

--with-pydebug (Flagge: d)

--with-pymalloc (Flagge: m)

--with-wide-unicode (flag: u)

über PEP 3149 .

In Bezug auf die mFlagge ist dies Pymalloc:

Pymalloc, ein spezieller Objektzuweiser von Vladimir Marangozov, wurde Python 2.1 hinzugefügt. Pymalloc soll schneller als das System malloc () sein und weniger Speicheraufwand für für Python-Programme typische Zuordnungsmuster haben. Der Allokator verwendet die malloc () - Funktion von C, um große Speicherpools abzurufen, und erfüllt dann kleinere Speicheranforderungen aus diesen Pools.

über Neuigkeiten in Python 2.3

Schließlich können die beiden Dateien auf einigen Systemen fest verknüpft sein. Während die beiden Dateien auf meinem Ubuntu 13.04-System unterschiedliche Inode-Nummern haben (also unterschiedliche Dateien), zeigt ein Beitrag von comp.lang.python vor zwei Jahren , dass sie einmal fest verknüpft waren.

James Mishra
quelle