From owner-freebsd-hackers@FreeBSD.ORG Sun Feb 8 05:26:25 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A8B0E16A4CE for ; Sun, 8 Feb 2004 05:26:25 -0800 (PST) Received: from cvs.freebsdchina.org (unknown [61.152.250.38]) by mx1.FreeBSD.org (Postfix) with SMTP id 3325543D1F for ; Sun, 8 Feb 2004 05:26:22 -0800 (PST) (envelope-from airsupply@freebsdchina.org) Received: (qmail 45391 invoked by uid 0); 8 Feb 2004 13:26:19 -0000 Received: from unknown (HELO a1rsupp1y) (218.64.142.194) by cvs.freebsdchina.org with SMTP; 8 Feb 2004 13:26:19 -0000 From: "airsupply" To: freebsd-hackers@freebsd.org X-mailer: Foxmail 4.2 [cn] Mime-Version: 1.0 Content-Type: text/plain; charset="GB2312" Content-Transfer-Encoding: quoted-printable Date: Sun, 8 Feb 2004 21:25:21 +0800 Message-Id: <20040208132622.3325543D1F@mx1.FreeBSD.org> X-Mailman-Approved-At: Sun, 08 Feb 2004 05:29:03 -0800 Subject: Re: shmat help X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Feb 2004 13:26:25 -0000 airsupply,=C4=FA=BA=C3=A3=A1 =09oh,i have get it. it's code error. =3D=3D=3D=3D=3D=3D=3D 2004-02-07 23:37:00 =C4=FA=D4=DA=C0=B4=D0=C5=D6=D0=D0=B4=B5=C0=A3=BA=3D=3D=3D=3D=3D=3D=3D >freebsd-hackers=A3=AC=C4=FA=BA=C3=A3=A1 > >=09 >i am test shmat under freebsd 4.8 release(without undate),but a= piece of simple code wont work. >code like this: >#include >#include >#include >#include >#include >#include > >#define SHM_KEY 100 >#define SHM_SIZE 1024 >int main(int argc,char *argv[]) >{ > int shmid; > void *shmaddr1,*shmaddr2,*shmaddr3; > if(shmid=3Dshmget(SHM_KEY,SHM_SIZE,IPC_CREAT|0660)=3D=3D-1) > { > perror("shmget"); > exit(-1); > } > > printf("shmid: d\n",shmid); > if(shmaddr1=3Dshmat(shmid,0,0)=3D=3D-1) > { > perror("shmat 1"); > exit(-1); > } > printf("shaddr1:0x.8x\n",shmaddr1); > > if(shmaddr2=3Dshmat(shmid,0,0)=3D=3D-1) > { > perror("shmat 2"); > exit(-1); > } > printf("shaddr2:0x.8x\n",shmaddr2); > while(1); > return 0; >} > >then i get error like this: > >shmid: 0 >shmat 1: Invalid argument >then i use ipcs,find that the shmid is not 0,but an integer= number. >-bash-2.05b$ ipcs >Message Queues: >T ID KEY MODE OWNER GROUP > >Shared Memory: >T ID KEY MODE OWNER GROUP >m 65536 100 --rw-rw-rw- airs wheel > >Semaphores: >T ID KEY MODE OWNER GROUP > > > >who can help me? who i can't use the shmid at shmat(shmid,0,0) ?= > > >=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=D6=C2 >=C0=F1=A3=A1 > =09=09=09=09 > >=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1airsupply >=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1airsupply@freebsdchina.org >=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A12004-02-07 > > >_______________________________________________ >freebsd-hackers@freebsd.org mailing list >http://lists.freebsd.org/mailman/listinfo/freebsd-hackers >To unsubscribe, send any mail to= "freebsd-hackers-unsubscribe@freebsd.org" =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =3D =09=09=09 =A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=D6=C2 =C0=F1=A3=A1 =09=09=09=09 =A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1airsupply =A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1airsupply@freebsdchina.org =A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A1=A12004-02-08