与docker的英特尔别针
我有一个正常运行这个命令的pintool:
../../../pin -injection child -t obj-intel64/mypintool.so -- obj-intel64/myexcecutable
我想在myexcecutable
的位置放置一个myexcecutable
程序 ,这个命令运行:
docker run --rm --net spark-net --volumes-from data \ cloudsuite/graph-analytics \ --driver-memory 1g --executor-memory 4g \ --master spark://spark-master:7077
当我试图用-- obj-intel64/myexecutable
命令简单地replace-- obj-intel64/myexecutable
时,pintool正常启动,但是没有正常完成。
我相信用这种方式我的pintool附加到docker,而不是在我所需的包含的应用程序。
我应该做什么,正确地将我的pintool附加到与docker一起运行的程序中?
我不是一个docker专家,但是这样运行,确实会使docker工作人员成为一名执行官。 您需要将pin放入docker实例中,并在pin下的docker实例中运行可执行文件。 也就是说,命令行应该是这样的:
docker -run <docker arguments> pin <pin arguments> --myexecutable <executable arguments>