shm: implement SHM_RDONLY flag for read-only attach
Implement H3: SHM permissions complete with SHM_RDONLY attach.
Added SHM_RDONLY flag (0x1000) to shm.h for shmat syscall.
Modified shm_at() to accept shmflg parameter and:
- Check write permission only if SHM_RDONLY is not set
- Map pages without VMM_FLAG_RW when SHM_RDONLY is set
- This allows read-only shared memory segments for POSIX compliance
Updated syscall handler to pass shmflg from sc_arg2 to shm_at().
Test: make test-battery PASS (157/157), make analyzer PASS