diff --git a/docs/src/memory.dox b/docs/src/memory.dox
new file mode 100644
index 000000000..727a95b2b
--- /dev/null
+++ b/docs/src/memory.dox
@@ -0,0 +1,138 @@
+/*
+ ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio.
+
+ This file is part of ChibiOS/RT.
+
+ ChibiOS/RT is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ ChibiOS/RT is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see
+ * The OS offers three distinct ways to manage memory, each one with its
+ * weaknesses and strengths:
+ * - Core Memory Manager. See @ref memcore.
+ * - Heap Allocator. See @ref heaps.
+ * - Memory Pools. See @ref pools.
+ * .
+ * The three mechanisms are able to coexist and are well integrated, as example
+ * the heap allocator uses the core memory manager in order to get more
+ * memory blocks, memory pools can optionally do the same thing.
+ *
+ *
+ * Subsystem + * | + *+ * Free capable + * | + *+ * Constant time + * | + *+ * Safe + * | + *+ * From IRQ + * | + *+ * Notes + * | + *
---|---|---|---|---|---|
+ * Static Objects + * | + *N/A | + *N/A | + *YES | + *YES | + *+ * Preferred solution for safety applications. + * | + *
+ * Core Memory Manager + * | + *NO | + *YES | + *YES | + *YES | + *+ * Fast and safe but unable to free allocated memory. + * | + *
+ * Heap Allocator + * | + *YES | + *NO | + *NO | + *NO | + *+ * Unsafe because fragmentation and not constant time, cannot be used + * from IRQ handlers. + * | + *
+ * Memory Pools + * | + *YES | + *YES | + *YES | + *YES | + *+ * Fast and safe but it can handle fixed size objects only, you may have + * multiple memory pools however. + * | + *
+ * C-Runtime + * | + *YES | + *NO | + *NO | + *NO | + *+ * Unsafe because fragmentation, not constant time, cannot be used + * from IRQ handlers and not thread safe. The C runtime must also be + * modified in order to work with the other allocators. + * | + *