免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: send_linux

[操作系统] Linux系统移植从零开始!参与讨论即有机会获得图书一本!(获奖名单公布!) [复制链接]

论坛徽章:
19
处女座
日期:2014-07-18 14:50:5415-16赛季CBA联赛之北京
日期:2019-09-16 15:39:1415-16赛季CBA联赛之上海
日期:2019-09-15 15:29:0415-16赛季CBA联赛之山西
日期:2017-03-09 10:58:232017金鸡报晓
日期:2017-02-08 10:33:212017金鸡报晓
日期:2017-01-10 15:13:2915-16赛季CBA联赛之深圳
日期:2016-12-15 17:55:53C
日期:2016-10-25 16:00:1515-16赛季CBA联赛之新疆
日期:2016-07-21 14:02:0415-16赛季CBA联赛之江苏
日期:2016-06-30 12:15:04shanzhi
日期:2016-06-17 17:59:31平安夜徽章
日期:2015-12-26 00:06:30
发表于 2011-02-24 21:39 |显示全部楼层
本帖最后由 shenlanyouyu 于 2011-02-27 21:57 编辑

目前几乎所有的教材都是以ARM处理器为平台介绍Linux移植的,其中以S3C2410、S3C2440居多。初学者学习时,也是对照书本,依葫芦画瓢,一步步按照步骤地做,这就带来了一个问题,很多时候是做出了结果,却不知道结果怎样来的,容易忽视了很多细节,当需要将linux移植到其他处理器平台时,就面临了很大的困难。回想起移植linux到Nios II处理器上的痛苦过程,其实当时缺乏一种指导。如果能针对一种平台介绍linux移植的同时,传授移植的方法,需要注意的问题,学习到移植的思想,这样才能灵活运用。期待这边书能带来全新的学习体验,将广大初学者带入linux的大门。

评分

参与人数 1可用积分 +4 收起 理由
T-Bagwell + 4 感谢参与

查看全部评分

论坛徽章:
19
处女座
日期:2014-07-18 14:50:5415-16赛季CBA联赛之北京
日期:2019-09-16 15:39:1415-16赛季CBA联赛之上海
日期:2019-09-15 15:29:0415-16赛季CBA联赛之山西
日期:2017-03-09 10:58:232017金鸡报晓
日期:2017-02-08 10:33:212017金鸡报晓
日期:2017-01-10 15:13:2915-16赛季CBA联赛之深圳
日期:2016-12-15 17:55:53C
日期:2016-10-25 16:00:1515-16赛季CBA联赛之新疆
日期:2016-07-21 14:02:0415-16赛季CBA联赛之江苏
日期:2016-06-30 12:15:04shanzhi
日期:2016-06-17 17:59:31平安夜徽章
日期:2015-12-26 00:06:30
发表于 2011-02-24 21:44 |显示全部楼层
本帖最后由 shenlanyouyu 于 2011-02-24 21:46 编辑

我在linux下3年开发的一些体会:在linux配置编译中,在要求修改原来内核提供的配置文件或者编译文件,要学会备份源文件,备份的方法:就是copy一份源文件,在后缀加上_bk,即backup的意思,例如我要修改/linux-dist/vendors/Altera/nios2nommu/makefile,我需要修改这个文件,要让自己以后更清楚这个文件的用途,因此需要备份这个文件,并另存为ven_Al_nios2_makefile_bk,含义大家一看就知道,路径、文件名和用途都很明了,保存的方法也有两种,一:保存在和原文件在同一目录,二:为自己的工程建一个专一的目录来保存备份文件,具体的方法看自己的习惯,我自己趋向于第二种方法。

论坛徽章:
3
CU大牛徽章
日期:2013-03-14 14:14:08CU大牛徽章
日期:2013-03-14 14:14:26CU大牛徽章
日期:2013-03-14 14:14:29
发表于 2011-02-25 16:00 |显示全部楼层
回复 78# myqthj


    我记得我遇到这样的问题几次,我自己做过笔记,好像记得在书中讲提过如何获得正确的机器码的方法,回头我考证下,如果没有在书中提过,我就会把细节贴出来。

论坛徽章:
3
CU大牛徽章
日期:2013-03-14 14:14:08CU大牛徽章
日期:2013-03-14 14:14:26CU大牛徽章
日期:2013-03-14 14:14:29
发表于 2011-02-25 19:22 |显示全部楼层
本人认为内核移植难点在menuconfig里的内核选项配置。记得第一次内核移植时对menuconfig里的选项不懂要怎么 ...
myqthj 发表于 2011-02-24 13:18



    书中介绍了内核配置的主要选项,也做了一个最简单配置的示例。对配置选项在视频中作了简单介绍,特别是有关系统调用和进程管理、文件系统等。但是内核配置的选项实在是太多,其配置组合也太多,由于篇幅的限制,不能展开讲,也没有必要。读者学会配置以及了解这些配置的作用就可以自己动手了。在此基础上,读者要自己动手进行操作,编译出自己裁剪的内核,然后写简单的测试用例进行测试,看自己添加的内核达到自己的要求没有。也可以在内核中添加打印消息等等。
   总之一句话,在会使用和了解的基础上,大家把内核多修改、多编译往自己的开发板上多烧写、多测试;也许内核的BUG就被读者测试出来了。

