没有合适的资源?快使用搜索试试~ 我知道了~
jvm-suspend-working-thread-机制:jvm暂停工作线程的机制
共11个文件
png:4个
txt:1个
gitignore:1个
需积分: 10 0 下载量 3 浏览量
2021-02-16
00:30:30
上传
评论
收藏 7.22MB ZIP 举报
温馨提示
JVM挂起工作线程的机制与原理 首选使用Clang编译GCC编译会报错目前未研究清楚 内嵌的汇编代码依赖编译后的栈上临时变量跟RBP指针的相对位置不保证编译器优化后内嵌的编译代码能正常运行 怎么运行的 由于编译可能产生问题可以直接在linux上运行 ./main 通过mprotect设置内存访问权限 mprotect提供下图多个访问权限设置 使用mprotect对特定内存区域设置附加保护并注册信号量处理器 当线程访问下图缓冲区指针指向的内存,会产生一个信号量,线程会转移到handler方法 handler方法暂时按下不表 main函数流程 保存几个寄存器rsp rbp rip(pc寄存器)插入其写入变量,刹车处理程序恢复 第一次访问p指针(也是buffer指针)由于权限的问题,会转移到handler方法 handler流程 处理信号量,重新设置缓冲区指向的区域为精确可写 恢复快照jmp到之
资源推荐
资源详情
资源评论
收起资源包目录
jvm-suspend-working-thread-mechanism-master.zip (11个子文件)
jvm-suspend-working-thread-mechanism-master
pic
main_method.png 687KB
how-it-works.gif 4.99MB
register_handler_and_set_memory_access.png 616KB
mprotect_access.png 514KB
handler.png 707KB
main.c 3KB
LICENSE 1KB
main 25KB
.gitignore 35B
CMakeLists.txt 115B
README.md 2KB
共 11 条
- 1
资源评论
活着奔跑
- 粉丝: 35
- 资源: 4685
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功