• 学习嵌入式Linux开发的方向说明


    学习嵌入式linux开发的一点建议

    PS:
    找不到合适地方,只好发在“原创经验”里。这事实上并不什么“原创经验”,因为我也是才自学嵌入式linux开发一个月多那么一点点(还请多多多指导啊~~呵呵》》》)。在网上浏览时,看到了如何学习嵌入式linux开发的相关内容,(应该说是一些嵌入式linux培训机构的课程差不多)然后自己整理了一下。
    对于是应该学嵌入式linux应用开发呢,还是系统开发,又或者是驱动开发呢?希望下面的内容能给我们这些初学者有帮助。(仅供参考)


    一、编程比较熟悉,只关心系统移植,应该学什么?

    1)系统移植的方法
    2)制作Bootloader
    3)编译调试内核
    4)定制文件系统
    即:嵌入式linux系统开发


    二、编程不太会,学会简单的系统移植,创建出开发平台就行,应该学什么?
    1)熟悉linux操作系统具体操作
    2)熟悉并可以编译linux内核
    3)熟悉嵌入式linux系统开发的整体流程
    4)熟悉linux系统调用,能够熟练编写linux应用程序,包括网络、图形等
    5)了解linux设备驱动程序的开发
    即:嵌入式linux应用开发


    三、系统编程和移植都比较熟悉了,但是硬件是自己设计的,应该学什么?
    1)linux字符设备驱动程序
    2)内核内存管理与中断处理
    3)块设备驱动程序,MTD以及文件系统
    4)网络驱动程序
    5)USB设备驱动程序开发
    6)帧缓冲驱动程序和DMA
    即:嵌入式linux设备驱动开发


    四、系统移植和编程都比较熟悉,硬件驱动也不用自己做,对内核比较感兴趣,应该学什么?
    1)进程调度和抢占内核实现分析
    2)内存管理
    3)内核中的定时
    4)中断和异常
    5)系统调用和IPC
    6)文件系统
    即:linux内核开发


    五、移植、应用、内核、驱动通通都懂,想锦上添花、技高一筹,应该学什么?
    1)常用的几种调试手段,如printk/printascii,kgdb/gdb调试,BDI2000调试器等方法
    2)优化时常使用的内核函数跟踪工具(KFT)、linux跟踪工具(LTT),以及常用的基准测试工具(例如LMBench,LTP)。通过跟踪手段定位系统大延迟、解决相应的bug,进行内核优化
    即:嵌入式linux调试技术与性能分析


    无论学习以上哪种嵌入式linux的开发,掌握C/C++和对linux操作系统是最基本的
  • 相关阅读:
    c#中==和equals的比较
    原型指向改变如何添加方法和访问
    把随机数对象暴露给window成为全局变量
    内置对象Array的原型对象中添加方法
    构造函数可以实例化对象
    原型
    无刷新评论
    大量字符串拼接案例
    元素隐藏占位与不占位
    导航栏切换效果案例
  • 原文地址:https://www.cnblogs.com/number10/p/3931174.html
Copyright © 2020-2023  润新知