+static\r
+void* stack_alloc(size_t);\r
+/* Memory allocator */\r
+struct pagenode_t {\r
+ struct pagenode_t* next;\r
+ char* head;\r
+ char root[];\r
+}* pagenode_root, * pagenode_head;\r
+#define PN_ALLOCSIZE (sys_pagesize)\r
+#define PN_HEADERSIZE() (sizeof(struct pagenode_t*) + sizeof(char*))\r
+#define PN_MEMSIZE() (PN_ALLOCSIZE - PN_HEADERSIZE())\r
+#define PN_HEADSIZE() (pagenode_head->head - pagenode_head->root)\r
+#define PN_HEADSPACE() (PN_MEMSIZE() - PN_HEADSIZE())\r