总结下:最重要的是C语言编程,以及C,这个与自己读程,应用,开发项目,做系统移植息息相关;操作系统:LINUX,WINCE等,至少学习过一种,并且还需要对些基础知识有蛮多的了解;对ARM,FPGA,DSP等这些硬件比较了解。
随着手机智能硬件的快速兴起,Android操作系统开发也越来越重要。2驱动开发 驱动程序设计是嵌入式Linux开发工作中非常重要的一部分。不仅要熟悉Linux的内核机制、驱动程序与用户级应用程序的接口,掌握系统对设备的并发操作。
我也不知道你现在的水平有多高,反正首先是C语言一定要过关这是最基础的。汇编最好也要懂一些。微机原理,数据结构,操作系统都是最基础的东西。你要做硬件的话数电,模电,电路基础也要有,嵌入式方向有好多,我说的 是ARM+linux方向。其他的方向我也不清楚。
嵌入式既有硬件也有软件。学习嵌入式专业可以考ARM工程师资格证书。嵌入式工程师认证考试过程:第一阶段:Linux相关知识指导 Linux基础,X-Windows基础,Ubuntu环境,shell环境,VI/VIM,文件管理和权限,用户管理。
标准C++编程 学习和掌握C++编程基础知识,并在此基础上,通过大量编程实例重点讲解C++高级编程知识,内容包括类与对象,继承与派生,多态性,模板,STL,异常处理等。uQT高级编程 学习和掌握嵌入式Linux下的几种常见GUI及其特点,重点能掌握QT的有关内容,具备QT程序设计能力。
嵌入式Linux应用综合项目 C++,QT开发 嵌入式底层 嵌入式的底层的学习是在学习嵌入式必须涉及到的,如何把你的程序在开发板上进行,就会接触系统移植,内核开发等,这也算是嵌入式顶层的东西了,所以你需要从嵌入式Linux系统开发,以及驱动开发基础,你都要了解一下。
shell不同:嵌入式Linux一般用busybox,桌面Linux一般用bash。
嵌入式系统是一种轻量级的系统,通常用于特定的应用场景中。这些系统中所使用的CPU大多为ARM架构,这种架构是为特定应用定制的,与X86架构不兼容。因此,嵌入式系统和普通X86上的Linux支持的软件在二进制程序层面有所不同。
Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发者的强大技术支持;其次,Linux的内核小、效率高,内核的更新速度很快;第三,Linux是免费的OS,在价格上极具竞争力。
嵌入式Linux中的进程是经过修改的Linux进程。主要区别在嵌入式Linux依据特定的要求,修改了进程的调度方法,使之更具备实时性。例如在通用Linux操作系统中,进程调度的时间片是10毫秒,而在嵌入式Linux中有可能根据实际要求将进程调度时间修改为5毫秒。下面是一个场景。
Linux和嵌入式系统之间存在着相互交叉的关系。随着嵌入式系统的发展,Linux的应用范围也变得更加广泛。同时,由于Linux的开源性质、可定制性和灵活性强,它非常适合嵌入式系统。然而,嵌入式系统软件并不仅仅局限于Linux,还有如Windows Embedded (Wince)等其他选项。
嵌入式Linux系统就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。随着微处理器的产生,价格低廉、结构小巧的CPU和外设连接提供了稳定可靠的硬件架构,那么限制嵌入式系统发展的瓶颈就突出表现在了软件方面。
linux和嵌入式系统是相互于相互交叉使用的。嵌入式系统的定义就是软硬件可裁剪,在实际项目中,对产品的功耗、存储等要求严格,所以就会涉及将完整的Linux系统进行精简瘦身,节约存储提高效率,这就是所谓的系统移植、裁剪。此工作需要对Linux内核极其熟悉。
正是由于良好的前景所致。什么是嵌入式?我想到这里大家多少有一些了解了。但是如果想从事嵌入式开发,必须懂的技术也挺多,它并不是天上掉馅饼的行业,一个成熟的嵌入式工程师基本上要了解,应用开发,底层开发,当然这里又会包含很多很多。
另外,我建议你买一本鸟哥私房菜(书),学习一下LINUX下的指令,另外,如果想搞驱动开发,建议你学习下《LINUX设备驱动程序》,如果想研究内核,就想学习下操作系统,接着学习《LINUX内核设计与实现》,再看《LINUX内核详解》,这个是一个循行渐近的过程,我也在学习,希望我们共同进步。
嵌入式linux开发,肯定是要在linux系统下操作。同楼上所说,你也可以在虚拟机环境下开发。 楼主这是没学呢打算学嵌入式开发,还是已经有些基础了呢?那么针对嵌入式开发要学哪些我简单的说一下,仅代表当前主流观点。
1、接下来,我们将使用Busybox制作根文件系统,它提供了Linux环境下运行的基本程序与控制台。制作根文件系统后,将其加载到一个空的、格式为ext2的文件系统中。根据Buildroot或Yocto进行创建可获得更完善的Linux根文件系统。为了运行QEMU,可以使用预安装版本或自己编译。
linux是操作系统内核。arm嵌入式,是说的硬件。也就是把arm 架构的CPU做的机器,嵌入到某个设备上作为一部分的开发。操作方法如下:新建一个目录:mkdir embedded_linux,将linux内核解压到该目录下:tar -jxf linux-tar.bz2 -C embedded_linux/。
U-Boot,全称 Universal Boot Loader,是用于系统引导的软件。它源码目录和编译形式与 Linux内核类似,大量源码基于相应的Linux内核程序简化而来,尤其在设备驱动程序上。
做一个嵌入式Linux系统究竟需要做哪些工作?也就是本文究竟要讲述哪些内容?我先介绍一个脉络,可以做为我们后面工作的一个总的提纲:第一步、建立交叉编译环境 没有交叉开发经验的读者,可能一时很难接受这个概念。
嵌入式Linux之uboot源码make配置编译正向分析的答案如下:uboot概述 定义:uboot是嵌入式Linux系统中常用的Bootloader之一,它在操作系统运行之前执行,负责初始化硬件设备、建立内存空间映射表,为操作系统内核的启动做准备。
嵌入式Linux系统的移植主要有U-Boot、Linux内核、文件系统这三部分。Uboot是在系统上电时开始执行,初始化硬件设备,准备好软件环境,然后才调用Linux操作系统内核。文件系统是Linux操作系统中用来管理用户文件的内核软件层。文件系统包括根文件系统和建立于Flash内存设备之上文件系统。