shared memory problem

Hi, there
On HP-UX, there is a problem about shared memory. The code open the data file and use the "mmap" system call to map into the shared memory, when the contents are make changes, there is no effective on shared memory. The codes look like the following:

 ...
sysdb=shm_open(path,O_CREAT|O_RDWR,S_IRWXO|S_IRWXG|S_IRWXU);
if (sysdb==-1)
 {
   perror("main:shm_open system database error");
   exit(1);
 }
 if(ftruncate(sysdb,SYSDB_SIZE)==-1)
   {
      perror("main:ftruncate sysdb failure");
      exit(1);
   }
   sysdb_addr=(caddr_t)mmap(0,SYSDB_SIZE,PROT_READ|PROT_WRITE,MAP_SHARED,\
              sysdb,0);
   if(sysdb_addr==(caddr_t)-1)
   {
      perror("main:system database mmap error");
      exit(1);
   }
   sysdb_header=(DB_HEADER *)sysdb_addr;
  
  ...

on the above codes, when the data changes in the file specified by 'path',
the value pointed by 'sysdb_addr' is still original.
Anyone can give some suggestion? thanks.