问题:python3和python3m可执行文件之间的区别
是什么之间的区别/usr/bin/python3
和/usr/bin/python3m
executibles?
我在Ubuntu 13.04上观察到了它们,但是Google建议它们也存在于其他发行版中。
这两个文件具有相同的md5sum,但似乎不是符号链接或硬链接。这两个文件返回的索引节点号不同,ls -li
并且测试find -xdev -samefile /usr/bin/python3.3
不返回任何其他文件。
有人在AskUbuntu上问了类似的问题,但我想更多地了解这两个文件之间的区别。
回答 0
Python实现可以在文件名标签中适当地包含其他标志。例如,在POSIX系统上,这些标志也将有助于文件名:
–with-pydebug(标志:d)
–with-pymalloc(标志:m)
–with-wide-unicode(标志:u)
通过PEP 3149。
关于m
标志,这是Pymalloc的含义:
Pymalloc是由Vladimir Marangozov编写的专用对象分配器,它是Python 2.1中新增的一项功能。Pymalloc旨在比系统malloc()更快,并且对于Python程序典型的分配模式而言,具有较少的内存开销。分配器使用C的malloc()函数获取较大的内存池,然后从这些池执行较小的内存请求。
最后,这两个文件可能在某些系统上被硬链接。虽然两个文件在我的Ubuntu 13.04系统上具有不同的inode编号(因此是不同的文件),但两年前的comp.lang.python帖子显示它们曾经被硬链接过。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。