论坛徽章:
0
发表于 2011-02-27 17:05 |显示全部楼层
回复 84# shenlanyouyu


    这个嘛,我觉得还是得完全安装,能避免很多事情;等你真正对内核熟悉了,那时候,你可以自己定制系统,以免再发生类似的错误

论坛徽章:
0
发表于 2011-02-27 17:11 |显示全部楼层
目前几乎所有的教材都是以ARM处理器为平台介绍Linux移植的,其中以S3C2410、S3C2440居多。初学者学习时,也 ...
shenlanyouyu 发表于 2011-02-24 21:39



    这个嘛,我都说了作者只是引导,真正要做好Linux系统移植还得自己动手

  当你真正从u-boot到移值成功一个真正能用的,具备电路上齐全功能的开发板

  可以说,你与你开始绝对有很大的一个飞跃

论坛徽章:
19
处女座
日期:2014-07-18 14:50:5415-16赛季CBA联赛之北京
日期:2019-09-16 15:39:1415-16赛季CBA联赛之上海
日期:2019-09-15 15:29:0415-16赛季CBA联赛之山西
日期:2017-03-09 10:58:232017金鸡报晓
日期:2017-02-08 10:33:212017金鸡报晓
日期:2017-01-10 15:13:2915-16赛季CBA联赛之深圳
日期:2016-12-15 17:55:53C
日期:2016-10-25 16:00:1515-16赛季CBA联赛之新疆
日期:2016-07-21 14:02:0415-16赛季CBA联赛之江苏
日期:2016-06-30 12:15:04shanzhi
日期:2016-06-17 17:59:31平安夜徽章
日期:2015-12-26 00:06:30
发表于 2011-02-27 21:16 |显示全部楼层
书中介绍了内核配置的主要选项,也做了一个最简单配置的示例。对配置选项在视频中作了简单介绍, ...
liugang9931706 发表于 2011-02-25 19:22


看过样章,作者真仔细,已经在书中比较详细地介绍了大部分内核配置选项,例如文件系统、系统调用、网络协议支持、设备驱动等方面,对于读者有很大的帮助,完全能引导我们完成对内核的配置。内核配置涉及方面太多,需要在开发过程中仔细阅读相关资料,在学习过程中实践,才能获得更大的收获。

论坛徽章:
19
处女座
日期:2014-07-18 14:50:5415-16赛季CBA联赛之北京
日期:2019-09-16 15:39:1415-16赛季CBA联赛之上海
日期:2019-09-15 15:29:0415-16赛季CBA联赛之山西
日期:2017-03-09 10:58:232017金鸡报晓
日期:2017-02-08 10:33:212017金鸡报晓
日期:2017-01-10 15:13:2915-16赛季CBA联赛之深圳
日期:2016-12-15 17:55:53C
日期:2016-10-25 16:00:1515-16赛季CBA联赛之新疆
日期:2016-07-21 14:02:0415-16赛季CBA联赛之江苏
日期:2016-06-30 12:15:04shanzhi
日期:2016-06-17 17:59:31平安夜徽章
日期:2015-12-26 00:06:30
发表于 2011-02-27 21:25 |显示全部楼层
本帖最后由 shenlanyouyu 于 2011-03-02 20:36 编辑

建立linux交叉编译环境时需要注意一些问题。本书开发环境是建立在Fedora系统上,我们在安装交叉编译器成功后,设置环境变量时需要注意一个问题:在Fedora、RHEL、Centos linux系统中,我们在~/.bash_profile文件中添加路径,但是在Ubuntu系统中,我们却要~/.bashrc文件中添加路径。这些都是我们需要注意的。

论坛徽章:
1
CU十二周年纪念徽章
日期:2013-10-24 15:41:34
发表于 2011-02-28 22:06 |显示全部楼层
网上大多是移植到ARM开发板上面的,资料丰富,感觉还是比较简单的。我手上有一块ALTERA的FPGA,用的是NIOSII软核,好像和上面的朋友搞的一样。可能是资料不丰富的原因,搞了很长时间。刚开始还要搭建硬件模块,也就是SOPC,当时那个SDRAM怎么也用不上去,然后才知道是PLL的问题,然后还要在软件包下面修改相应的头文件,最后终于成功了,感觉移植系统还必须进一步的了解部分的练习,特别是整个系统的启动过程。

论坛徽章:
0
发表于 2011-02-28 23:39 |显示全部楼层
建立linux交叉编译环境时需要注意一些问题。本书开发环境是建立在Fedora系统上,我们在安装安装交叉编译器成功后,设置环境变量时需要注意一个问题:在Fedora、RHEL、Centos linux系统中,我们在~/.bash_profile文件中添加路径,但是在Ubuntu系统中,我们却要~/.bashrc文件中添加路径。这些都是我们需要注意的。shenlanyouyu 发表于 2011-02-27 21:25



    本书是在Ubuntu系统中,请看清楚后再回复好么?不要为了要书而来瞎回复


   看完书再正确参与活动,好么?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,8.5折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时8.5折扣期:2019年9月30日前


----------------------------------------

大会官网>>
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP