免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 896 | 回复: 0
打印 上一主题 下一主题

nfs启动——究竟启动了什么? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-23 03:03 |只看该作者 |倒序浏览

和许多人一样我也知道一点nfs,知道用nfs开发嵌入式很方便,我也用nfs来共享文件、目录等等,前面我也弄过nfs启动,那一段时间弄了好 久,后面还写了一篇比较详细的文章。但是我一直不是很明白究竟nfs启动时启动的什么?我只知道用nfs启动可以扩大空间,因为我们利用了pc机的硬盘。 其他的就不知道了,不知道启动的kernel在哪?还有程序运行在哪?

今天我上网搜了一下,发现很多人有和我一样的疑问,搜了比较多的资料,大概总结一下,如有不对的地方,欢迎指出。

其实就是一句话,nfs启动和从nandflash启动只是启动的根文件系统不一样,nandflash启动的时候根文件系统式从 nandflash拷贝到sdram中,而nfs启动的是从网络的服务器(既我们的开发主机)拷贝到2440开发板的sdram中,这样看来只是挂载根文 件系统的时候来源不同而已,启动后都是在开发板的sdram中运行。

linux的启动过程

bootloader ——> kernel ——> 根文件系统

只是启动内核后挂载根文件系统不同,这里引用一个网友的一段话

刚才分别试了一下从Nand Flash和nfs启动,以下是他们启动时输出的信息。
从Nand flash启动:
Copy linux kernel from 0x00060000 to 0x30008000, size = 0x00200000 ... done
zImage magic = 0x016f2818
Setup linux parameters at 0x30000100
linux command line is: "noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0"
从nfs启动:
Copy linux kernel from 0x00060000 to 0x30008000, size = 0x00200000 ... done
zImage magic = 0x016f2818
Setup linux parameters at 0x30000100
linux command line is: "console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.11:/home/cneyo/root_qtopia -o nolock ip=192.168.1.9:192.168.1.11:192.168.1.1:255.255.255.0:mini2440:eth0:off"
从以上内容可以看出从Nand Flash启动和从nfs启动,Bootloader加载的内核都是来自Nand Flash的kernel分区,只是他们挂载的根文件系统不同而已

mini2440 root_qtopia 文件系统启动过程分析http://www.arm9home.net/read.php?tid-1702-keyword-root%7C%B7%D6%CE%F6.html

2011-09-26 20:45

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP