public static extern int remap_file_pages (IntPtr start, ulong size,
				MmapProt prot, long pgoff, MmapFlags flags);
		public static extern IntPtr mmap (IntPtr start, ulong length, 
				MmapProt prot, MmapFlags flags, int fd, long offset);
		public static extern int mprotect (IntPtr start, ulong len, MmapProt prot);
		public static bool TryToMmapProt (Int32 value, out MmapProt rval)
		{
			return ToMmapProt (value, out rval) == 0;
		}
		private static extern int ToMmapProt (Int32 value, out MmapProt rval);
		public static Int32 FromMmapProt (MmapProt value)
		{
			Int32 rval;
			if (FromMmapProt (value, out rval) == -1)
				ThrowArgumentException (value);
			return rval;
		}
		public static bool TryFromMmapProt (MmapProt value, out Int32 rval)
		{
			return FromMmapProt (value, out rval) == 0;
		}
		private static extern int FromMmapProt (MmapProt value, out Int32 rval);