Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改Linux的起始地址_Linux_Linux Kernel - Fatal编程技术网

更改Linux的起始地址

更改Linux的起始地址,linux,linux-kernel,Linux,Linux Kernel,我们正试图在zedboard上引导linux,并通过可编程逻辑监控所有内存访问。我们首先尝试以高于0x40000000的起始地址启动linux,方法是: $ make ARCH=arm UIMAGE_LOADADDR=0x48008000 uImage 到目前为止,我们得到: reading uImage 3453656 bytes read in 568 ms (5.8 MiB/s) reading devicetree.dtb 9209 bytes read in 16 ms (561.5

我们正试图在zedboard上引导linux,并通过可编程逻辑监控所有内存访问。我们首先尝试以高于
0x40000000
的起始地址启动linux,方法是:

$ make ARCH=arm UIMAGE_LOADADDR=0x48008000 uImage
到目前为止,我们得到:

reading uImage 3453656 bytes read in 568 ms (5.8 MiB/s) reading devicetree.dtb 9209 bytes read in 16 ms (561.5 KiB/s) reading uramdisk.image.gz 5310018 bytes read in 865 ms (5.9 MiB/s) memstart 0 ## Booting kernel from Legacy Image at 43000000 ... Image Name: Linux-3.18.0-xilinx-06434-g1f570 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3453592 Bytes = 3.3 MiB Load Address: 48008000 Entry Point: 48008000 Verifying Checksum ... OK ## Loading init Ramdisk from Legacy Image at 42000000 ... Image Name: Image Type: ARM Linux RAMDisk Image (gzip compressed) Data Size: 5309954 Bytes = 5.1 MiB Load Address: 48000000 Entry Point: 48000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 42a00000 Booting using the fdt blob at 0x42a00000 Loading Kernel Image ... OK Loading Ramdisk to 1e812000, end 1ed22602 ... OK Loading Device Tree to 1e80c000, end 1e8113f8 ... OK ## Transferring control to Linux (at address 48008000)... Starting kernel ... 在
arch/arm/kernel/head.S


我如何才能让它工作?

您应该提供更多详细信息。你的RAM从哪里开始?RAM的大小是多少?您是如何判断在尝试执行MMU启用指令时会出现问题的?你百分之百确定是这样吗?您的问题还指出您只想更改内核的起始地址:您确定它能解决您的问题吗?否则你应该改变你的问题。另外,你说的起始地址是什么意思?你能使用重新定位吗
CONFIG_RELOCATABLE=y
Linux在启用MMU之前设置的标识映射出现问题。问题可能无处不在,必须提供更多细节。
mcr    p15, 0, r0, c1, c0, 0        @ write control reg