我可以强制 linux 内核为新的可执行文件使用特定的内存页吗

Can i force linux kernel to use particular memory pages for new executable

当我执行二进制文件时,我希望它们的堆栈段被特殊数据填充。 我所做的只是编写在堆栈上分配巨大缓冲区的程序,调用大量 malloc 和 mmap,例如用 'A' 字符填充所有这些内存。然后我检查并看到我的程序使用了整个内存的大约 80%。然后我停止这个程序并启动另一个程序,它只是遍历堆栈并检查堆栈上的值。反正我看不到我的 'A' 角色。谁能告诉我该怎么做?

UPD 为什么我这样做只是因为一个ctf。我提到了任务。

int func()
{
    int i;
    if(i == 0xdeadbeef)
        system("cat flag");
    else
        func();
}

int main()
{
    func();
}

不,不是没有对内核进行重大更改。新的匿名页面总是用零填充,即使你可以用其他东西填充它们,也没有合理的方法可以让它们从旧进程中继承数据。这样做本身就是一个巨大的安全漏洞。