Ⅰ web开发和linux嵌入式开发
Web开发可以理解为做网站.
C/S的开发是服务器,客户端模式,这种模式下用户必须要安装客户端软件才能够使用系统的功能,而一旦有更新,用户必须重新下载客户端。
Web开发的B/S,浏览器/服务器模式则无需客户端软件,只要客户端安装Web浏览器就能够使用系统功能,而系统的更新也只需要管理员替换服务器文件就可以实现,无需用户去下载客户端。
Linux嵌入式开发
嵌入式的linux主要有几点:
1)你要学会根据你硬件电路及应用的需要对内核进行裁减。
2)学会安装linux系统及为了嵌入式应用而需要的相关软件,如GCC编译器,交叉编译工具,TFTP服务器等,这些东西的操作和windows有挺大区别的。
3)找本linux C编程的书,学一下linux中C的编程以及编译的方法,其中Makefile的制作是其与其他系统区别较大的。
4)学会根据电路修改你的bootloader,现在一般是标准的硬件,往往可以省略了
5)其实内核的移植也是挺重要的,不过往往做核心板的人已经帮你做好了
6)尝试如何使用bootloader下载程序,包括串口,以太网等方式。
7)当然学习使用Qt做界面也是必不可少的。
8)。。。。。。。
Ⅱ linux嵌入式开发是做什么的
嵌入式操作系统EOS(Embedded OperatingSystem)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌人系统的全部软、硬件资源的分配、调度工作,控制协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前,已推出一些应用比较成功的EOS产品系列。随着Internet技术的发展、信息家电的普及应用及EOS的微型化和专业化,EOS开始从单一的弱功能向高专业化的强功能方向发展。嵌人式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。EOS是相对于一般操作系统而言的,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件功能等外,还有以下特点:
(1)可装卸性。开放性、可伸缩性的体系结构。
(2)强实时性。EOS实时性一般较强,可用于各种设备控制当中。
(3)统一的接口。提供各种设备驱动接日.
(4)操作方便、简单、提供友好的图形GUI,图形界面,追求易学易用.
(5)提供强大的网络功能,支持TCP门P协议及其它协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口.
(6)强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这就要负责系统管理的EOS臭有较强的稳定性。嵌入式操作系统的用户接日一般不提供操作命令,它通过系统调用命令向用户程序提供服务。
(7)固化代码。在嵌入系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统.
(8)更好的硬件适应性,也就是良好的移植性.
国际上用于信息电器的嵌入式操作系统有40种左右。现在,市场上非常流行的EOS产品,包括3Corn公司下属子公司的Palm OS,全球占有份额达50%,MicroS。fi公司的Wind。ws CE不过29%。在美国市场,Palm OS更以80%的占有率远超Windows CE。开放源代码的Linux很适于做信息家电的开发.
比如:中科红旗软件技术有限公司开发的红旗嵌入式Linux和美商网虎公司开发的基于Xlinux的嵌人式操作系统“夸克"。“夸克”是目前全世界最小的Linux,它有两个很突出的特点,就是体积小和使用GCS编码。
常见的嵌入式系统有:Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C Executive .
嵌入式操作系统的发展也必将带动新一轮的科技竞争
Ⅲ LINUX嵌入式开发是做什么的
很多产品都有用Linux,嵌入式的话,android就是基于Linux的。
其他比如手持支付设备之类的,都可能采用Linux。
Ⅳ 嵌入式和linux的关系
嵌入式要学哪些东西?今天我详细告诉你到底要学哪些技术!
1)学习 Linux系统安装、 常用命令、应用程序安装。
2) 学习 Linux 下的 C 编程、这本书必学《UNIX 环境高级编程》、《UNIX网络编程》,Rechard Stevens 写的,C 高手大都学习过 《C 和指针》、《C 缺陷与陷阱》、《高质量C/C++编程指南》、《C 专家编程》、《The C programming Language》
3)程序员大都要学:数据结构,嵌入式程序员数据结构必学!
4)底层开发人员大都要学:微机原理、计算机体系结构,嵌入式开发人员必学!
5)单片机可以让一个从事软件开发的人了解和如何操作硬件,有必要学,因为一开始就从 ARM 入手,不太现实!
6)ARM 体系结构,其中有汇编。
7)数字电路有必要学习,不然你在做底层开发时真的会不知道怎么看原理图,起码也得懂与入门吧。
8)ARM + Linux 应用程序开发(前提是要有开发板)
到此,你勉强算是在嵌入式Linux这个行业有了初步入门了吧, 但遗憾的是这还远远不够,我们还得继续,因为这上嵌入式,我们得变成高手。
9)要做底层开发,就必须知道软硬件之间是如何衔接和配合工作的,那么电子技术应该要好好学习了,很多时候会用到模拟电路知识,这是区别好手与菜鸟的不同之处之一。
10)Linux 下的汇编要学,这样你才能真正了解你写的程序是如何在一个特定的硬件上跑的。这是区别好手与菜鸟的不同之处之二。
11)TCP/IP 协议栈要学,所有的嵌入式高手都得掌握的东西,这是区别好手与菜鸟的不同之处之三。
12)有了这些东西,拿下 Linux 驱动 已经不再话下,需要你去学习 Linux 内核源代码和Linux驱动程序设计,这是一个技术升华。
到此, 你已经算是 嵌入式Linux 的中级人物了,继续往下:
13)音频、视频的解码译码技术你得学。
14)各种 IC ,各种 bootloader 你能够参与其开发设计。
可以去21ic电子技术论坛上交流一下,那里面有很多大牛。。。
Ⅳ 嵌入式开发为何多用linux
如果你嵌入式linux下的C/C++开发学的不错的话,建议你继续做下去。你可以尝试做游戏开发,或者到一家做嵌入式开发的公司。嵌入式待遇会比较高。C#他的就业面积会比较广,但普遍的待遇中等。当然牛逼的C#开发的待遇也是很好的。 .
Ⅵ 什么是嵌入式开发嵌入式开发是什么
嵌入式系统是计算机软件和硬件的综合体,岗位包括: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开发,肯定是要在linux系统下操作。同楼上所说,你也可以在虚拟机环境下开发。 楼主这是没学呢打算学嵌入式开发,还是已经有些基础了呢?
那么针对嵌入式开发要学哪些我简单的说一下,仅代表当前主流观点。
嵌入式开发作为新人,第一步C语言,有很多人自认为自己C语言很厉害,但是实际上一个从事嵌入式开发的老人,至少需要3-5年你才敢对C语言说精通,特别涉及到的常用的指针、数组、数据类型、运算符与表达式、控制语句时?你真的都懂么?这些是学习嵌入式最基础的知识。
第二步,有了这些代码的基础你才能能根据需求写程序,也就是常说的应用层,应用层是相对简单的。要有理解和编码调试的能力,如系统编程、标准的I/O,文件I/O,库的制作等等。一般而言这种应用层开发有1-2个月的时间都能学会。剩下的就是大量的编码来提升自己的经验。但只会这些也能找到工作,但我相信你看完下面的发现那绝对不是你的梦想!
第三步,更高级的内容也是最难的内容,前两步更多是让你会根据需求编码,但是如何能让你的程序能在硬件平台上运行,这才是真正的难题。所以每当再进一步的话,我们会发现我们什么有很多的东西都运行的是Linux系统,可是他们和我的PC运行的Linux有什么区别呢,为什么我电脑要用风扇而手机不用风扇呢,我们打开网页查找手机的详细参数的时候,会看到Cortex-A15 、四核 、ARM等等字眼,什么是ARM,什么是Cortex-A15,这需要进一步的了解。
对于嵌入式开发者来说,他们都经历了学习的痛苦。有句话说的好,不经历风雨怎么见彩虹。对于学习嵌入式我比较不赞成自学,他不同于一般的应用层开发。你会面临很多问题。问网络?太慢了!去机构学习虽然花了一部分钱,从时间成本和效率上来讲,无疑还是比较值得的。你可以了解下华清远见嵌入式高端IT就业培训专家。
Ⅷ 嵌入式开发和linux开发一样吗
1.什么是嵌入式Linux系统?
嵌入式Linux系统就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。
Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发者的强大技术支持;其次,Linux的内核小、效率高,内核的更新速度很快;第三,Linux是免费的OS,在价格上极具竞争力。
Linux还有着嵌入式操作系统所
需要的很多特色,突出的就是Linux适应于多种CPU和多种硬件平台,是一个跨平台的系统。到目前为止,它可以支持二三十种CPU。而且性能稳定,裁剪
性很好,开发和使用都很容易。很多CPU包括家电业芯片,都开始做Linux的平台移植工作。移植的速度远远超过Java的开发环境。也就是说,如果今天
用Linux环境开发产品,那么将来换CPU就不会遇到困扰。同时,Linux内核的结构在网络方面是非常完整的,Linux对网络中最常用的
Ⅸ 学习linux嵌入式开发什么软件好
想学习linux的嵌入式开发,想问下一般用什么软件?最好叫我下学习流程!越详细越好啊
用Linux平台就行了,C语言一定要学好,指针一定要明确,像指针数组、数组指针、指针函数、函数指针数组、函数返回值是个指针,结构体指针(主要是链表)、文件操作指针(FILE *其实是typedef结构体的指针)等,要灵活运用typedef 定义类型、灵活运用结构体。
再学习Linux的系统编程,主要是文件操作,文件描述符fd,对文件的操作write,read,open.close等,然后学习进程fork();vfork();创建进程和管理父子进程,进程之间的通信无名管道、命名管道、消息队列、共享内存、信号量、套接字等;都掌握之后要学线程以及线程的互斥和同步,线程之间共享进程的资源,就要对资源进行合理的分配,例如信号量sem和线程互斥锁pthread_mutex,信号是用来检测信号的ISGNAL的,常见的信号例如ctrl+c,中断前台的进程和kill中断后台的进程,如果对网络感兴趣,可以学习下Linux的网络套接子Socket,实现多台主机之间进程的通信,例如QQ和IPMSG都是对网络套接字的操作,熟悉一下TCP、UDP协议和TFTP、HTTP的网络层的传输协议,个人觉得解析buff最费时间,可以自己做一下IPMSG,单用户和并发server,echo服务器。
感兴趣GUI的可以学习一下C++和Qt,Qt被nokia收购,nokia被微软收购,Qt支持很多的平台,很实用,C++主要是对类的操作,和C中的结构体相似,class 类名挺好的,不错;// 声明类class 类名:继承方式 基类挺好的,不错;//继承类类中包含私有成员、公有成员、受保护的成员,类是对事物共性的一种抽象,对象是共性的一种实体化,是类的一个实例,老师的共性是:教书,吃饭,睡觉等,可以抽象成一个类,个性是年龄、性别、名字等,是老师类的一个实例,C++还有很多的内容,Qt是用C++来写的,其中的窗口都是派生于QWidget的,具体的不多说了。
学完C++和Qt,有了面向对象的概念后,可以去学Java和android系统,做手机的应用软件和游戏开发,和Java 和C++类似,去掉c++中指针部分,完全脱离了内存的操作,完全的面向对象,android和Qt类似,具体内容不多说了。
说说底层的吧:
底层主要用到的是C语言和arm汇编主要是v4版本以后的汇编标准语言,首先清楚底层是怎么引导Linux系统的,嵌入式很大一部分使用缩减版的Linux内核主要是稳定版本的,千万不要去追求最新,最适合的才是最好的,前部分由汇编语言引导C语言,主要设置开发板软硬件的环境,主要是bootloader(vivi、uboot.bin),然后把设置好的param参数传给内核,内核调用这些参数去找相应的文件,进行相应的操作,然后就是Linux的根文件系统了,最后是软件的移植。
用到的软件:vmplayer (Linux redenterp版)、windows下的超级终端,LSJF24X0.exe(下载bootloader时使用,也可以用H-Jtag)、tftpd32.exe(做windows下的server用,用于u-boot网线下载)等工具。
以上是个人的体会,仅供参考!
《linux就该这么学》免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好
Ⅹ 想做嵌入式开发,为什么要学习linux
目前为止,还是有很多人不知道为什么嵌入式要学linux,学linux有什么用,用windows的人那么多,为什么要学linux啊?那么就来好好讲解,学习linux有什么用!
至少在这个世界上,服务器领域是Linux的天下。所以如果你是要进入IT行业工作的话,就必须学习Linux——因为它的稳定性、安全性、内核小以及在低配置电脑可以很流畅的运行。另外使用linux学习c语言能学的更透彻,vs可能会蒙蔽你的双眼。嵌入式分硬件\系统\软件,不往底层去学习很难融会贯通,可以不接触硬件,但系统和应用部门好了解。有许多linux开源软件,学习它,这种工程在代码质量和数量上都会回答你为什么要学习。
学习linux后,如果还想学编程语言的话,有如下选择:可以学C,因为Linux内核就是C编出来的,学好了C能更好的理解Linux;或者python,一种很强大的面向对象编程语言,学好了,进行Linux服务器管理相当的方便;还有就是php,现在很多公司招Linux方向的人员时,都会问你会不会php编程,如果你精通linux,还有php编程,那就很厉害了,至少找工作绝对没问题。编程语言都是相同的,VB是一种很好的编程语言,同时它也给微软造成了很大的安全隐患,但是这几年好像用的少了,java虽然好学,但是人才太多了,顶尖的不多。C++挺不好学的,但是它的用途很广,搞图形开发常用它。至于重新学习,完全不用,如果你VB非常熟练,再学其他的编程语言,会很轻松,刚开始可能有点费劲,一旦你深入进去了,就什么都不怕了。