小编Dav*_*ici的帖子

Linux:有没有办法在不停止/暂停进程(SIGSTOP)的情况下使用 ptrace?

我正在尝试将程序从 Windows 移植到 Linux。当我发现Linux 上
没有“真正的”对应项时,我遇到了一个问题;ReadProcessMemory我寻找替代方案,发现了ptrace一个强大的进程调试器。
我快速用 C++ 编写了两个小型控制台应用程序进行测试ptrace,然后在程序中使用它。

测试应用程序

这是tracee;它每 50 毫秒打印两个整数,同时每次将它们的值加 1。

#include <QCoreApplication>
#include <QThread>
#include <iostream>

using namespace std;

class Sleeper : public QThread
{
public:
    static void usleep(unsigned long usecs){QThread::usleep(usecs);}
    static void msleep(unsigned long msecs){QThread::msleep(msecs);}
    static void sleep(unsigned long secs){QThread::sleep(secs);}
};

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    int value = 145;
    int i = 0;

    do {
    cout << "i: " << i << " " …
Run Code Online (Sandbox Code Playgroud)

c++ linux memory ptrace process

5
推荐指数
1
解决办法
2707
查看次数

标签 统计

c++ ×1

linux ×1

memory ×1

process ×1

ptrace ×1