|
|
1.1 root 1: Sample: Bpointer
2:
3: When several processes need to access shared data, there is no guarantee
4: that the shared memory is mapped to the same locations in both processes.
5: This can cause a problem when the data contains relative pointers because
6: a pointer value that is valid in one processe's context may not be valid
7: in the context of the other processes.
8:
9: This sample demonstrates the use of based pointers to allow manipulation of
10: shared data from several processes using memory mapped files. This
11: technique is applicable to all forms of shared memory.
12:
13: It contains the following modules:
14:
15:
16: readdata.exe : A console process that allows you to view the shared data;
17: it dereferences pointers as it encounters them.
18: chgdata.exe : A console process that lets you add elements to a shared
19: linked list.
20:
21:
22: Note, however, that based pointers cut down on the performance of the
23: application using it because the pointers need to be resolved at runtime;
24: that is, each access typically adds one machine instruction overhead when
25: dereferencing a pointer.
26:
27: Once the files are compiled, execute chgdata.exe and follow the
28: instructions posted there.
29:
30:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.