]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/9/pc/mem.h
kernel: expose no execute bit to portable mmu code as SG_NOEXEC / PTENOEXEC, add...
[plan9front.git] / sys / src / 9 / pc / mem.h
index 7f5b09a163955843b1bfb23cc187abbb98056c2a..417430a90c9ed7840061c0abca6943f9ead821c3 100644 (file)
@@ -57,8 +57,8 @@
  * Fundamental addresses - bottom 64kB saved for return to real mode
  */
 #define        CONFADDR        (KZERO+0x1200)          /* info passed from boot loader */
-#define        TMPADDR         (KZERO+0x2000)          /* used for temporary mappings */
-#define        APBOOTSTRAP     (KZERO+0x3000)          /* AP bootstrap code */
+#define        APBOOTSTRAP     (KZERO+0x7000)          /* AP bootstrap code (overlaps CONFADDR) */
+#define        TMPADDR         (KZERO+0x8000)          /* used for temporary mappings */
 #define        IDTADDR         (KZERO+0x10800)         /* idt */
 #define        REBOOTADDR      (0x11000)               /* reboot code - physical address */
 #define        CPU0PDB         (KZERO+0x12000)         /* bootstrap processor PDB */
  * and that there are 6 of them.
  */
 
+/*
+ * Where configuration info is left for the loaded programme.
+ * There are 24064 bytes available at CONFADDR.
+ */
+#define BOOTLINE       ((char*)CONFADDR)
+#define BOOTLINELEN    64
+#define BOOTARGS       ((char*)(CONFADDR+BOOTLINELEN))
+#define BOOTARGSLEN    (0x6000-0x200-BOOTLINELEN)
+
 /*
  *  known x86 segments (in GDT) and their selectors
  */
 #define        PTEVALID        (1<<0)
 #define        PTEWT           (1<<3)
 #define        PTEUNCACHED     (1<<4)
+#define        PTECACHED       (0<<4)
 #define        PTEWRITE        (1<<1)
 #define        PTERONLY        (0<<1)
 #define        PTEKERNEL       (0<<2)