51
Listing 3-7. DAX programming example
32 #include
33 #include
34 #include
35 #include
36 #include
37 #include
38 #ifndef _WIN32
39 #include
40 #else
41 #include
42 #endif
43 #include
44 #include
45
46 /* Using 4K of pmem for this example */
47 #define PMEM_LEN 4096
48
49 int
50 main(int argc, char *argv[])
51 {
52
char *pmemaddr;
53
size_t mapped_len;
54
int is_pmem;
55
56
if (argc != 2) {
57
fprintf(stderr, "Usage: %s filename\n",
58
argv[0]);
59
exit(1);
60
}
61
62
/* Create a pmem file and memory map it. */
63
if ((pmemaddr = pmem_map_file(argv[1], PMEM_LEN,
64
PMEM_FILE_CREATE, 0666, &mapped_len,
65
&is_pmem)) == NULL) {
Chapter 3 Operating SyStem SuppOrt fOr perSiStent memOry
Listing 3-7. DAX programming example
32 #include
33 #include
34 #include
35 #include
36 #include
37 #include
38 #ifndef _WIN32
39 #include
40 #else
41 #include
42 #endif
43 #include
44 #include
45
46 /* Using 4K of pmem for this example */
47 #define PMEM_LEN 4096
48
49 int
50 main(int argc, char *argv[])
51 {
52
char *pmemaddr;
53
size_t mapped_len;
54
int is_pmem;
55
56
if (argc != 2) {
57
fprintf(stderr, "Usage: %s filename\n",
58
argv[0]);
59
exit(1);
60
}
61
62
/* Create a pmem file and memory map it. */
63
if ((pmemaddr = pmem_map_file(argv[1], PMEM_LEN,
64
PMEM_FILE_CREATE, 0666, &mapped_len,
65
&is_pmem)) == NULL) {
Chapter 3 Operating SyStem SuppOrt fOr perSiStent memOry
