我正在学习操作系统,有一件事我不太明白,那就是堆和栈。我知道它们的好处以及每个的工作原理,但在动态语言的情况下,我无法弄清楚如何分配栈。在静态类型的语言中,所有原始数据类型都存储在栈上,因为它们很小,并且将按照更多或更少相同的顺序进行释放,但是在像PHP这样的语言中,在运行时并不知道这一点。那么栈大小和变量分配是如何实现的呢?
如果我理解正确,栈大小是通过分析原始数据类型的数量和一些偏移量在编译时确定的。在PHP或其他动态语言中,该过程是如何完成的呢?
如果这个问题有些棘手,请给我一些指导,告诉我如何学习这个。
如果我理解正确,栈大小是通过分析原始数据类型的数量和一些偏移量在编译时确定的。在PHP或其他动态语言中,该过程是如何完成的呢?
如果这个问题有些棘手,请给我一些指导,告诉我如何学习这个。