dotaz na sdilenou pamet
Vilibald Wanca
vilibald.wanca at gmail.com
Sun Dec 30 14:03:40 CET 2012
On 30.12.2012 12:00, users-l-request at freebsd.cz wrote:
> dobry den,
> mam problem se sdilenou pameti, system odmita pridelit vice jak 64kB
> Pokud dam mene jak 64kB, tak to vsechno funguje.
>
> ...
> i = access (fname, W_OK | R_OK);
> ke1 = ftok (fname, key);
> ...
>
> iflag = IPC_CREAT | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP ;
> ...
> ..... mlength je typu int32
> ...
> idm = shmget (ke1,mlength,iflag);
> ie = errno;
>
> ...... TADY mi to vr?t? IDM -1 a perror
> Invalid argument, pokud mlength > 65537 nebo tak nejak...
>
>
> if (idm==-1) perror ("shmget: ");
>
> if (idm != -1)
> {
> pmem = shmat (idm,NULL,SHM_RND);
> ......
>
> Vyguglil jsem podobny problem, ale tam se jednalo o mnoho megabajtu.
> Navic to je topic bez odpovedi.
> ja bych potreboval tak 500kB az 1MB sdilene pameti
> System je PC-BSD 9.0 32bit. jadro generic.
Zdravim,
napada mne, ze shm ma nekolik limitu nastavenych v sysctl se jmenem
kern.ipc.shm*
Ted nevim jaky jsou implicitni hodnoty, ale mozna pohrat si s velikosti
segmentu pomuze.
vw
# sysctl -a | grep shm
kern.ipc.shm_allow_removed: 0
kern.ipc.shm_use_phys: 0
kern.ipc.shmall: 8192
kern.ipc.shmseg: 128
kern.ipc.shmmni: 192
kern.ipc.shmmin: 1
kern.ipc.shmmax: 33554432
More information about the Users-l
mailing list