# IsMemReadable

Determines whether a region of memory is fully readable by the current task.

### Synopsis

`bool IsMemReadable( const void *p, int32 size )`

### Description

This function considers the described block of the address space in relation to the known locations of RAM in the system, and returns TRUE if the block is entirely contained within RAM, and FALSE otherwise.

The low 512 (0x200) bytes of the address space have been declared to be "not memory" for all reasonable purposes; this function will therefore return FALSE for any block of memory that uses any portion of low memory.

### Arguments

p
  A pointer to the start of the block.

size
  The number of bytes in the block.

### Return Value

This function returns TRUE if the block is entirely readable by the current task, or FALSE if any part of the block is not.

### Implementation

Folio call implemented in kernel folio V24.

### Associated Files

mem.h
  ANSI C Prototype

clib.lib
  ARM Link Library

### See Also

``IsMemWritable`()`

#