【发布时间】:2020-06-06 21:02:13
【问题描述】:
操作系统是否可以查看 CPython 中的调用堆栈(例如函数之间的调用)?例如。操作系统以何种方式参与 Python 堆栈的创建、检索和/或管理及其stack frames 的操作?
上下文:
- 我的理解是 Python 解释器确实不支持尾调用递归,所以这似乎是留给 Python 处理的事情。
- 大多数操作系统对堆栈大小施加了最大限制(例如,我相信在 Linux 操作系统中,最大堆栈大小默认为 8192 KB,但可以通过例如
ulimit进行更改),这意味着内核显然可以参与其中至少限制了调用堆栈的大小。
【问题讨论】:
标签: python recursion memory-management linux-kernel cpython