The UNIX and Linux Forums  

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 läsa / skriva med hjälp av trådar kumars High Level Programming 2 06-18-2008 04:01
HP-UX försöka förstå Shared Memory Segments scotbuff HP-UX 2 03-17-2008 05:05
Delat minne i delade bibliotek DreamWarrior High Level Programming 12 05-30-2007 05:33
Shared Memory segment catwomen HP-UX 2 02-28-2006 10:07
Delat minne brist men massor av outnyttjade minne cjcamaro UNIX för avancerade & Expertanvändare 1 10-13-2004 06:10

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 11-20-2008
mae4 mae4 is offline
Registered User
  
 

Join Date: Nov 2008
Inlägg: 1
Skriv in delat minne segment

Jag har skapat ett delat minne segmentet (som storleken 64 bytes) använder shmget, shmat osv och jag vill dela den i 2 områden. Ett område för indata och ett område för produktion? Hur kan jag göra det?

Dessutom, när jag måste skriva min indata i det delade minnet segment jag vill skriva ungefär så här:

en text messase, ett heltal, ett annat heltal

Vilken funktion c ska jag använda? Om jag var tvungen att skriva bara ett SMS och läsa den från en annan process som jag skulle använda memcpy, men nu har jag texten messase och två heltal (som jag använder som flaggor i mitt nummer).
  #2 (permalänk)  
Old 11-20-2008
jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: februari 2004
Ort: NM
Inlägg: 5.770
Du kan memcpy dem - heltal lagras i binärt format, inte som text siffror.
För att läsa den igen, du måste veta den exakta utformningen av vad som skrevs till att börja med.

Om du inte gillar att använda sprintf () sedan memcpy ();
  #3 (permalänk)  
Old 11-20-2008
Corona688 Corona688 is offline
Registered User
  
 

Join Date: Aug 2005
Ort: Saskatchewan
Inlägg: 1960
Citat:
Ursprungligen postat av mae4 View Post
Jag har skapat ett delat minne segmentet (som storleken 64 bytes) använder shmget, shmat osv och jag vill dela den i 2 områden. Ett område för indata och ett område för produktion? Hur kan jag göra det?
Jag antar att syftet med det är att göra hälften av det skrivskyddat. Om så är fallet bör du bara göra två segment, jag tror inte du kan göra halv i ett segment read-only och definitivt inte i lilla 32-byte bitar. OS kan bara faktiskt karta och skydda minnet i bitar i storlek pageSize ()Som ofta 4 kilobyte eller mer. Se mmap () och mprotect () för mer information om vad det gör.

Om detta inte vad du menar då jag inte förstår din fråga. Varför inte bara använda de övre och nedre halvor som är?
  #4 (permalänk)  
Old 11-25-2008
techlinux techlinux is offline
Registered User
  
 

Join Date: Jul 2008
Inlägg: 86
mmap PROT_READ och PROT_WRITE tror jag skulle nog för vad du vill göra
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 02:12.


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