草庐IT

LD_LIBRARY

全部标签

linux - LD_PRELOAD 栈和数据段内存分配

你好,我正在编写一个Linux模块(基于一个名为“Ccontrol”的GitHub项目)来创建缓存分区(也称为页面着色)以减轻时序侧信道攻击(以防止像Prime+Probe这样的攻击)。我使用LD_PRELOAD系统环境变量覆盖了所有的malloc()、calloc()和free()调用并用颜色感知调用替换它们。现在我也在寻找给堆栈和数据段上色的方法。为新生进程分配内存的系统调用/库是什么?有没有办法使用LD_PRELOAD或任何其他方法覆盖此调用(无需重新编译内核)?先谢谢大家了加尔 最佳答案 有两个内存分配系统调用:sbrk,扩

linux - LD_PRELOAD 栈和数据段内存分配

你好,我正在编写一个Linux模块(基于一个名为“Ccontrol”的GitHub项目)来创建缓存分区(也称为页面着色)以减轻时序侧信道攻击(以防止像Prime+Probe这样的攻击)。我使用LD_PRELOAD系统环境变量覆盖了所有的malloc()、calloc()和free()调用并用颜色感知调用替换它们。现在我也在寻找给堆栈和数据段上色的方法。为新生进程分配内存的系统调用/库是什么?有没有办法使用LD_PRELOAD或任何其他方法覆盖此调用(无需重新编译内核)?先谢谢大家了加尔 最佳答案 有两个内存分配系统调用:sbrk,扩

linux - Busybox 环境不显示 LD_LIBRARY_PATH

我们在嵌入式系统上使用linux,该系统具有用于各种shell命令的busybox1.20.2。我们遇到了一个非常奇怪的问题,因为env现在确实显示了LD_LIBRARY_PATH的值:$exportLD_LIBRARY_PAT=/usr/bin$exportLD_LIBRARY_PATH=/usr/bin$exportLD_LIBRARY_PATH1=/usr/bin$env|sortENV=/etc/profile.environmentHISTFILE=/tmp/.ash_history.debug.357HOME=/home/debugLD_LIBRARY_PAT=/usr/b

linux - Busybox 环境不显示 LD_LIBRARY_PATH

我们在嵌入式系统上使用linux,该系统具有用于各种shell命令的busybox1.20.2。我们遇到了一个非常奇怪的问题,因为env现在确实显示了LD_LIBRARY_PATH的值:$exportLD_LIBRARY_PAT=/usr/bin$exportLD_LIBRARY_PATH=/usr/bin$exportLD_LIBRARY_PATH1=/usr/bin$env|sortENV=/etc/profile.environmentHISTFILE=/tmp/.ash_history.debug.357HOME=/home/debugLD_LIBRARY_PAT=/usr/b

linux - ld.so 替代品

我需要让我的linux可执行文件“编译一次,随处运行”。理论上是可以的,因为我的程序只使用了非常基本的系统调用(网络IO和文件IO的系统调用)。实际上,这是一个不同的故事:我的开发平台是Ubuntu12.04,它有最新的内核、glibc和工具链。我首先尝试静态链接我的可执行文件,但可执行文件拒绝在centos5(内核版本2.6.18)上运行。如果可执行文件是动态链接的,动态加载器(ld.so)将拒绝加载我的可执行文件。我什至尝试发布一个修改过的动态加载器(我修改它忽略内核版本),libc,libgcc_s,仍然不起作用,因为修改后的加载器总是尝试从系统加载libc并忽略随我一起发布的l

linux - ld.so 替代品

我需要让我的linux可执行文件“编译一次,随处运行”。理论上是可以的,因为我的程序只使用了非常基本的系统调用(网络IO和文件IO的系统调用)。实际上,这是一个不同的故事:我的开发平台是Ubuntu12.04,它有最新的内核、glibc和工具链。我首先尝试静态链接我的可执行文件,但可执行文件拒绝在centos5(内核版本2.6.18)上运行。如果可执行文件是动态链接的,动态加载器(ld.so)将拒绝加载我的可执行文件。我什至尝试发布一个修改过的动态加载器(我修改它忽略内核版本),libc,libgcc_s,仍然不起作用,因为修改后的加载器总是尝试从系统加载libc并忽略随我一起发布的l

c++ - 作弊 Linux : executables and dependent libraries via LD_PRELOAD

对标题感到抱歉,真的想不出其他任何东西来描述这个问题:)好的,事情是这样的:我正在尝试在Linux下使用专有的免费软件应用程序(因此出现了问题;如果我有源代码,我可以重建它)。此外,我试图在不受支持的Linux版本上运行它,并且应用程序的几乎所有组件都单独工作,但不能一起工作(如果应用程序完全运行,它们应该如此)。让我澄清一下。有一个GUI,可以在不受支持的操作系统中正常启动。然后,从这个GUI中,您可以调用一堆命令行工具-有用的是,GUI还会吐出在每种情况下调用的命令行。现在,从GUI调用其中一些命令失败了-然而,因为我调用了实际的命令行(假设:“extprogram-arg11-a

c++ - 作弊 Linux : executables and dependent libraries via LD_PRELOAD

对标题感到抱歉,真的想不出其他任何东西来描述这个问题:)好的,事情是这样的:我正在尝试在Linux下使用专有的免费软件应用程序(因此出现了问题;如果我有源代码,我可以重建它)。此外,我试图在不受支持的Linux版本上运行它,并且应用程序的几乎所有组件都单独工作,但不能一起工作(如果应用程序完全运行,它们应该如此)。让我澄清一下。有一个GUI,可以在不受支持的操作系统中正常启动。然后,从这个GUI中,您可以调用一堆命令行工具-有用的是,GUI还会吐出在每种情况下调用的命令行。现在,从GUI调用其中一些命令失败了-然而,因为我调用了实际的命令行(假设:“extprogram-arg11-a

c++ - undefined symbol 。 ld : symbol not found

除了这个undefinedsymbol错误外,一切正常:bash-3.2$makeg++-Wall-gsolvePlanningProblem.oPosition.oAStarNode.oPRM.oPRMNode.oWorl.oSingleCircleWorld.oMyworld.oRECTANGLE.oCIRCLE.o-osolvePlanningProblem`Undefinedsymbols:"Obstacle::~Obstacle()",referencedfrom:Myworld::~Myworld()inMyworld.oMyworld::~Myworld()inMywor

c++ - undefined symbol 。 ld : symbol not found

除了这个undefinedsymbol错误外,一切正常:bash-3.2$makeg++-Wall-gsolvePlanningProblem.oPosition.oAStarNode.oPRM.oPRMNode.oWorl.oSingleCircleWorld.oMyworld.oRECTANGLE.oCIRCLE.o-osolvePlanningProblem`Undefinedsymbols:"Obstacle::~Obstacle()",referencedfrom:Myworld::~Myworld()inMyworld.oMyworld::~Myworld()inMywor