Next | Prev | Up | Top | Contents | Index
Mapping Segments of Memory
Your process can create new segments within the address space. Such a "mapped" segment can represent
- the contents of a file
- a portion of VME A24 or A32 bus address space (when a VME bus exists on the system)
- a segment initialized to binary zero
- a view of the kernel's private address space or of physical memory
A mapped segment can be private to one address space, or it can be shared between address spaces. When shared, it can be
- read-only to all processes
- read-write to the creating process and read-only to others
- read-write to all sharing processes
- copy-on-write, so that any sharing process that modifies a page is given its own unique copy of that page
Note: Some of the memory-mapping capabilities described in this section are unique to IRIX and nonportable. Some of the capabilities are compatible with System V Release 4 (SVR4). IRIX also supports the POSIX 1003.1b shared memory functions. Compatibility issues with SVR4 and POSIX are noted.
- The Segment Mapping Function mmap()
-
- Mapping a File for I/O
-
- Mapping a File for Shared Memory
-
- Mapping a Segment of Zeros
-
- Mapping Physical Memory
-
- Mapping Kernel Virtual Memory
-
- Mapping a VME Device
-
- Choosing a Segment Address
-
Next | Prev | Up | Top | Contents | Index