mirror of
https://github.com/python/cpython.git
synced 2024-12-03 06:46:01 +08:00
2a799bf77a
to others to argue about how to build it on other platforms (on Windows it's in its own DLL).
76 lines
3.3 KiB
Plaintext
76 lines
3.3 KiB
Plaintext
In Win32, DLL's are "pre-linked" using a specified base address.
|
|
When the DLL is loaded, an attempt is made to place it at
|
|
that address. If that address is already in use, a new base address
|
|
is selected, and the DLL subject to fixups. Apparently, these
|
|
fixups are very slow, and significant performance gains can be
|
|
made by selecting a good base address.
|
|
|
|
This document is to allocate base addresses to core Python
|
|
and Python .PYD files, to give a better change of optimal performance.
|
|
This base address is passed to the linker using the /BASE
|
|
command line switch.
|
|
|
|
|
|
Python.exe/Pythonw.exe - 1d000000 - 1e000000 (-1)
|
|
Python.dll - 1e000000 - 1e100000 (-1)
|
|
|
|
Standard Extension Modules 1e100000 - 1e200000 ""
|
|
- _symtable 1e100000 - 1e110000
|
|
- bsddb 1e180000 - 1e188000 ""
|
|
- _tkinter 1e190000 - 1e1A0000
|
|
- parser 1e1A0000 - 1e1B0000
|
|
- zlib 1e1B0000 - 1e1C0000
|
|
- winreg 1e1C0000 - 1e1D0000
|
|
- _socket 1e1D0000 - 1e1E0000
|
|
- _sre 1e1E0000 - 1e1F0000
|
|
- mmap 1e1F0000 - 1e1FFFFF
|
|
|
|
More standard extensions 1D100000 - 1e000000
|
|
- pyexpat 1D100000 - 1D110000
|
|
- select 1D110000 - 1D120000
|
|
- unicodedata 1D120000 - 1D160000
|
|
- winsound 1D160000 - 1D170000
|
|
- bZ2 1D170000 - 1D180000
|
|
- datetime 1D180000 - 1D190000
|
|
|
|
Other extension modules
|
|
- win32api 1e200000 - 1e220000
|
|
- win32ras 1e220000 - 1e230000
|
|
- win32lz 1e230000 - 1e240000
|
|
- timer 1e240000 - 1e250000
|
|
- mmapfile 1e250000 - 1e260000
|
|
- win32pipe 1e260000 - 1e270000
|
|
- avl 1e270000 - 1e270000
|
|
- dbhash 1e280000 - 1e290000
|
|
- win32net 1e290000 - 1e2A0000
|
|
- win32security 1e2A0000 - 1e2B0000
|
|
- win32print 1e2B0000 - 1e2c0000
|
|
- <unused> 1e2d0000 - 1e2e0000
|
|
- win32gui 1e2e0000 - 1e2f0000
|
|
- _imaging 1e2f0000 - 1e300000
|
|
- multiarray 1e300000 - 1e310000
|
|
- win32help 1e310000 - 1e320000
|
|
- win32clipboard 1e320000 - 1e330000
|
|
- win2kras 1e330000 - 1e340000
|
|
- pythoncom 1e340000 - 1e400000
|
|
- win32ui 1e400000 - 1e500000
|
|
- win32uiole 1e500000 - 1e600000
|
|
- pywintypes 1e600000 - 1e700000
|
|
- win32process 1e700000 - 1e800000
|
|
- odbc 1e710000 - 1e720000
|
|
- dbi 1e720000 - 1e730000
|
|
- win32file 1e730000 - 1e740000
|
|
- win32wnet 1e740000 - 1e750000
|
|
- win32com.shell 1e750000 - 1e760000
|
|
- win32com.internet 1e760000 - 1e770000
|
|
- win32com.exchange 1e770000 - 1e780000
|
|
- win32com.exchdapi 1e780000 - 1e790000
|
|
- win32com.axscript 1e790000 - 1e7a0000
|
|
- win32com.axdebug 1e7b0000 - 1e7c0000
|
|
- win32com.adsi 1e7f0000 - 1e800000
|
|
- win32event 1e810000 - 1e820000
|
|
- win32evtlog 1e820000 - 1e830000
|
|
- win32com.axcontrol 1e830000 - 1e840000
|
|
|
|
|