关于嵌入式问题

如何实现上位机同时与两台DSP实现双向通信呢,若是基于CAN总线的话麻烦给个实现的流程图及详细的实现步骤。

以电脑得装linux系统,请问选哪个linux最好?包括红旗、红帽、ubuntu……不知道我说的对不对?最好详细说一下。

申明一点,没有最好的发行版,每个发行版都有他自己的特色,区别在于软件的组织,对系统性能与漏洞的改进上,以及社区的活跃程度。内核的来源都一样。

根据你学习的有嵌入式学习的要求,所以不推荐你过分依赖图形界面。
UBUNTU和FC都有完整的桌面解决方案,能让WINDOWS惯用者觉得并不陌生。但是这并不适合嵌入式学习,而且我觉得在某种程度上会阻碍你的学习进程。

我使用的发行版是DEBIAN,但是我并不推荐你使用它,不是因为它难用,而是因为我觉得你用什么发行版都能满足你学习的需要,关键是要有意识避开图形界面,多接触控制台操作,因为在ARM平台上运行LINUX的,就要不可避免的接触内核编译,交叉编译,工具链等操作,这些操作都离不开命令行。

2、我的是thinkpad x40,没有光驱,应该怎么装上面的系统?
对于DEBIAN来说,可以将安装镜像做到USB上;也可以通过硬盘安装。如果你打算使用DEBIAN的话,可以查安装文档,或者M我。
不过最方便的方法我觉得还是用外置光驱。

3、嵌入式最终是要把编好的代码烧入arm处理器的rom中,这和pc端必须装linux系统有什么关系?
没有必然的联系。因为WIN下也有ARM的开发平台,完全可以通过在WIN的开发平台下写好再烧录。
不过时候需要在ARM上运行LINUX操作系统,这需要交叉编译,LINUX上有成熟免费的平台可以完成这个任务。

4、嵌入式是不是把linux的内核代码修改好了烧入arm处理器中,再把编写好的应用程序的代码烧入arm处理器中?还是系统和应用程序一起做好,一起写入到arm处理器中?
看系统情况而定,如果你的ARM系统IO可以访问独立的存储设备(上边有文件系统),而不是只有容量有限的ROM的话,编译链接可以在ARM上完成。

5、电脑上的linux系统是由英特尔cpu为核心的电脑主板来运行,这和arm处理器执行linux代码有什么区别吗?
有的时候没有太大区别,C代码把机器代码抽象出来了。
举例来说,DEBIAN支持多种处理器架构如:x86,ia64,spac,powerpc,arm,mips,mipsel等,
我只需要写一个HELLOWORLD程序,在编译链接的时候指定处理器类型,就可以生成需要的机器码。
话说高级语言的作用不就是在这里吗?

6、我看到一本书是《linux内核0.11 V1.9.5》,请问这个0.11和V1.9.5是什么意思,哪个是版本?
v1.9.5应该是书的版本吧,目前常用的linux内核是2.6.27,我在使用的是2.6.26

7、负责将pc端上的代码写入到arm处理器的烧写软件一般都是什么?
烧写的对象是片内ROM(电可擦)或其他非易失性记忆体。这和普通的烧写没什么区别。所以烧写软件也大同小异。
鉴于要使用嵌入式的操作系统,可能的做法是把bootloder之类(类似pc上的bios)的程序烧入rom,由bootloder负责加载内核。这样,如果系统有独立的存储设备的话,内核就不需要烧写,完全像PC一样进行引导。

8、我想把linux系统自己修改一段代码,比如在开机时出现自己的logo,请问拿什么软件修改再重新打包?是不是到网上下载一个linux系统,然后用A软件打开,编辑,重新打包好,刻到光盘上,再装系统,装好后就实现自己的理想了?
修改linux系统的关键词:LFS,CLFS。
根据现实LOGO的阶段不同,实现方法也不同,感觉你说的是在LINUX系统内核没加载之前。那需要修改bootloader,给bootloader加入显示图片的功能。因为有些bootloader并不提供图形显示的功能,所以想用修改BIOS的方法修改bootloader几乎不行。

9、linux从最初的1万行代码发展到现在的1000万行代码,到底是添加了什么功能使他膨胀了1000倍?
我也没有完整大答案。大致是不断的完善,内核对CPU的调度上越来越合理,内存管理越来越有效,可以维持越来越多的外围设备,支持多种协议等等的吧。

10、windows和linux系统到底有什么不同?使得微软只要不公开源代码,其他人就不知道windows的代码是什么东西?
so many differences。
windows在某种程度上公开了源码,ddk等开发包中都有源码。windbg也公开了几乎全部的symbol以供专业人员使用。

11、linux现在有1000万行代码,即使当小说阅读也要花上几年时间,有没有一个人懂得每一行代码呢?他是怎么做到的呢?
一本小说,并不是所有的地方都是引人入胜、值得去看的,有的时候我们还可以推测出故事的发展。
源代码也是如此。有的时候没必要去追究所有代码的含义,我们只需要大致知道这部分代码的功能就可以了。
另外,代码的一大部分都是常量的声明,为了支持各种各样的约定、协议。

12、嵌入式里有个专门搞驱动开发的,为什么不让写到arm处理器中的linux直接控制各种硬件呢?因为你的对象,比如路由器,就那么些硬件,你都知道……
没开发过,不清楚。
温馨提示:答案为网友推荐,仅供参考
相似回答