diff --git a/configs/eagle100/ostest/ld.script b/configs/eagle100/ostest/ld.script
index df687adaab..8af2ce81da 100644
--- a/configs/eagle100/ostest/ld.script
+++ b/configs/eagle100/ostest/ld.script
@@ -57,7 +57,7 @@ SECTIONS
 		*(.fixup)
 		*(.gnu.warning)
 		*(.rodata)
-		*(.rodata.str1.1)
+		*(.rodata.str1.*)
 		*(.glue_7)
 		*(.glue_7t)
 		*(.got)			/* Global offset table		*/
diff --git a/configs/mcu123-lpc214x/ostest/ld.script b/configs/mcu123-lpc214x/ostest/ld.script
index ecd740527b..04e381b8b3 100644
--- a/configs/mcu123-lpc214x/ostest/ld.script
+++ b/configs/mcu123-lpc214x/ostest/ld.script
@@ -1,7 +1,7 @@
 /****************************************************************************
  * configs/mcu123-lpc214x/ostest/ld.script
  *
- *   Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
+ *   Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
  *   Author: Gregory Nutt <spudmonkey@racsa.co.cr>
  *
  * Redistribution and use in source and binary forms, with or without
diff --git a/configs/olimex-strp711/ostest/defconfig b/configs/olimex-strp711/ostest/defconfig
index e9734c1d8c..ca65ef5d55 100644
--- a/configs/olimex-strp711/ostest/defconfig
+++ b/configs/olimex-strp711/ostest/defconfig
@@ -626,8 +626,10 @@ CONFIG_EXAMPLES_NSH_MMCSDMINOR=0
 #
 # CONFIG_BOOT_RUNFROMFLASH - Some configurations support XIP
 #   operation from FLASH but must copy initialized .data sections to RAM.
+#   (This option does not appy to the STR71x -- it always runs from flash).
 # CONFIG_BOOT_COPYTORAM -  Some configurations boot in FLASH
 #   but copy themselves entirely into RAM for better performance.
+#   (This option does not appy to the STR71x -- it is never copied to RAM).
 # CONFIG_CUSTOM_STACK - The up_ implementation will handle
 #   all stack operations outside of the nuttx model.
 # CONFIG_STACK_POINTER - The initial stack pointer (arm7tdmi only)
@@ -643,7 +645,7 @@ CONFIG_EXAMPLES_NSH_MMCSDMINOR=0
 # CONFIG_HEAP_BASE - The beginning of the heap
 # CONFIG_HEAP_SIZE - The size of the heap
 #
-CONFIG_BOOT_RUNFROMFLASH=y
+CONFIG_BOOT_RUNFROMFLASH=n
 CONFIG_BOOT_COPYTORAM=n
 CONFIG_CUSTOM_STACK=n
 CONFIG_STACK_POINTER=
diff --git a/configs/olimex-strp711/ostest/ld.script b/configs/olimex-strp711/ostest/ld.script
index c2a1987914..053b9938df 100644
--- a/configs/olimex-strp711/ostest/ld.script
+++ b/configs/olimex-strp711/ostest/ld.script
@@ -33,52 +33,64 @@
  *
  ****************************************************************************/
 
+/* The str71x has 256Kb of non-volatile memory beginning at address
+ * 0x4000:0000 for program storage (Bank0, an addition 16Kb is available
+ * for data storage in Bank1).  The OS entry point is via the reset vector
+ * at address 0x00000000 where the FLASH is remapped at reset.
+ *
+ * The str71x has 64Kb of on-chip static RAM beginning at address
+ * 0x2000:0000.  The .data section will be relocated from _eronly
+ * to _sdata at boot time.
+ */
+
+/* The STR711 has 256Kb of FLASH beginning at address 0x4000:0000 and 64Kb
+ * of SRAM beginning at address 0x2000:0000
+ */
+
+MEMORY
+{
+    flash (rx) : ORIGIN = 0x40000000, LENGTH = 256K
+    sram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
+}
+
 OUTPUT_ARCH(arm)
 ENTRY(_stext)
 SECTIONS
 {
-	/* The str71x has 256Kb of non-volatile memory beginning at address
-	 * 0x40000000 for program storage (Bank0, an addition 16Kb is avalable
-	 * for data storage in Bank1).  The OS entry point is via the reset vector
-	 * at address 0x00000000 where the FLASH is remapped at reset.
-	 */
-
-	. = 0x40000000;
 	.text : {
 		_stext = ABSOLUTE(.);
+		*(.vectors)
 		*(.text)
 		*(.fixup)
 		*(.gnu.warning)
 		*(.rodata)
-		*(.rodata.str1.4)
+		*(.rodata.str1.*)
 		*(.glue_7)
 		*(.glue_7t)
 		*(.got)			/* Global offset table		*/
 		_etext = ABSOLUTE(.);
-	}
-	_eronly = ABSOLUTE(.);		/* This is where the .data section
-					 * is relocated for execution out
-					 * FLASH */
+	} > flash
 
-	/* The str71x has 64Kb of on-chip static RAM beginning at address
-	 * 0x20000000.  The .data section will be relocated from _eronly
+	/* This is where the .data section is relocated for execution out
+	 * FLASH.  The .data section will be relocated from _eronly
 	 * to _sdata at boot time.
 	 */
 
-	. = 0x20000000;
+	_eronly = ABSOLUTE(.);	
+	
 	.data : {
 		_sdata = ABSOLUTE(.);
 		*(.data)
 		CONSTRUCTORS
 		_edata = ABSOLUTE(.);
-	}
+	} > sram AT > flash
 
 	.bss : {			/* BSS				*/
 		_sbss = ABSOLUTE(.);
 		*(.bss)
 		*(COMMON)
 		_ebss = ABSOLUTE(.);
-	}
+	} > sram
 					/* Stabs debugging sections.	*/
 	.stab 0 : { *(.stab) }
 	.stabstr 0 : { *(.stabstr) }