The UNIX and Linux Forums  
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.

Go Back   UNIX och Linux Forum > Upp Forum > High Level Programming
.
google unix.com



High Level Programming Post frågor om C, C + +, Java, SQL och andra programmeringsspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Delat minne i delade bibliotek DreamWarrior High Level Programming 12 05-30-2007 05:33
allt om delat minne vijaya2006 Linux 0 02-28-2006 04:14
mmap vs delat minne - som är bäst för att dela data mellan program? nmds UNIX för avancerade & Expertanvändare 2 02-21-2005 06:45
Delat minne brist men massor av outnyttjade minne cjcamaro UNIX för avancerade & Expertanvändare 1 10-13-2004 06:10
Delat minne Jayathirtha UNIX för avancerade & Expertanvändare 3 03-03-2003 12:30

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 04-23-2007
elzalem's Avatar
elzalem elzalem is offline
Registered User
  
 

Join Date: Nov 2006
Ort: Libanon
Inlägg: 33
Angry minne utbyte - inte delat minne --

hej,

Detta är problemet: Jag vill byta en länkad lista mellan 4 processer (oberoende), finns det något sätt jag kan göra det just genom att skicka en pekare till en struktur?
Kod:
//example
typedef struct node
{
   int x;
   char c;
   struct node *next;
} node;
eller jag ska skicka varan (x, c) i värde och rekonstruera listan?
min lösning: skapa en lista på en delad plats i minnet, där alla processer som kan använda samma hänvisning till manipulera eller läsa listan, men om jag använder malloc (), jag kan inte kontrollera den fysiska plats där minnet fördelas (det är vad jag vet)

någon hjälp killar uppskattas, tack
  #2 (permalänk)  
Old 04-30-2007
grumpf grumpf is offline
Registered User
  
 

Join Date: maj 2006
Inlägg: 101
Hej elzalem,
ingen sådan tänka som en minnesplats eftersom mem kan swaped ut eller vad som helst.
Lösningen beror på din requierements.
Du kan använda en fil i delad mem, den enklaste lösningen.
av om det inte är möjligt använda en "server uppgift" som hanterar begäran till datastruktur
  #3 (permalänk)  
Old 04-30-2007
elzalem's Avatar
elzalem elzalem is offline
Registered User
  
 

Join Date: Nov 2006
Ort: Libanon
Inlägg: 33
Tack för ditt svar grumpf, jag skrev en rubrik fil som innehåller flera funktion för att hantera data struktur swapping, jag använde meddelande passerar (meddelandeköer) men saken är den att jag var tvungen att skicka allt på värdet (mina datastrukturer är komplexa: varje nod innehåller en kö och är fyllda med pekare).

Jag hoppades att kunna hitta en lösning liknande den trådar, där alla processer delar alla variabler ...
  #4 (permalänk)  
Old 04-30-2007
porter porter is offline Forum Advisor  
Registered User
  
 

Join Date: Jan 2007
Inlägg: 2965
Citat:
Ursprungligen postat av elzalem
Jag hoppades att kunna hitta en lösning liknande den trådar, där alla processer delar alla variabler ...
Det finns, kallas det delade minnet, men av någon anledning rabatterat här alternativet i din titel.

Titta på mmap(MAP_SHARED | MAP_FIXED)
  #5 (permalänk)  
Old 05-01-2007
elzalem's Avatar
elzalem elzalem is offline
Registered User
  
 

Join Date: Nov 2006
Ort: Libanon
Inlägg: 33
Jag har 2 länkade listor som ständigt växer eller krymper, både r synliga för alla processer, jag vill inte varje process ha en kopia, jag hoppas du förstår vad jag menar.
utan "delat minne" är det möjligt?
  #6 (permalänk)  
Old 05-01-2007
porter porter is offline Forum Advisor  
Registered User
  
 

Join Date: Jan 2007
Inlägg: 2965
Citat:
Ursprungligen postat av elzalem
Jag har 2 länkade listor som ständigt växer eller krymper, både r synliga för alla processer, jag vill inte varje process ha en kopia, jag hoppas du förstår vad jag menar.
utan "delat minne" är det möjligt?
... och månen på en pinne förmodligen?

Du kan dela det i minnet eller har en annan server process som innehåller listan och alla andra processer som använder någon form av IPC eller RPC få tillgång till.

Du kan inte dela något genom att inte dela den.

Senast redigerad av porter; 05-01-2007 at 07:26..
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 10:17.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0