系统无法执行指定的程序。 |
您所在的位置:网站首页 › python系统无法执行指定程序的操作 › 系统无法执行指定的程序。 |
在应用层的切换这部分,《一个64位操作系统的设计与实现》书中将一个函数复制到了0x800000地址后,然后跳转执行,不过实际复现的时候出现无法正确执行的问题。 首先放上函数原型 void单步调试来到 0x800000 源代码执行处,发现汇编源码在调用 printf_color 这个函数的时候执行的是 call rcx,也就是说函数的地址放在寄存器中,而在开头处是通过 rip 得到的函数的地址 ![]() 但是在跳转后我们的 rip 不是原来的 rip 了,所以无法正确执行。 因此目前的解决方法是去掉所有会出错的函数调用 (新更新) 经过一番探索,找到一个替代办法,将要调用的函数的地址写入指针中进行调用,并且将一些变量设置为本地变量,具体如下图 ![]() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |