当前位置:首页 » 操作系统 » 嵌入式linux程序开发应用

嵌入式linux程序开发应用

发布时间: 2022-09-20 16:56:34

‘壹’ 嵌入式linux应用开发需要了解什么

我来帮助楼主解答下,我做嵌入式近十年了。

1:请问搞应用开发的需不需要深入了解Linux系统?
搞嵌入式的应用开发主要是对linux的一些C函数了解下就可以了,相对来说比较简单,所以如果定位在只是会高应用开发,确实不需要深入,但是如果你要把嵌入式学好,做好,那深入了解linux系统是必须的。

2:还有对硬件需要掌握到什么程度?
如果是应用开发人员,基本上对硬件没有什么要求,稍微懂得某个硬件是干什么的就可以。如果是底层的驱动开发人员和系统开发人员,那就需要掌握一些硬件的基本原理,比如如果配置这个硬件让他工作起来,而如果是做硬件的,那就需要对硬件精通了。

3:有些人说搞嵌入式开发最主要的是用c语言,也有人说用C++或java
确实主要是C语言,C++和JAVA并不多,不过C++可以用来编写QT界面,JAVA可以写android的应用程序。

4:请问嵌入式Linux系统下到底支持哪些开发语言?支不支持C#呢?
一般就是主要是C语言,不支持C#.

5:学Linux嵌入式开发是不是以后都要在Linux系统下用开发语言编写程序啊?
不需要,很多公司都在XP下用source insight写程序,然后在XP通过SSH连接到linux服务器编译

6:多给楼主补充个好问题,关于如何学习嵌入式?
首先C语言,这个是毋庸置疑的,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言,你说不掌握它可以吗?至于如何学习C语言,我想这些基础的知识每个人都有自己的方法,关键要去学习,看书也好,网上找些视频看也好。很多人会问,C语言要学到怎么样,我觉得这没有标准的答案。我想至少你在明白了一些基础的概念后,就该写代码了,动手才是最重要的,当你动手了,遇到问题了,再反过来学习,反过来查查课本,那时的收获就不是你死看书能得到的。
其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助。应该把系统的管理理解一下,比如进程、线程,系统如何来分配资源的,系统如何来管理硬件的,当然,不是看书就能把这些理解透,如果不是一时能理解,没关系,多看看,结合以后的项目经验,会有更好的理解的。
还有应该学习嵌入式系统,如linux或者wince下的编程,这些对以后做应用的编程很有帮助,当然,如果做手机的话,那可以学习MTK、塞班、Android等操作系统,Android是以后发展的趋势,现在很热门,Android也是基于linux系统封装的,所以建议先学习下linux。
还有,应该学习下单片机或者ARM或者MIPS,很多人说我没有单片机的经验,直接学ARM可以吗?我觉得那完全没有问题的,当然如果你学习过单片机,那最好不过了,以后学习ARM就更简单了。
最后如果你把以上的知识都有所了解后,就该去阅读阅读一些优秀的代码,比如结合arm芯片手册学习去学习下UBOOT的源代码,了解下最小的系统开发,那对你整个嵌入式开发的非常有帮助的,可以的话,还可以学习下linux的源代码,当然如果你直接阅读2.6的代码,我想你会很痛苦的,可以先看看linux 代码早期的版本,比如0.12 的代码等等,麻雀虽小,五脏俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程师。
至于上面说的知识如何学习呢?每个人都应该去找自己最好的方法,所谓的最好的方法就是最适合自己的方法。很多人看不进书,那就去看看视频吧。视频也应该要选择,不是随便看看,应该要有所选择,有所挑选。我也是这样一路走过来的,不过我这人比较懒,我看不进书,一看书我就想睡觉,所以这几年我都是看视频过来的,现在也算学有所成,但也不敢说是高手吧。
我在网上看到,有人把自己学习嵌入式的视频总结出来,嵌入式系列实践和视频教程,大家可以看看网址http://www.ic120.com/embedvideo1.htm 我仔细看了觉得很不错,我本来也想整理下,可是奈何我自己的电脑硬盘空间才40G,没有办法,时间也是不够,心有余而力不足,我不是在帮他做广告,虽然要花钱,我觉得算不错,至少自己不用去整理和花大量的时间去找资源,当然如果网上有的下,你网速和硬盘都够的话,我建议大家自己网上下也好。想想我自己该开始学的时候,那时视频资源少之又少,我买书和买视频至少花了几千块,但是我觉得那很值,至少我现在赚回来了很多知识。

最后,希望这篇文章对热爱嵌入式,想致力于嵌入式开发的朋友有所帮助。送给大家一句简单而又朴素的话,坚持就是胜利,贵在坚持,也可以看看如何坚持嵌入式学习!

转自嵌入式学习网!

‘贰’ 如何使用eclipse进行嵌入式Linux的开发

1、安装jdk
jdk(java development kit)即java开发包,其中包含了运行eclipse所需要的jre. ubuntu缺省安装的gnu版本的jre运行效率不高,所以需要安装sun公司的jre. 首先从sun的网站上下载安装包jdk-6u7-linux-i586.bin,然后如下进行安装:
# mkdir -p /opt/java # ./jdk-6u7-linux-i586.bin // 执行自解压文件,生成目录 # mv jdk1.6.0_07 /opt/java // 把目录移到/opt/java下 # cd /opt/java # ln -s jdk1.6.0_07 jdk # mv /etc/alternatives/java /etc/alternatives/java.gnu # ln -s /opt/java/jdk/bin/java /etc/alternatives/java # export JAVA_HOME=/opt/java/jdk // 设置环境变量
2、安装eclipse和cdt
从eclipse网站上下载安装包eclipse-SDK-3.4-linux-gtk.tar.gz 和cdt-master-5.0.0.zip
# cd /opt # tar zxvf eclipse-SDK-3.4-linux-gtk.tar.gz // 解压生成eclipse目录 # export PATH=/opt/eclipse:$PATH # mkdir -p /opt/cdt # cd /opt/cdt # unzip cdt-master-5.0.0.zip # cp -r plugins/* /opt/eclipse/plugins/ # cp -r features/* /opt/eclipse/features/
二、创建c/c++工程
假设已经在linux上安装好了arm交叉工具链,下面介绍如何创建、交叉编译和调试c/c++工程,进入eclipse安装路径后,运行eclipse。

创建c 工程

使用缺省的Linux GCC工具链

进入c/c++ 界面

添加源代码文件1

添加源代码文件2
编辑代码
设置工程属性,指定交叉工具链1
设置工程属性,指定交叉工具链2
设置工程属性,指定交叉工具链3
编译工程
已生成arm平台可执行代码
配置调试选项
设置Debugger和 GDB debugger选项
设置连接类型为TCP,目标板的ip地址和调试端口号。端口号任意指定,通常大于1024(避免和系统所用端口号冲突)
在开发板上运行程序,格式如上图所示:gdbserver是交叉调试辅助程序;192.168.0.150是主机的ip地址;1234是调试端口号,和eclipse调试选项里设定的端口号要一致
点击Debug,进入调试界面
执行到断点
eclipse的调试界面和操作和在windows下开发类似。
所需开发工具及环境
虚拟机Linux:Fedora 9
交叉编译工具:arm-linux-gcc-3.4.1.tar.bz2
集成开发工具:Eclipse(Linux安装包中自带的,安装Linux时选中安装)
安装ARM交叉编译器
1. 安装。其实很简单,就是将下载的arm-linux-gcc-3.4.1.tar.bz2解压到Linux根目录即可(因为解压后已经包含了/usr/local目录,所以要解压到根目录),如下命令:

tar -jxvf arm-linux-gcc-3.4.1.tar.bz2 -C /
解压后的目录/usr/local/arm/3.4.1/
2. 设置环境变量。就是把交叉编译器的路径设置到系统环境变量里面去。

echo $PATH
查看现有的环境变量
如果只想临时添加交叉编译器的环境变量(注:临时添加的系统重启或注销后又没有了),只需在命令行输入如下命令:

export PATH=$PATH:/usr/local/arm/3.4.1/bin
如果想这个环境变量永久的添加到系统的环境变量中,则你只需把这个命令添加到/root/.bashrc文件的最后一行即可(这个文件是隐藏文件,你要在文件浏览器中单击查看菜单,勾选显示隐藏文件才能看到)
3. 测试建立的交叉编译环境。新建一个c程序,文件名:test.c, 如下:

#include <stdio.h>int main(void){ printf("Hellow world!\n"); return 0;}
进行交叉编译,如下:

arm-linux-gcc -o test test.c
将交叉编译好的目标文件test下载到ARM开发板中并运行,如下:

./test
输出结果为:
Hellow world!
用集成开发工具Eclipse来开发嵌入式应用程序
双击Eclipse图标启动Eclipse
设置Eclipse的工作空间,就是选个目录,单击OK
启动后的主界面
开始新建一个应用程序工程
选择新建一个C工程,单击Next
给工程取个名字,这里我就叫test_app;然后选择工程类型,我选择了个Hellow world C工程模版,单击Next
填写作者、版权等信息,单击Next
没什么选的,点击Finish
单击Yes
新建好的项目工程
展开左边的源代码目录,双击打开主函数。这里只是输出一句"Hello World!!!",你可以做一些其他复杂的应用
单击Project菜单,去掉Build Automatically的勾选,因为勾选的话,每次修改一个地方工程都会自动进行编译
打开工程的属性对话框进行编译选项的设置
我们的应用程序最终要到嵌入式arm上运行,这里就要把gcc改成arm-linux-gcc编译器,当然前提是你要在你的开发主机上先安装arm-linux-gcc
C连接器也要改成arm-linux-gcc
这里的Libraries是设置你的应用程序中用到的库文件,比如应用程序中用到了线程类,则这里在上面添加pthread这个库,下面就添加这个库的路径。如果应用程序没用到任何库文件就不用管了
选中左侧的工程名,右键,在弹出的菜单中选择Build Project编译工程
编译好后的工程,目标文件在Debug目录下

‘叁’ 嵌入式开发需要掌握哪些知识

嵌入式系统是计算机软件和硬件的综合体,岗位包括:ESE(嵌入式软件工程师);ADE(嵌入式应用开发工程师);FWE(嵌入式底层开发工程师);FEC(嵌入式固件开发工程师),你可以先下载全套嵌入式视频课自学,看是否感兴趣。

课程内容主要包括:

①C,Java核心编程:c语言核心编程,Java核心编程;

②Linux核心操作与算法:Linux系统使用,Linux-c编程核心技术,精品数据结构,Linux-c编程精髓;

③核心操作与算法:Linux系统编程,Linux网络编程核心技术,UI编程,Java核心编程,安卓核心技术;

④ARM+Linux底层开发:数字电路,ARM编程核心,Linux系统开发,嵌入式Linux驱动开发;

⑤大型项目实践:每期安排各类型真实的项目,详细可以点我下载资料。

互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。

想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。

祝你学有所成,望采纳。

‘肆’ 学习嵌入式Linux怎么应用开发

提供一下几种方案

一、还按照《嵌入死linux应用开发完全手册》(韦东山)的内容来,但是嵌入式linux的开发环境自己搭建。当时我是按照《鸟哥的私房菜-基础篇》和《鸟哥的私房菜-服务器篇》两篇,整出一套开发平台,CentOS5.3 + samba/vsftpd + gcc / linux-gcc 。 window平台上的工具sourceinsight、secureCRT。 注意:我使用了四个月学会linux操作。不知道你是否会先学这两本书,再学习韦东山老师的嵌入式呢。学完之后看似学习了很多,出来外面之后,我又去在windows平台开发,而且现在用C#。囧。现在看什么嵌入式系统都非常快,很容易理解架构,如何实现。可惜自己太年轻,没有资本和人脉,不然可以实现很多有意思的东西。现在正在尝试创业。

二、寻找开发板,而不是书籍作为实验的途径。书籍只是辅助,辅助你实现某种功能。可以集中linux书籍、嵌入式开发书籍、单片机开发、编程语言。宋宝华的嵌入式书籍。开发板当时用的是飞凌的,由国嵌负责技术讲解和培训。讲了不少有用的东西。现在网上的开发板多,可以淘,但是不用太贵,作用不大。找前卫的技术开发,中国看似不行。前卫老师都没搞出什么东西,我们在基本是0基础的前提下,很难实现比较前卫的技术。打好基础,看似是唯一的选择。

三、单独找台PC机,直接安装ubuntu11,买本ubuntu相关的书,他会交你怎样安装使用工具的。其实和第一种解决方式是一样的,书是别人在五(六)年前写的,不符合摩尔定理。所以没办法,我们在嵌入式方面的教育还是欠缺啊,出的书都少,记那么基本,还全是个人。没有什么教育机构。

希望以上对你有用。

‘伍’ 嵌入式LINUX应用程序开发和系统开发有什么区别

驱别在一个主要是应用层软件的开发,而系统式开发主要是驱动接口,内核配置交叉编译,内核取点,busybox,等等方面。相对来说,系统式开发的要求比较高。外面嵌入式linux的书都比较多,基本上大同小异,OREILLY的书还可以的。

‘陆’ 嵌入式Linux应用程序开发是学什么的要学什么内容

就Linux应用层的开发来讲,通用的知识包括:
a, c 语言;
b, 简单数据结构和算法;
c, Linux 环境下的编程接口;
d, C++ 及 UML;

除了这些,其他都是某一方面特定的了,
比方数据库,GUI,音视频,无线应用等等。

具体的内容说明,请参考杭州巨立安(JulianTec) 第一阶段
的课程安排。

‘柒’ 嵌入式Linux应用程序开发标准教程的内容简介

《嵌入式Linux应用程序开发标准教程(第2版)》主要分为3个部分,包括Linux基础、搭建嵌入式Linux环境和嵌入式Linux的应用开发。Linux基础部分从Linux基础、基本操作命令讲起,为Linux初学者能快速入门提供了保证。接着系统地讲解了嵌入式Linux的环境搭建,以及嵌入式Linux的I/O与文件系统的开发、进程控制开发、进程间通信开发、网络应用开发、基于中断的开发、设备驱动程序的开发以及嵌入式图形界面的开发等,并且还安排了丰富的实验内容与课后实践,使读者能够边学边用,更快更好地掌握所学知识。
《嵌入式Linux应用程序开发标准教程(第2版)》可作为高等院校电子类、电气类、控制类等专业高年级本科生、研究生学习嵌入式Linux的教材,也可供希望转入嵌入式领域的科研和工程技术人员参考使用,还可作为嵌入式培训班的教材和参考书。

‘捌’ 嵌入式LINUX应用程序开发和系统开发有什么区别

区别在一个主要是应用层软件的开发,而系统式开发主要是驱动接口,内核配置交叉编译,内核取点,busybox,等等方面。相对来说,系统式开发的要求比较高。外面嵌入式linux的书都比较多,基本上大同小异,OREILLY的书还可以的。
希望能帮助你!!!!

‘玖’ 嵌入式 linux 开发主要是做什么的

人工智能 物联网的产业落地,都脱不开嵌入式。现在企业最需要的更多的是创新型,复合型,应用型人才,搭载配套开发板学习嵌入式 linux 开发,可以为以后找到高薪工作铺好路。
搭载配套开发板学习嵌入式 linux,出了可以学习arm、linux、Qt外,还可以学习stm32单片机、FreeRTOS、物联网、人工智能、网络 阿里 华为等各种云接入,stm32mp157强大的硬件性能及丰富的配套模块极大拓展Linux的应用场景,非常贴合企业当下开发需求。现在整个时代背景是多技术的融合发展时代,是AIoT的时代,相关技术的拓展会给职业发展带来很多机遇。
技术学习最重要的就是实战,买块开发板开练很重要,FS-MP1A开发板,主控芯片是用的stm32mp157。可以学嵌入式Linux,也可以学stm32,还可以学物联网,人工智能,属于体系化教学级开发板。

‘拾’ 如何学习嵌入式linux应用程序开发

理论加实践,先将linux的一些基本操作搞清楚,然后自己从一些小程序开始呗,,,,网上有大量资料,不过贵在坚持 ,呵呵呵

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:336
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:378
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:612
java用什么软件写 发布:2025-05-18 03:56:19 浏览:32
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:107
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:945
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:742
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:803
网卡访问 发布:2025-05-18 03:35:04 浏览:511
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:372