Linuxカーネル2.6で/proc/ pid / memファイルをmmapすることに成功した人はいますか?ENODEV(そのようなデバイスはありません)エラーが発生します。私の電話は次のようになります。
char * map = mmap(NULL, PAGE_SIZE, PROT_READ, MAP_SHARED, mem_fd, offset);
そして、デバッグ中に/ proc / pid / mapsファイルを調べて、実行がこの呼び出しに達すると、offsetがスタックの最上位からPAGE_SIZEを引いた値になることを確認しました。また、ptraceを使用して、mmapがerrnoをENODEVに設定していることを確認しました。