XJTUMen
Topics Moments Posts Categories Tags Subs
New Topic
Log in
Topics Moments Posts r/ Subs
Chat
Subs All →
Explore or create r/...
Categories All →
深入交流 通用&CS攻略 学习资料 飞跃重洋 读书分享 学术专区 课程点评 计算机系统导论 计算机图形学 ANA
Tags All →
# teacher
493
# resources
77
# survive
29
# discourse
19
# study
18
# experience
16
# ai
15
# course
15
  • Profile
  • Topics
  • Replies
  • Gallery
  • Likes
  • Bookmarks
  • Badges 6
  • 计算机操作系统实验动态模块篡改系统调用为什么返回值不正确
    学术专区 2024-12-01

    关闭对应位置的写保护。此外,使用的符号地址我是通过函数动态获取的,最后打印到日志发现动态查找的地址和在文件中找到的地址也并不一样,这部分可能也会影响

    Post #11
  • 计算机操作系统实验动态模块篡改系统调用为什么返回值不正确
    学术专区 2024-11-28

    好的,感谢

    Post #6
  • 计算机操作系统实验动态模块篡改系统调用为什么返回值不正确
    学术专区 2024-11-25

    解决了。在尝试的过程中发现,传入的参数中,a 实际上是地址,使用*a 可以从日志中看见是正确的值,但是 b 我就不知道了,即使当作地址来解析还是不正确。
    最终的解决方案是读取寄存器 x0,和 x1 的值,这两个寄存器中的值是正确的。

    // 新的系统调用函数
    asmlinkage int hello(/* int *a, int *b */void) {
        int a = (int)current_pt_regs()->regs[0]; // 从寄存器 x0 获取参数 a
        int b = (int)current_pt_regs()->regs[1]; // 从寄存器 x1 获取参数 b
        
        printk("No 78 syscall has changed to hello\n");
        printk("a: %d, b: %d\n", a, b);
        
        return a + b; // 返回 a 和 b 的和
    }
    
    Post #4 ❤️ 1 like
  • 计算机操作系统实验动态模块篡改系统调用为什么返回值不正确
    学术专区 2024-11-24

    感谢😊我再试试

    Post #3
  • 实验 2.6 光线递归问题
    计算机图形学 2024-11-07

    好的,感谢🙏🏻

    Post #3
  • Linux 下 dandelion1.1.1 版本无法导入模型
    计算机图形学 2024-10-20

    将 dandelion1.1.1 版本的 Eigen 文件夹替换为 dandelion1.1.0 版本的 Eigen 文件夹成功解决问题。
    使用新版的 Eigen 编译后,用 vscode 调试时,在如下部分:
    image

    会报如下错:
    image
    似乎是某部分访问到 root 用户下不存在的文件了,但不知道具体是因为什么出错。此外,在 1.1.0 与 1.1.1 版本中似乎都存在一些硬编码:

    image
    image

    Post #4
Notifications Posts Topics Chat Profile