Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Linuxissa toisen prosessin muistiin

tesmu [24.02.2008 02:05:58]

#

Hei!

Olen tässä nyt muutaman päivän googlannu ja enpä ole löytänyt tutoriaalia.

Joten kysynpäs täältä.

Eli, mitenkäs olisi mahdollista lukea ja kirjoittaa toisen prosessin muistiin linuxissa?

Kielenä on siis C++

Toisena kysymyksenä olisi, että miten saan haettua terminaalin koon (X-merkkien määrä * Y-merkkien määrä).

Blaze [24.02.2008 09:50:04]

#

tesmu kirjoitti:

Eli, mitenkäs olisi mahdollista lukea ja kirjoittaa toisen prosessin muistiin linuxissa?

Kuulostaa sellaselta, että ei pitäis olla mahollista mitenkään.

tesmu kirjoitti:

Toisena kysymyksenä olisi, että miten saan haettua terminaalin koon (X-merkkien määrä * Y-merkkien määrä).

Ympäristömuuttujista $COLUMNS ja $LINES

Metabolix [24.02.2008 13:51:03]

#

Jos toinen prosessi ei ole oma prosessisi, asia on juuri niin, kuin Blaze sanoi. Tietenkin debug-toiminnot ovat asia erikseen. Jos taas molemmat prosessit ovat omiasi ja tarkoituksena on siirtää tietoa, niin oikeat hakusanat ovat shared memory linux. Hyviä osumia tulee kyllä.

tesmu [24.02.2008 16:21:26]

#

Blaze kirjoitti:

Ympäristömuuttujista $COLUMNS ja $LINES

Minusta siihen pitäisi löytyä ihan funktiokin jolla tuon pystyy hakemaan.

Mutta enköhän minä noilla kuitenkin pärjää.

Lähinnä tuolla muistinkäsittelyllä (kirjoitus ja luku) tarkoitan windowsin readprocessmemory ja writeprocessmemory -funktioita.

Täytyy katsoa mitä noilla "shared memory linux" -hakusanoilla löytyypi.

Contraband [24.02.2008 18:08:02]

#

Windowsin Read/WriteProcessMemory-funktioita jokseenkin vastaavan toiminnallisuuden saavuttaa Linuxissa ptrace-funktion PTRACE_PEEKDATA ja PTRACE_POKEDATA -toiminnoilla.

kts. http://www.linuxmanpages.com/man2/ptrace.2.php

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta