环境指针 - ikarishinjieva/unixV6-code-analyze-chs GitHub Wiki

综述

  • 环境指针指向堆栈中用于保护环境变量的区域,方便被保护变量的还原以及退栈操作
  • 一般用R5寄存器作为环境指针寄存器
  • 环境指针多用于函数的进入和返回时的退栈操作

举例

图中

  • R5寄存器值为R5[2],是堆栈中R5[1]的地址
  • R5[1]是R5[0]的地址
  • 以上形成勾连机制
  • 当被还原时,根据R5寄存器的值R5[2]的指向,还原R2[1]、R3[1]、R4[1],并还原R5[1]
  • 此时R5的值R5[1]指向R5[0]位置,可重复以上机制还原R2[0]、R3[0]、R4[0],...

调用列表

⚠️ **GitHub.com Fallback** ⚠️