首页 文章
  • 1 votes
     answers
     views

    重新定位线程控制块

    我目前处于需要重新定位TCB(线程控制块)的情况 . 根据我的理解,调用VDSO时进程执行中有以下方案(根据this article) 全部由指令 *call %gs:0x10 触发 %gs是使用全局描述符表的段寄存器 . GDT是存储在与进程相关联的内核堆栈中的关联表,并保持段寄存器值与进程的地址空间中的地址之间的对应关系 . 它是随机初始化并由加载器选择(glibc库的一部分) ...
  • 2 votes
     answers
     views

    shell /内核如何处理发送到同一进程组内进程的信号?

    在UNIX环境的高级编程部分9.6中,我们可以阅读: 每当我们按下终端的中断键(通常是DELETE或Control-C)时,中断信号就会被发送到前台进程组中的所有进程 . 我做了一个简单的测试,编写超级简单的Python脚本,处理sigint信号并比较结果: #!/usr/bin/python3 import os import sys import signal def handler(...
  • 492 votes
     answers
     views

    bcrypt怎么有内置盐?

    Coda Hale的文章"How To Safely Store a Password"声称: bcrypt内置了盐来防止彩虹表攻击 . 他引用this paper,其中说在OpenBSD的 bcrypt 实现中: OpenBSD从arcfour(arc4random(3))密钥流生成128位bcrypt salt,并使用内核从设备计时收集的随机数据进行种子处理 . 我...

热门问题