On 30.12.2012 12:00, [email protected] 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
--
FreeBSD mailing list ([email protected])
http://www.freebsd.cz/listserv/listinfo/users-l