Develop and Download Open Source Software

Browse Subversion Repository

Contents of /branches/ept-devel/vmm/include/common/common.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 27 - (show annotations) (download) (as text)
Sun May 6 13:54:11 2012 UTC (2 years, 2 months ago) by yuichi_xy
File MIME type: text/x-chdr
File size: 2060 byte(s)
メモリが割り当てられた Guest Physical Address 領域を、VMM 起動時にあらかじめマップしておく。Guest Physical Address 空間上も、Host Physical Address 空間上も 2MB 境界内が連続な領域がある場合は、2MB の Large Page を使用してマップする。
1 /*
2 * Copyright (c) 2007, 2008 University of Tsukuba
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 *
8 * 1. Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright notice,
11 * this list of conditions and the following disclaimer in the documentation
12 * and/or other materials provided with the distribution.
13 * 3. Neither the name of the University of Tsukuba nor the names of its
14 * contributors may be used to endorse or promote products derived from
15 * this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 * POSSIBILITY OF SUCH DAMAGE.
28 */
29 /*
30 * Copyright (c) 2010-2012 Yuichi Watanabe
31 */
32
33 #ifndef _COMMON_H
34 #define _COMMON_H
35
36 #define offsetof(s,m) (size_t)&(((s *)0)->m)
37 #define lengthof(s) (size_t)sizeof(s)/sizeof(s[0])
38
39 #define ROUND_UP(value, align) \
40 (((value) + (align) - 1) & ~((align - 1)))
41
42 #define ROUND_DOWN(value, align) \
43 ((value) & ~((align) - 1))
44
45 #define MAX(val1, val2) \
46 ((val1) > (val2) ? (val1) : (val2))
47
48 #define MIN(val1, val2) \
49 ((val1) < (val2) ? (val1) : (val2))
50
51 #endif