Хорошо, у меня есть рабочая программа, которая читает внешнюю виртуальную память в Linux.Это то, что я хочу сделать: программа 1 выполняется и имеет определенные адреса в памяти для связи с программой 2. Я знаю, что программа 2, которая читает и записывает значения в программу 1 и из нее, работает, я застрял в созданииПрограмма 2, у меня есть этот код:
#include <iostream>
using namespace std;
int main()
{
int* i;
i = (int*)0x7ffABCDDCBA1;
*i = 1;
cout << *i << " " << i << endl;
}
Примечание:
это всего лишь тестовый код, чтобы увидеть, работает ли он (не работает)
Программа1 будетпрочитайте 0x7ffABCDDCBA1 в pid программы 2, она прекрасно компилируется, но при выполнении я получаю "Ошибка сегментации"
Примечание:
#include <iostream>
using namespace std;
int main()
{
int* i;
i = (int*)0x7ffABCDDCBA1;
cout << i << endl;
}
Работает просто отлично